|
|
Python言語でDACSのUSB機器を操作 その5
計測ユニット(AD変換)用サンプルプログラム
2024年9月 リアルタイム波形表示サンプルプログラム追記 |
Python の動作環境を準備してください。
対象となるバージョンは 3.9 です(2021年1月時点)。
デバイスドライバは C言語用のドライバを使用します。弊社HPダウンロードページからデバイスドライバをダウンロードしてインストールしてください。
計測ユニット用サンプルプログラムの準備
こちらをダウンロードしてください -- Python USB接続 計測ユニット(AD変換)用サンプルプログラム(6KB)
解凍すると、 ① d15adc.py (サンプルプログラム) と ② FT.py (関数) の2個のプログラムファイルがありますので、
この2個のファイルを、サンプルを実行する適当なフォルダに一緒に格納します。
(動作条件1) 接続するDACSデバイスは1個のみとします。
(動作条件2) FTDI社のUSBチップを使用した他社製品は接続していないものとします。
(動作条件3) 15BXW、15BXPシリーズを対象としています。
ユニット内部校正機能のある 2020年4月以降出荷分に対応しています。
それ以前の製品では、校正値の補正ができないため、計測電圧値が正確ではありません。
Python で計測ユニットを操作
コマンドプロンプトを開いて、ディレクトリを d15adc.py のあるフォルダに移動し、 d15adc.py と入力してサンプルを実行します。
これで、DACSのUSB機器とデータの送受信ができるようになります。
デバイスと接続できると、計測間隔と各チャンネルのアンプゲインを表示して、キー入力待ちとなります。
ここで、 G (enter) とキー入力すると計測を開始し、4ch分の電圧値と計測回数を連続して画面に表示します。
(注) 2ch計測ユニットの場合は、第3chと第4chの電圧表示は不定値となりますが、ソースプログラム中の初期設定部分で、チャンネル数を2に変更すると、2chのみの表示になります。
計測間隔と各チャンネルのアンプゲインは、下記の簡易操作により変更することができます。また、初期値はソースプログラム中の値を変更することで、任意に設定することができます。
計測中に、enter以外のいずれかのキーを押すと、計測を停止します。
W0000000 などのコマンド文字列を入力し enter を押すと、
デバイスにコマンドを送信し、デバイスからの応答を表示します。
サンプルプログラムでは、サンプリング間隔と各チャンネルのアンプゲインを設定する簡易的な操作方法を準備しています。
簡易操作キー入力
T,xx--xx (enter) T:計測間隔指定 x:計測間隔(100~10000000 単位:マイクロ秒)
T (enter) で計測間隔表示のみ
A,y,y,y,y (enter) A:アンプゲイン指定 y:アンプゲイン(1,10,100 のいずれか)
ch1、ch2、ch3、ch4 の順で指定。数値を省略すると無指定にて変更なし
A (enter) でアンプゲイン表示のみ
G (enter) 計測を開始します。
いずれかのキーを押した時点で、計測を停止します。
-(マイナス) enter にてプログラムを終了します。
次の例は、計測間隔とアンプゲインを指定して、計測を開始した例です。
処理内容の詳細は、
プログラムに詳しく注釈を記述していますので、そちらをご覧ください。
10ms以下の計測間隔で、他のリアルタイム処理に時間を空ける方法
サンプルプログラム d15adc_py は、計測間隔100マイクロ秒の短い間隔まで動作しますが、10ms以下の計測間隔では、データ受信処理に時間を専有するため、他のリアルタイム処理を追加すると、処理時間不足となります。
同じフォルダに収納しているサンプルプログラム d15adcm_py および 関数 FTadc.py は、複数の計測データを100ms間隔で一括受信し、処理時間を空けています。例えば、計測間隔 1msでは100データ分。計測間隔 0.1msでは1000データ分を一括受信処理します。また、受信するすべての計測データをリアルタイムで(最大900000点)ファイル保存しています。
サンプルプログラム d15adcg_py は、さらに、グラフィック機能を追加して、オシロスコープのようなリアルタイムの連続波形表示を行っています。
(注) d15adcm_py d15adcg_py 共に、計測間隔100マイクロ秒の短い間隔まで動作しますが、ノートパソコンなど比較的、処理能力の低いパソコンでは、500マイクロ秒が長時間の安定した動作の限界となります。
サンプルプログラム d15adcg_py 計測間隔100マイクロ秒の波形表示例
横軸 0~500 が 0~50ms に相当
(完)
このページに直接こられた方は、こちらをクリックして、
ダックス技研株式会社 計測制御用電子機器のHOMEに移動してください。
USB接続のDIO、計測ユニットなどDACS製品を掲載しています。 |
|