テクトロニクスのロゴテストの簡素化
自動化による
tm_devices と Python
ハウツーガイド Tektronix、tm_ デバイスと Python でテスト自動化を簡素化

tm_デバイスとPythonでテスト自動化を簡素化

ハウツーガイド
tm_devices と Python によるテスト自動化の簡素化
多くの業界のエンジニアは、テスト機器の機能を拡張するために自動化を使用しています。多くのエンジニアは、これを実現するために無料のプログラミング言語Pythonを選択します。tagPython が自動化に最適なプログラミング言語である理由は次のとおりです。

  • 汎用性
  • 教えやすく、学びやすい
  • コードの可読性
  • 広く利用可能なナレッジベースとモジュール

自動化には主に 2 つの使用例があります。

  • 人間の行動を模倣してフロントパネルを自動化し、時間を節約するルーチン(自動コンプライアンス テストなど)。
    エンジニアは、新しい部品をテストする必要があるたびにスコープの前に座って適切な測定値を追加し、結果を書き留めるのではなく、そのすべてを実行して結果を表示するスクリプトを開発します。
  • 機器の機能を拡張する用途。例:amp例: 測定ログ、検証、または品質保証。
    自動化により、エンジニアは複雑なテストを、それらのテストに固有の多くの欠点なしに実行できます。オペレーターがスコープをセットアップして結果を手動で記録する必要はなく、テストは毎回同じ方法で実行できます。
    このハウツーガイドでは、プログラミングインターフェースの基礎や、exをダウンロードして実行する方法など、Pythonでスコープをプログラミングするために必要なことを説明します。ampル。

プログラマティック インターフェイスとは何ですか?

プログラム インターフェース (PI) は、特定の動作を実行するようにプログラムできる 1 つのコンピューティング システム間の境界または境界のセットです。ここでは、Tektronix のテスト機器のすべてを実行するコンピューターと、エンド ユーザーが記述したアプリケーションとの間の橋渡しとなります。さらに絞り込むと、PI はリモートで計測器に送信できる一連のコマンドであり、計測器はそれらのコマンドを処理して対応するタスクを実行します。PI スタック (図 XNUMX) は、ホスト コントローラーから計測器までの情報の流れを示しています。エンド ユーザーが記述したアプリケーション コードは、対象計測器の動作を定義します。これは通常、Python、MATLAB、LabVIEW などの業界で人気のある開発プラットフォームのいずれかで記述されます。VIEW、C++、または C# のいずれかです。このアプリケーションは、ほとんどのテストおよび測定機器でサポートされている標準である、Standard Commands for Programmable Instrumentation (SCPI) 形式を使用してデータを送信します。SCPI コマンドは多くの場合、Virtual Instrument Software Architecture (VISA) レイヤーを介して送信されます。VISA レイヤーは、通信プロトコルに追加の堅牢性 (エラー チェックなど) を追加することで、データ転送を容易にするために使用されます。場合によっては、アプリケーションがドライバーを呼び出し、そのドライバーが 1 つ以上の SCPI コマンドを VISA レイヤーに送信することがあります。Tektronix、tm_デバイスとPythonでテスト自動化を簡素化 - インターフェース図 1. プログラム インターフェイス (PI) スタックは、ホスト コントローラと計測器間の情報の流れを示しています。

tm_devices パッケージとは何ですか?

tm_devices は、Tektronix が開発したデバイス管理パッケージで、多数のコマンドと関数が含まれており、ユーザーがプログラミング言語 Python を使用して Tektronix および Keithley 製品のテストを簡単に自動化するのに役立ちます。Python の最も一般的な IDE で使用でき、コード補完機能をサポートしています。このパッケージにより、ソフトウェア スキルのレベルに関係なく、エンジニアはコーディングとテストの自動化を簡単に行うことができます。インストールも簡単で、Python のパッケージ管理システムである pip を使用します。

環境の設定

