SOY-GPIB
取扱い説明書2021/4/16

1.1 版㈱Bee Beans Technologies

SOY-GPIB 取扱い説明書

改訂履歴
日付

バージョン

2012/11/26

1.0

2021/4/16

1.1

改訂内容
初版
「2 設定項目」
タイムアウト時間の最大値について追記

2SOY-GPIB 取扱い説明書
目次
1

概要 ............................................................................ 42

設定項目 ......................................................................... 43

コマンドの説明 ..................................................................... 4

43.1

コントロール・コマンド ............................................................. 43.2

アドレス設定・コマンド ............................................................. 5

3.3

データリード・コマンド ............................................................. 5

3.4

データライト・コマンド .............................................................. 6

使用例 ........................................................................... 6
4.5

バスの初期化 .................................................................. 6

4.6

データの書き込み................................................................ 7

4.7

データの読み出し ................................................................ 73

SOY-GPIB 取扱い説明書
1 概要
SOY-GPIBは、SiTCPを利用したGPIBマスタです。GPIBで制御が必要な機器をEthernetから遠隔で制御できるようになります。なお、SOY-GPIBはコントローラとしてのみ動作します。

2 設定項目
本ボードの設定項目は、GPIBのアドレス値とタイムアウト時間となります。設定値はRBCP（UDP）で設定します。なお、設定値は不揮発性メモリに保存されますので、電源を切っても保持されます。
設定項目

データ幅

RBCP アドレス

初期値

説明

GPIB のアドレス1Byte

0xFFFE1000

0x00

下位 5bit のみ有効

タイムアウト時間※

2Byte

0xFFFE1002～0xFFFE1003

0x00c8（２秒）

10ms 単位※設定の最大値は 0x03FF（10.23 秒）となります。タイムアウトが発生した場合は、セッションを切断し初期化からやり直してください。

3 コマンドの説明
TCPで本ボードへコマンドを書き込み事で、GPIBに対する動作を制御するインタラクティブ方式となっています。コマ
ンドは、常に２Byteで構成され、1Byte目はHeader、2Byte目はDataとなっています（図3-1参照）。送ったコマンドは、処理が終わると処理結果がコマンドの一部に結果が反映されて返送されます。
コマンドは、コントロール・アドレス設定・データリード・データライトの４つに分類されます。

図 3-1 コマンドのイメージ

3.1 コントロール・コマンド
コントロール・コマンドは、制御信号の設定やモニタを行うためのコマンドです。Headerは0x50でDataで制御信号の設置値を指定し、返送されるDataに信号のモニタが表示されます。GPIBの各信号は、設定から数十us経過しないと、設定値が反映されない場合があるので注意が必要です。Dataの下位4bitがすべて１の時、IFCを発行します。（0x2F）

bit7bit6bit5bit4bit3bit2bit1bit0Hex

Ｈｅａｄｅｒ0101000050

Ｄａｔａ

001REN

ATN

SRQ

NRFD

NDAC

モニタ

モニタ

モニタ

図 3-2 コントロール・コマンドのビットマップ

420～3F

SOY-GPIB 取扱い説明書
3.2 アドレス設定・コマンド
アドレス設定・コマンドは、トーカアドレスやリスナアドレスの設定を行うためのコマンドです。本コマンド発行に先立ってＡＴＮを1に設定してください。Headerには0x40を設定します。タイムアウトエラーが発生した場合は、0x42が返送されます（正常時は0x40）。

Ｈｅａｄｅｒbit7bit6bit5bit4bit3bit2bit1bit0Hex010000

Error
モニタ

040,42Ｄａｔａ

Control Message

00～FF

図 3-3 アドレス設定・コマンドのビットマップ
表 3-1 主な Control Message
Control Message

記号説明0x01GTL

Go To Local

0x04

SDC

Selected Device Clear

0x08

GETGroup Execute Trigger

0x11

LLO

Local Lockout

0x14

DCL

Device Clear

0x20～0x3E

LAD0～30

Listen Address 0～30

0x3F

UNL

UnListen

0x40～0x5E

TAD0～30My Talk Address 0～30

0x5F

UNTUnTalk

3.3 データリード・コマンド
データリード・コマンドは、SOY-GPIBがリスナに指定した後に発行してください。Headerの0x30に続けて8bitの任意のデータを送信するとHeaderの0x30または0x31に続けてバスから読み込んだデータが返送されます。
Headerが0x31の場合は、最終データである事を示すEOIがアサートされたことを示します。エラーの場合はHeaderの値が0x32または0x33で返送されます。

ＨｅａｄｅｒＤａｔａ

bit7bit6bit5bit4bit3bit2bit1bit0001

100

Error
モニタ

モニタ

任意（読み出しデータ）
図 3-4 データリード・コマンドのビットマップ

5EOI

Hex30～3300～FF

SOY-GPIB 取扱い説明書
3.4 データライト・コマンド
データライト・コマンドは、SOY-GPIBがトーカに指定した後に発行してください。Headerの0x20または0x21に続けてバスに出力する8bitのデータを送信すると、バス上に指定されたデータを書き込みます。この時Headerに0x21を書き込んだ場合は、データの終了を示すEOIも同時にアサートします。
書き込みが正常に終了すると書き込まれたHearderで返送されますが、エラーの場合はHeaderの値が0x22または0x23で返送されます。

