NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

VISA制御の安定化

解決済み
解決策を見る

KeysightのN7745Aマルチポート光パワーメーターを制御しています。

・開発環境VisualStudio 2019 C#
・Windows10 USB接続にて制御

 

NI-VISAにExamplesで入っていたSimpleReadWriteを元に
8ポートのパワーの情報を順次読み出す制御をしています。

(次の読み出しまでの待ち時間は20~100msまで試しました)

 

40~50回に1回読み込みエラーが出るのでI/Oトレースをしたところ
Writeの後にCloseが大量に発生してReadができない(?)ような状態です。

 

これを安定させる手法をアドバイス頂けると助かります。

 

visa.jpg

0 件の賞賛
メッセージ1/2
722件の閲覧回数
解決策
トピック作成者314wが受理

自己解決しました。

SimpleReadWriteを元に、ReadとWriteを別のメソッドとして

書き込み時にはWriteを実行しThreadSleep(処理の遅延吸収)をして

次に読み込みが必要な時にReadメソッドを使用していました。

 

SimpleReadWriteのQueryを元にして、

WriteとReadを同じメソッド内で処理をしてから

ThreadSleepをするようにしたら安定しました。

 

お騒がせしました。

0 件の賞賛
メッセージ2/2
678件の閲覧回数