このセクションでは、tm_devices を使用して開発作業を行うための前提条件とインストールについて説明します。また、特にこのパッケージの使用を開始する前に試用している場合に、プロジェクトの管理と保守を容易にするための Python の仮想環境 (venvs) をサポートする手順も含まれています。
注記: インターネットに直接アクセスできない環境の場合は、付録のコマンドを使用して手順を変更する必要があります。問題がある場合は、お気軽に投稿してください。 github ディスカッション 援助をお願いします。

インストールと前提条件以上view

  1. Pythonをインストールする
    a. Python ≥ 3.8
  2. PyCharm – PyCharm のインストール、プロジェクトの開始、および tm_devices のインストール
  3. VSCode – VSCode のインストール、プロジェクトの開始、および tm_devices のインストール

PyCharm コミュニティ (無料) 版
PyCharmは、あらゆる業界のソフトウェア開発者が使用する人気のPython IDEです。PyCharmにはユニットテスターが統合されており、ユーザーはテストを実行することができます。 file、クラス、メソッド、またはフォルダー内のすべてのテスト。ほとんどの最新の IDE と同様に、コード補完機能があり、基本的なテキスト エディターよりも開発を大幅に高速化します。
PyCharm コミュニティ エディション (無料) のインストール手順を説明し、続いて IDE に tm_devices をインストールして、開発用の仮想環境を設定します。

  1. へ移動 https://www.jetbrains.com/pycharm/
  2. PyCharm ProfessionalからPyCharm Community Editionまでスクロールし、ダウンロードをクリックします。Tektronix、tm_ デバイスと Python を使用してテスト自動化を簡素化 - PyCharm コミュニティ
  3. デフォルトのインストール手順だけで続行できるはずです。特別な操作は必要ありません。
  4. PyCharm へようこそ!Tektronix、tm_ デバイスと Python を使用してテスト自動化を簡素化 - PyCharm コミュニティ 1
  5. 次に、新しいプロジェクトを作成し、仮想環境を設定する必要があります。「新しいプロジェクト」をクリックします。
  6. プロジェクトのパスを確認し、「Virtualenv」が選択されていることを確認しますTektronix、tm_ デバイスと Python を使用してテスト自動化を簡素化 - PyCharm コミュニティ 2
  7. ターミナルを開きます。 view 下部にラベル付きのボタンが含まれていません。これを探してください:Tektronix、tm_ デバイスと Python を使用してテスト自動化を簡素化 - PyCharm コミュニティ 3
  8. ターミナルのプロンプトの前に (venv) があるかどうか確認して、仮想環境が設定されていることを確認します。Tektronix、tm_ デバイスと Python を使用してテスト自動化を簡素化 - PyCharm コミュニティ 4
  9. ターミナルからドライバーをインストールする
    タイプ: pip install tm_devicesTektronix、tm_ デバイスと Python を使用してテスト自動化を簡素化 - PyCharm コミュニティ 5
  10. ターミナルにエラーがないはずです。ハッキングを楽しんでください!

ビジュアルスタジオコード
Visual Studio Code は、あらゆる業界のソフトウェア開発者が使用する、人気の無料 IDE です。ほとんどの言語に対応しており、ほとんどの言語の拡張機能を備えているため、この IDE でのコーディングは非常に便利で効率的です。Visual Studio Code には、コード補完、パラメータ情報、オブジェクトやクラスに関するその他の情報に役立つ、開発時に非常に役立つツールである IntelliSense が用意されています。便利なことに、tm_devices は、オブジェクトやクラスのコマンド ツリーを説明するコード補完をサポートしています。
仮想環境のセットアップに関する情報を含む、PythonとVisual Studio Codeのインストールに関する優れたガイドがあります。 ここ.

Exampルコード

