2012年11月21日水曜日

Scientific Linux 6.3でGPIB: ナノボルトメータと通信 ibtest編

先日の続きです.

Pythonはいろいろパスの設定とかめんどくさそうだったので,この際あきらめて,素直につながっているかどうかテスト.

まず,NI-USB-GPIB-HSをつなぐ.
dmesgで確認すると,


見えてます.
lsmodしてもしっかり見えていました.
それでは,rootで

# gpib_config

とタイプ.
設定が認識されて,使えるようになりました.


ibtestをつかいます.
きちんとパスの通ったところにインストールされているので,

# ibtest

で動きます.

グループ"gpib"に,GP-IBをたたきたいユーザを加えておけば,ここから先は一般ユーザでもオッケーでした.

$ ibtest


このibtestの使い方がイマイチめんどくさい.
起動すると,ボードと通信する(b)かデバイスと通信する(d)か聞いてきます.
とりあえずアジレントのナノボルトメータ(アドレス22)だけつないであるので,dと答え,アドレス22を入力.
(以下,私の入力は赤モジで示します.)


$ ibtest
Do you wish to open a (d)evice or an interface (b)oard?
(you probably want to open a device): d
enter primary gpib address for device you wish to open [0-30]: 22
trying to open pad = 22 on /dev/gpib0 ...

すると,つらつらと使い方が表示され,プロンプト”:”が表示され入力待ちになりました.
とりあえず,"*IDN?"を送ってみたいので,

You can:
w(a)it for an event
write (c)ommand bytes to bus (system controller only)
send (d)evice clear (device only)
change remote (e)nable line (system controller only)
(g)o to standby (release ATN line, system controller only)
send (i)nterface clear (system controller only)
ta(k)e control (assert ATN line, system controller only)
get bus (l)ine status (board only)
go to local (m)ode
change end (o)f transmission configuration
(q)uit
(r)ead string
perform (s)erial poll (device only)
change (t)imeout on io operations
request ser(v)ice (board only)
(w)rite data string
: w
enter a string to send to your device: *IDN?
sending string: *IDN?

gpib status is: 
ibsta = 0x2100  < END CMPL >
iberr= 0

ibcnt = 6


どうやらうまく聞いてくれたようです.
それでは,お返事を聞いてみましょう.
お話を聞くコマンドは"r"らしいので,入力.その後,すぐに何バイト??と聞いてくるので,とりあえず100と答えてみた.


: r
enter maximum number of bytes to read [1024]: 100
trying to read 100 bytes from device...
received string: 'HEWLETT-PACKARD,34420A,0,9.0-5.0-2.0
'
Number of bytes read: 37
gpib status is:
ibsta = 0x2100  < END CMPL >
iberr= 0

ibcnt = 37

青モジがナノボルの答えです.
おそらく,最後に"\n"がはいっているために改行されてしまうのでしょう,そこはご愛嬌ということで.

このあと,ナノボルトメータといろいろ世間話を楽しみました.
君,今のファンクションは??
今,VOLTっす
"そっか,じゃぁ,レンジはどのくらい??"
"+1.00000000E+00っすね."
って感じで(^^)v

0 件のコメント:

コメントを投稿