08-07-2017 02:56 AM
お世話になっております.
現在大学にて研究を行っており,実験用プログラム作成のためLabVIEWを使っております.
GPIB接続によってPC・オシロスコープ・ファンクションジェネレータ間での機器間制御を行いたいと考えています.
現在までに作成したプログラムでは,出力波形にラグが生じ実験に使用できないため,改善案を頂くためご連絡いたしました.
具体的には,LabVIEWで波形の形状や電圧値,周波数などの変更の設定を行い,ファンクションジェネレータに送ります.
その波形の変更を1ループとし,切替ループを何回か繰り返すプログラムの作成を目標としています.
作成したプログラムを添付いたします.(添付ファイル①参照)
問題となっているラグは波形切替の出力時に生じるもので,オシロスコープで確認したところ,約0.2秒程度でした.(添付ファイル②参照)
使用している機器等は以下の通りです.
・PC:HP EliteBook 840 G3(LabVIEW 2016 Spring)
・ファンクションジェネレータ:NF WAVE FACTORY WF1965
・オシロスコープ:Tektronix MDO3014
宜しくお願い致します.
08-08-2017 10:53 PM - 編集済み 08-08-2017 10:54 PM
VIをみると0.2秒のラグを遅延時間Express VIでわざと設けているようですが、これはファンクションジェネレータの応答速度などの仕様上必要なラグなのでしょうか。この遅延時間Express VIを削除したらプログラムは動きますか?
08-10-2017 02:17 AM
返信ありがとうございます.
結果から申しますとプログラムは動きますが,波形生成は正しく行われません.
というのもFGの波形生成は,波を何回(何秒)出すといった波数の制御により行われています.
そのため自分のプログラムでは,波形のパラメータ(電圧値やオフセットなど)を入力し(「First(Second) Wave Setting」),FGに命令が届いてから,セッティングで入力した時間(波数)だけ待機し,波形が出力されるまで待つ(「First (Second)Wave Output」),といった手法で制御を行っています.
そのため,遅延時間がないと命令は入力されますが,出力される前にOutputがOFFになってしまい,波形生成が途中で終わってしまいます.
用語の使い方など,見当違いのことを申しておりましたら申し訳ございません.
08-11-2017 11:35 PM
おっしゃっているのは、Wave Intervalというところにある遅延時間を削除したということですか?Second Wave Outputにある遅延時間だけを削除した場合はいかがでしょうか。これを削除してもラグが発生するということであれば、PCからGPIBバスを通ってFGに指令が届き、FGがその指令を元に波形を切り替えるまでの時間がどうしてもかかってしまうということなのかもしれませんね。
08-18-2017 03:35 AM
返信が遅くなり申し訳ございません.
Second Wave Outputのみ遅延時間を削除いたしましたところ,やはりラグが発生してしまったため,おっしゃる通りFGまで指令が届くまでにかかる時間のようです.
色々とアドバイス頂き,ありがとうございました.