このセクションでは、簡単なコード例を順に見ていきます。amptm_ デバイスを効果的に使用するために必要なコンポーネントをいくつか紹介し、強調表示します。
輸入Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - インポートこれら 2 行は、tm_devices を効果的に使用するために重要です。最初の行では、DeviceManager をインポートします。これにより、複数のデバイス クラスの定型的な接続と切断が処理されます。
5 行目では、特定のドライバー (この場合は MSOXNUMXB) をインポートします。
DeviceManager を使用してコンテキスト マネージャーを設定します。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - インポート 1そして、デバイス マネージャーとドライバーを一緒に使用すると、次のようになります。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - インポート 2

モデルに一致する特定のコマンド セットを使用して計測器をインスタンス化できます。計測器の IP アドレスを入力するだけです (他の VISA アドレスも同様に機能します)。
これら 5 行が完成すると、MSOXNUMXB 用の有意義で具体的な自動化の記述を開始できます。
コードスニペット
いくつかの簡単なアクションを見てみましょう。
トリガータイプをエッジに設定するTektronix、tm_ デバイスと Python でテスト自動化を簡素化 - インポート 3CH1 にピークツーピーク測定を追加してクエリする方法は次のとおりです。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - インポート 4もしあなたが ampCH2の測光測定:Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - インポート 5

IntelliSense/コード補完の使用

IntelliSense – Microsoft のコード補完の名称は、私たちが最大限に活用しようとしてきた IDE の非常に強力な機能です。
テストおよび測定デバイスの自動化における主な障壁の 1 つは、SCPI コマンド セットです。これは、開発コミュニティで広くサポートされていない構文を持つ古い構造です。
tm_devices で行ったのは、各 SCPI コマンドに対して Python コマンドのセットを作成することです。これにより、既存のコマンド構文から Python コードを生成して、ドライバーの手動開発を回避できるだけでなく、既存の SCPI ユーザーに馴染みのある構造を作成することができました。また、プログラム作成中に意図的なデバッグが必要になる可能性のある低レベル コードにマップされます。Python コマンドの構造は SCPI (または一部の Keithley のケースでは TSP) コマンドの構造を模倣しているため、SCPI に精通している場合は、これらも馴染みがあるでしょう。
これは元ampIntelliSense が、以前に入力したコマンドで使用可能なすべてのコマンドを表示する方法の例:
スコープのドットの後に表示されるスクロール可能なリストには、スコープ コマンド カテゴリのアルファベット順のリストが表示されます。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - コード補完afg を選択すると、AFG カテゴリのリストが表示されます。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - コード補完 1IntelliSense の助けを借りて記述された最終コマンド:Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - 図

ドキュメント文字列ヘルプ

コードを書いているとき、または他の人のコードを読んでいるときに、構文のさまざまな部分にマウスを合わせると、そのレベルに固有のヘルプ ドキュメントが表示されます。完全なコマンド構文に近づくほど、より具体的な内容が表示されます。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - Docstring ヘルプIDE の条件に応じて、IntelliSense と docstring ヘルプの両方を同時に表示できます。Tektronix tm_ デバイスと Python を使用したテスト自動化の簡素化 - Docstring ヘルプ 1このガイドでは、Tek の Python ドライバー パッケージ tm_devices の利点をいくつか確認し、自動化の旅を始めることができます。簡単なセットアップ、コード補完、組み込みヘルプにより、IDE を離れることなく学習し、開発時間を短縮し、自信を持ってコードを記述できるようになります。
パッケージを改良したい場合は、Githubリポジトリに貢献ガイドラインがあります。より高度な例がたくさんあります。ampドキュメント内およびExのパッケージ内容内で強調表示されたファイルampレフォルダ。

追加のリソース

tm_devices · PyPI – パッケージ ドライバーのダウンロードと情報
tm_devices Github – ソースコード、問題追跡、貢献
tm_devices Github – オンラインドキュメント

トラブルシューティング

