GP-IBって、そもそもナニ?
GP-IBの歴史
GP-IBは、General Purpose Interface Bus を略したもので、日本ではこの名称が一般的ですが、海外ではGP-IBのANSI規格番号IEEE488(アイトリプルイー488)と呼ばれることの方が多いようです。日本でも古くから使われているGP-IBですが、その起源は古く、なんと1960年代の後半までさかのぼります。
米国カリフォルニア州サンタクララ郡パロ・アルト市にHewlettさんとPackardさんが創立した会社「ヒューレットパッカード社(略称HP)」がありました。(現在のコンピュータメーカhp社の前身です)このHP社で様々な計測器をコントロールするためのインターフェースを開発し、その名称をHP-IBとして販売していたのですが、これが他のメーカにも普及しHP-IBでは具合が悪いのでGP-IBという名称が使われました。その後、1975年にANSIで規格化されIEEE488が誕生したという訳です。
パロ・アルトについて
少し余談になりますが、HP社がその本拠地を置いたパロ・アルト市は有名なシリコンバレーの北端に位置し、MacOSやWindowsのようなWIMPスタイルGUIの起源となるSmalltalkシステムを開発したゼロックスのパロ・アルト研究所もありました。Smalltalkはオブジェクト指向プログラミング環境であり、その操作は先進のGUIだったのですが、パロ・アルト研究所の研究者は自らが開発したGUIの価値をあまり評価していなかったようです。あるとき、Smalltalkのデモを見学に来たApple創業者のスティーブ・ジョブスはその将来性をいち早く見抜き、パロ・アルト研究所の研究者をAppleに引き抜いてGUIコンピュータMacintoshを完成させたのです。スティーブ・ジョブスに先見の明が有ったということですね。
※WIMPとは – Window Icon Menu Pointing deviceを略したもので、現在のWindowsのようにマウスでウインドウやアイコンを使って操作できるGUIを意味します。
GP-IBのしくみ
GP-IBのコネクタは亀の子のように重ねて挿入できるようになっており、全ての信号が並列に接続されます。接続された各機器にはアドレスを割り振り、コマンドやデータを転送するときは転送元と転送先のアドレスが指定されます。コントローラは最初にトーカ(送信者)とリスナ(受信者)のアドレスを指定してからデータ転送の指示を出します。
一般的に自動計測では複数の機器をPCからコントロールして実現しますので、1対多接続に対応したGP-IBは計測業界で急速に普及しました。
GP-IBの信号ライン
GP-IBは以下のように8本のデータライン(データバス)と3本のハンドシェークライン、5本の制御ラインを持っています。
ラベル | 名称 | 備考 |
DATA | DATA1-DATA8 | 8ビットデータバス |
DAV | Data Valid | 3線ハンドシェーク用制御ライン |
NRFD | Not Ready For Data | |
NDAC | Not Data Accepted | |
ATN | Attention | コマンドとデータの切り替え |
EOI | End or Identify | 転送データの最終バイトを示す |
IFC | Interface Clear | インターフェースの初期化 |
REN | Remote Enable | コントローラに接続されたデバイスをリモート状態にする |
SRQ | Service Request | 割り込み処理用フラグ |
GP-IBの今後
GP-IBはUSBやLANなど現在普及しているどのインターフェースよりも低速であり、大量データの転送には適していません。2000年頃にUSBが普及を拡大し、低速なGP-IBは全てUSBに置き換わるのではと思われました。また、計測器メーカではGP-IBを標準装備からオプションに変更し、逆にUSBやLANを標準装備するメーカも現れました。
ところが、今現在になってもGP-IBは(言葉は悪いですが)生き残っています。なぜでしょうか?明確な理由はわかりませんが、おそらく次のようなことではないでしょうか。
- 膨大な過去の資産を無駄にしたくない
- 計測の自動化(特に出荷検査等)では大量のデータ転送を必要としないことが多い
- USBコネクタは抜けやすく、堅牢なGP-IBの方が生産現場に向いている
世の中から計測器が無くならない限りGP-IBも無くなることは無いのかも知れませんね。
関連ページ
自動計測による検査自動化の最短開発ガイド https://www.keisoku.co.jp/pw/u-po/autotest_01/