bit7bit6bit5bit4bit3bit2bit1bit0

Hex001000

Error
モニタ

EOI

20～23

Ｈｅａｄｅｒ
Ｄａｔａ

書き込みデータ00～FF

図 3-5 データライト・コマンドのビットマップ

4 使用例
GPIBの使用に先立って、通常はバスの初期化やリモート設定を行います。バスの初期化はIFC（Interface Clear）を発行することでGPIBバスを初期化します。続いてREN（Remote Enable）を発行して接続デバイスをリモート状態に設定します。
データの読み出しでは、ATNをアサートしてControl Messageを送出可能とします。そしてアドレス設定コマンドでUNL（UnListen）を送出した後、トーカアドレスとして読み出すデバイスのGPIBアドレスを送出し、最後にリスナアドレスとしてSOY-GPIBのGPIBアドレスを送出します。そして、ATNをネゲートしてトーカのデータ送出を許可します。そして、データリード・コマンドをデータを最後まで繰り返し読み出します。
データの書き込みは、ほぼ読み出しと同じです。差異は、SOY-GPIBがトーカで、書き込み先のデバイスがリスナであること。データリード・コマンドではなく、データライト・コマンドでデータの最後まで繰り返し書き込むことです。データの終了にEOIをアサートするかはデバイスに依存します。
データの終了はEOIを用いる方法、デリミタを用いる方法、データ長を固定する方法などがとられる場合があるので接続機器に合わせて終了判断をしてください。

4.5 バスの初期化
GPIBの使用に先立ち行う、初期化の例を表4-1に示します。なお、IFCのアサート時は、RENとATNがアサートされます。また、IFCのネゲートはIFCのアサート以外のコマンドで実施されます。
表 4-1 バスの初期化例
コマンド(HEX)
0x502fコマンド(ASCII)
P/

説明
IFCのアサート
IFCのネゲート
0x5028P(RENネゲート（ローカル状態設定）
ATNアサート（Control Message設定）
IFCのネゲート
0x5038P8RENアサート（リモート状態設定）
ATNアサート（Control Message設定）※ローカル状態：操作パネルから設定を行う状態※リモート状態：GPIB から操作を行う状態

6SOY-GPIB 取扱い説明書
4.6 データの書き込み
データの書き込みの例を表4-2に示します。表はコマンド発行する順に上から表記しています。初めにATNをアサートする処理がありますが、既にＡＴＮがアサートされている場合は、必要ありません。また、最後にATNをアサートしていますが、次のアドレス設定前にアサートしても構いません。
この例ではSOY-GPIBのGPIBアドレスが０で、書き込むデバイスのGPIBアドレスが８の場合の例です。書き込
んでいるデータはASCIIで“ＧＰ”でEOIでデータの終了を伝える例となっています。
表 4-2 データの書き込み例
コマンド(HEX)

コマンド(ASCII)

0x5038P80x403F
04040
0x4028@?
@@@(0x5030

P0

0x2047⊔G

0x2150!P

0x5038P8説明
RENアサート（リモート状態設定）
ATNアサート（Control Message設定）
UNL（リスナ解除）
TAD0（トーカアドレス＝0）
LAD8（リスナアドレス＝8）
RENアサート（リモート状態設定）
ATNネゲート（データ転送設定）
書き込みデータ＝“Ｇ”
書き込みデータ＝“Ｐ”
EOI発行
RENアサート（リモート状態設定）
ATNアサート（Control Message設定）

4.7 データの読み出し
データの読み出しの例を表4-3に示します。表はコマンド発行する順に上から表記しています。初めにATNをアサートする処理がありますが、既にＡＴＮがアサートされている場合は、必要ありません。また、最後にATNをアサートしていますが、次のアドレス設定前にアサートしても構いません。
この例ではSOY-GPIBのGPIBアドレスが０で、読み出すデバイスのGPIBアドレスが８の場合の例です。この例
では、2Byteのデータを読み出しています。
読み出しデータは0x30と続く任意の１Byteのコマンドを発行するたびに１Byte読み出されます。データの終了は読み出すデバイスに依存します。読み出したデータがEOIを伴った場合は、返送されるコマンドのHeaderが0x30ではなく0x31となります。EOIで終了確認するデバイスの場合は、この値で終了を検出します。
表 4-3 データの読み出し例
コマンド(HEX)

コマンド(ASCII)

0x5038P80x403F
04048
0x4020@?
@H@⊔

0x5030P00x30780x30780x0x0x5038

P8

説明
RENアサート（リモート状態設定）
ATNアサート（Control Message設定）
UNL（リスナ解除）
TAD0（トーカアドレス＝8）
LAD8（リスナアドレス＝0）
RENアサート（リモート状態設定）
ATNネゲート（データ転送設定）
データ読み出し（0x78=“x”は任意）
データ読み出し（0x78=“x”は任意）
RENアサート（リモート状態設定）
ATNアサート（Control Message設定）

7