[KEKB Bunch Feedback Group]

Hewlett Packard製HP8594用ASYN対応EPICS Device Support(Japanese)


by とびやま まこと(Makoto Tobiyama)/KEKB ビームモニターグループ

警告
以下の記述に関しては、意図する、しないに関わらず多くの誤り、 誤解が含まれていると思われますので、決して信用してはいけません。 これを信じて起きた損害に関しては、当方は一切責任を持ちません。


If you need contact with the author, please E-mail makoto.tobiyama@kek.jp.
目次

1.はじめに

HP8594Eは9kHz〜2.9GHzまでの周波数帯域をカバーするポータブル・スペクトラム・アナライザです。 すでに製造中止、新規修理不能状態となっています。KEKBで使用しているHP8590Eも、すでに1台は CRTが故障しておりVideo outputを使って画面表示をさせている始末です。とは言っても、 Tune測定などの用途にはまだまだ使えると思われますし、捨てるには勿体ないので、 SuperKEKBでも使える限り使う予定です。

以前作成したEPICSデバイスサポートは、R313用で、かつ、VMEバスに接続したNI GP-IBカードに 接続してVxWORKS環境下で使うことを前提とした内容になっていました。SuperKEKBでは、 EPICSは標準でR314以降の系統になりますし、VMEバスに接続するNI GP-IBカードは (トラブルの多さもあって)サポートされません。 このため、ASYNに対応したAgilent LAN-GPIB経由で使えるデバイスサポートに移行することが 必要です。 本稿では、出来るだけ以前作ったデバイスサポート(及びデータベース)を 再利用する方向で作成した、ASYN GP-IB対応のデバイスサポートについて 紹介します。

2.サポートする機能

HP8594Eは非常に多くの機能を持っており、それぞれGP-IB経由でコントロールする事ができます。 前バージョンではベータトロンチューン測定に必要な機能を中心に多くの機能をサポートするよう に努力しましたが、結局使わない機能がほとんどでした。削除するとホント面倒なので、 ほとんどのコマンドはそのまま 引き継いでいますが、一部使い方が変わった物もあります。

3.EPICS環境

本デバイスサポートは、Linux PC上のEPICS R314.12.1-CSA環境下で開発した物です。ASYNの バージョンは4-21で確認しています。 EPICSそのものに対する説明、入門出家入道遁世については専門家に帰依するなり、 コントロールグループのページをご参照なさるなりご随意に。KEK所内限定で 入門サイトもあります。 (2007年度にやった内容なので、すでにちょっと古いですが、一応R314ベースの 説明になっています)。

4.コードの変更点

以下の変更を行っています。 全体のコードは以下の通りです。 dbdファイルの中で次のように定義します。
#HP8590L dbd list
device(ai,GPIB_IO,devAiHP8590LGpib,"HP8590L")
device(ao,GPIB_IO,devAoHP8590LGpib,"HP8590L")
device(bi,GPIB_IO,devBiHP8590LGpib,"HP8590L")
device(bo,GPIB_IO,devBoHP8590LGpib,"HP8590L")
device(stringin,GPIB_IO,devSiHP8590LGpib,"HP8590L")
device(stringout,GPIB_IO,devSoHP8590LGpib,"HP8590L")
device(longin,GPIB_IO,devLiHP8590LGpib,"HP8590L")
device(longout,GPIB_IO,devLoHP8590LGpib,"HP8590L")
device(mbbi,GPIB_IO,devMbbiHP8590LGpib,"HP8590L")
device(mbbo,GPIB_IO,devMbboHP8590LGpib,"HP8590L")
device(waveform,GPIB_IO,devWfHP8590LGpib,"HP8590L")
Makefileでは
fblinux_DBD += devHP8590Gpib.dbd
fblinux_SRCS += devHP8590Gpib.c

fblinux_LIBS += asyn
のような感じで、通常通り追加してあれば良いはずです。なお、追加後、 忘れずにmake cleanをしないと、dbdファイルの更新がされません。

5.EPICSデータベースexample

以下にサンプルを示します。内容は、以前のものとほぼ同じですが、 FLNKが違っていたりします。なお、割り込みだからと、SRQに関する レコードのSCANフィールドをI/O intrにすると実行時に叱られますし、 Passiveのままでちゃんと動作するようです。

FB_HPSA.db

6.スタートアップexample

通常通りのGP-IB設定をすればOKです。具体的には、
dbLoadRecords("db/FB_HPSA.db","USER=FBH, ADDR=A2")

vxi11Configure("L0","172.19.xx.xxx",0,0.0,"gpib0",0,0)
get_trace_aをプロセスしたあとのGP-IBラインの振る舞いを以下に示します。


SRQが出てclearされるあたりを拡大した物は

です。full listはこちらです。

7.おわりに

R314 ASYNに対応したHP8590スペクトラムアナライザ用EPICSデバイスサポートについて 紹介しました。
Makoto Tobiyama
21/Feb/2014

Return to FB Home Page...