06-11-2007 07:13 PM
06-19-2007 09:23 PM
どなたかアドバイスいただけないでしょうか。
宜しくお願いします。
06-20-2007 01:52 AM
こんにちわ。
測定中にローカルにしたいということですが、例えばWhileループの中に『測定する』
と『ローカルに移行する』の 2つの処理があるということでしょうか。つまり、『測定
する』と『ローカルに移行する』を繰り返しているということでしょうか。
多分、『ローカルに移行する』命令を受信してからすぐに『測定する』命令を受信し
ているために、計測器が反応し切れていないか、または移行したんだけども表示だけ反
応し切れていないかのどちらかのような気がします。
ローカル状態の計測器が何らかの命令を受信すると、自動的にリモート状態になりま
す。リモート状態の計測器が『ローカルに移行する』命令を受信すれば、ローカル状態
になります。ローカル状態の時間が短すぎるために、そのような現象が起きているので
はないかと思います。
試しに、『ローカルに移行する』の後に 1秒程度の『待機』命令を挿入してみてはい
かがでしょうか(それでも状態に変化がないなら、待機時間を延ばしてみてください)。
それでローカルになるならば、ローカル状態の時間が短すぎて反応し切れていないだけ
の可能性があると思います。これでもローカルにならないならば、viが間違っているか
もしれません。
私も以前、ローカルに移行するviを作成しました。測定が終了すると結線を変更した
り非測定物を交換するために一度電源の出力を切るのですが、一々ローカルボタンを押
すのが面倒なので、GPIB関数を使って全ての計測器をローカルにしました。問題なく、
オシロ、電源、デジボルなど全ての計測器はローカルになっていました。
06-20-2007 07:00 PM
お世話になります。返信ありがとうございました。
私の説明不足でしたが、ローカル切り替えの後はなにも命令していません。
極端な話、“loc関数”や“VISAGPIB制御REN関数”のみを実行してもLOCALにならない状況です。
NIに直接問い合わせしてもフォーラムに書き込んでくれと言われ、ここでもNIからのコメントはない状態。
アジレントは電話やメールでもサポートしてくれますが、この点に関してはGPIB-USBの問題とのことでNIの範疇になると言われました。
実際、アジレント製のGPIB-USBでは問題なくLOCALに切り替わるようです。(アジレントで確認してくれた。)
すでに半分諦めています。不本意ですが、LOCALに切替えたいときは計測器のLOCALボタンを押すことにしようかと思っています。
情けな過ぎますね。
06-21-2007 01:53 AM
06-21-2007 11:03 PM
06-22-2007 01:47 AM
makoto様
お世話になります。
大変丁寧なアドバイスありがとうございます。
まず、VISA GPIB制御REN関数のモードについてですが、
RENアサート解除、RENアサート解除+GTL、GTL、すべてで動作いたしません。
次に、計測器の問題なのかVISAの問題なのかという点について。
あいにくロジアナ等を所有しておりませんので、それらによる確認はできませんでしたが、
横河製マルチメータで確認したところ、問題なくローカルに切り替わりました。(VISA GPIB制御REN関数を使用、どのモードでもOK)
次に、“SYST:LOC”コマンド,“SYST:COMM:RLST LOC”コマンドを試してみましたが、
34410Aでは廃止されてしまったコマンドのようです。
当方でも色々なことを試してみたところ、下記の順番でプログラムするとローカルに戻ることが分かりました。
理由はまったく分からないのですが、解決したことを報告いたします。本当にありがとうございました。
記
VISA GPIB制御REN(VI_GPIB_ASSERT_ADDRESS:モード3)送信
↓
なんらかの命令(今回の場合、ファンクション、レンジ、入力インピーダンスなどの設定変更)
↓
06-25-2007 05:02 AM
06-29-2007 01:02 AM
06-29-2007 01:43 AM - 編集済み 06-29-2007 01:43 AM
34410Aがローカルに遷移できない問題の原因は、これまでの状況からすると34410Aファームウェアのバグではないかと思います。その理由として、Yokogawa製計測器では正常にローカル遷移できたという報告が最初のほうに有ったからです。試しに、34410Aがリモートに遷移している状況下で、PC側のGPIBケーブルを無理矢理外してみてください。(外すという行為が難しい場合は、PCのシャットダウンでも良いです。) この操作で34410Aがローカルに戻れなければ、バグ(IEEE488.1規約違反)はほぼ間違いありません。
> どうしてこれでローカルに戻れるのか? 私には理解できていませんので詳細は不明です
一旦明示的にリモート&リスナ指定を行って、そのあとにローカル指定すると正常に動作しているように思えます。このあたりの状態遷移の規則はIEEE488.1仕様書で規定されていますが、状態遷移のアルゴリズムにもし問題があればこのような現象は有り得ます。(TNT, NAT4882, NAT9914, NAT7210等のLSIはレジスタレベルでこの状態遷移規則に合致していますが、計測器フロントパネルが実際にRemote→Localな動作をするかどうかは、計測器自身のファームウェア次第です。)
GPIBケーブルをホストPCから外した場合、同一バス上に繋がっている全計測器はローカルに強制的に戻ります。その理由は、RENライン信号が電流供給元(GPIBシステムコントローラ、つまりPC)から切断されてハイインピーダンス状態になり、論理的にFALSE(信号レベルは負論理なのでHi)状態になるからです。IEEE488.1の規則では、REN=FALSEの時には如何なる状態であっても計測器はローカルに戻らなければなりません。従ってもしこの動作にならない場合、その計測器はIEEE488.1規格に違反した動作になります。(計測器のファームウェアがハングしていれば仕方ないですが。。。)
追記:
アサートは、RENラインをTRUEにする事、デアサートはRENラインをFALSEにする事、と思ってください。
このメッセージは 06-29-2007 04:47 PMに Makoto が編集しています。