pip をアップグレードすることは、通常、トラブルシューティングの最初のステップとして適切です。
ターミナルで次のように入力します: Python.exe -m pip install -upgrade pip
エラー: whl は file名前は、しかし file 存在しないか、.whl はこのプラットフォームでサポートされているホイールではありません。Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 - トラブルシューティング

解決策: ホイールをpipでインストールして認識させる file 形式。
ターミナルで次のように入力します: pip install wheel
オフラインでホイールをインストールする必要がある場合は、付録Aと同様の手順に従ってください。ただし、.whlではなくtar.gzのダウンロードが必要です。 file.

付録 A – tm_devices のオフライン インストール

  1. インターネットに接続されたコンピューターで、次のコマンドを使用して、パッケージとすべての依存関係を指定されたパスの場所にダウンロードします。
    pip ダウンロード –destホイール セットアップツール tm_devices
  2. コピー fileインターネットにアクセスできないコンピュータに接続する
  3. 次に、使用している IDE のメイン ガイドの指示に従いますが、インストール コマンドを次のように置き換えます。
    pip インストール –no-index –find-links files> tm_デバイス

連絡先:
オーストラリア1 800 709 465
オーストリア* 00800 2255 4835
バルカン諸国、イスラエル、南アフリカ、およびその他の ISE 諸国 +41 52 675 3777
ベルギー* 00800 2255 4835
ブラジル +55 (11) 3530-8901
カナダ1 800 833
中央東ヨーロッパ/バルト諸国 +41 52 675 3777
中央ヨーロッパ / ギリシャ +41 52 675 3777
デンマーク +45 80 88 1401
フィンランド +41 52 675 3777
フランス* 00800 2255 4835
ドイツ* 00800 2255 4835
香港 400 820 5835
インド 000 800 650 1835
インドネシア 007 803 601 5249
イタリア00800 2255
日本 81 (3) 6714 3086
ルクセンブルグ +41 52 675 3777
マレーシア 1 800 22 55835
メキシコ、中南米、カリブ海諸国 52 (55) 88 69 35 25
中東、アジア、北アフリカ +41 52 675 3777
オランダ* 00800 2255 4835
ニュージーランド0800 800
ノルウェー800 16098
中華人民共和国 400 820 5835
フィリピン 1 800 1601 0077
ポーランド +41 52 675 3777
ポルトガル80 08
韓国 +82 2 565 1455
ロシア / CIS +7 (495) 6647564
シンガポール 800 6011 473
南アフリカ +41 52 675 3777
スペイン* 00800 2255 4835
スウェーデン* 00800 2255 4835
スイス* 00800 2255 4835
台湾 886 (2) 2656 6688
タイ 1 800 011 931
イギリス/アイルランド* 00800 2255 4835
アメリカ1 800 833
ベトナム 12060128
* ヨーロッパのフリーダイヤル番号。 そうでない場合
アクセス可能、電話: +41 52 675 3777
改訂02.2022版

より価値のあるリソースを見つける TEK.COM
Copyright©Tektronix。 全著作権所有。 Tektronix製品は、発行済みおよび申請中の米国および外国の特許の対象です。 この出版物の情報は、以前に出版されたすべての資料の情報に優先します。 仕様および価格変更の特権は予約されています。 TEKTRONIXおよびTEKは、Tektronix、Inc。の登録商標です。参照されているその他すべての商号は、それぞれの会社のサービスマーク、商標、または登録商標です。
052124 SBG 46W-74037-1

テクトロニクスのロゴ

ドキュメント / リソース

Tektronix、tm_ デバイスと Python でテスト自動化を簡素化 [pdf] ユーザーガイド
48W-73878-1、tm_ デバイスと Python を使用したテスト自動化の簡素化、tm_ デバイスと Python を使用したテスト自動化、tm_ デバイスと Python を使用した自動化、tm_ デバイスと Python、デバイスと Python、Python

参考文献

コメントを残す

あなたのメールアドレスは公開されません。 必須項目はマークされています *