[KEKB Bunch Feedback Group]

R314.7及びAsyn driver 4-2-1移行に伴うデバイスサポート変更


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

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


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

1.はじめに

EPICSシステムをR314.6からR314.7にし、Asynドライバーを3-3から4-2-1に変更したことに伴い、GP-IBデバイスサポート(及び、これを利用しているシステム)はこのままではコンパイル不可能になってしまいました。本メモは、移行に関して必要だった手順等を記録のために書いたものです。

2.GP-IBデバイスサポートの一般論

GP-IBデバイスサポートの移行に関して必要なことは、asynドライバーディレクトリの中のdocumentationの所に呪われたhtmlファイルの形であります。ここではそのうち、多分最低限必要そうなことをまとめると、 以下のコマンドで、サンプルdirectoryを作成できます。
/local/R314.7/modules/soft/4-2-1/bin/linux-x86/makeSupport.pl -t devGpib example
なお、本バージョンに対応したgdl変換ソフトウエアは、気長に待っていればきっとコントロールグループが作ってくれるでしょう。

3.devB4phaseの変更点

意外に大きな変更はせずにすみました。まず、定義部ですが、
#include <epicsStdio.h>
#include <devCommonGpib.h>
/***********************************************************************
* asynDriver is distributed subject to a Software License Agreement
* found in file LICENSE that is included with this distribution.
***********************************************************************/
#define DSET_AI         devAiB4phase
#define DSET_AO         devAoB4phase
#define DSET_BI         devBiB4phase
#define DSET_BO         devBoB4phase
#define DSET_LI         devLiB4phase
#define DSET_LO         devLoB4phase
#define DSET_MBBO       devMbboB4phase
#define DSET_MBBI       devMbbiB4phase
#define DSET_SI         devSiB4phase
#define DSET_SO         devSoB4phase

#include <devGpib.h>
とします。また、conversionルーチンで使用しているstrtokとかのため
#include <string.h>
#include <stdlib.h>
の定義も必要でした。その他は、変更なしに動いています。また、devB4phase.dbdのしっぽに
include "asyn.dbd"
を追加しました。

4.sequencerの変更点

こちらは、直接は問題無いはずなのですが、中で使っているsleepが未定義だという文句が出るようになったので、sttファイルの中で
program PHASE_CNTL3
%%#include <unistd.h>
という風に定義を入れました。なお、このバージョンからsleepではなく、epicsSThreadSleepというfunctionが使えるようになったので、こっちを使え、という説もありますが、どなたか人柱になって試して結果を教えてください。

5.おわりに

EPICS R314.7及びASYN 4-2-1移行に伴うデバイスサポート及びEPICSシーケンサ変更についてまとめました。コントロールグループの山本さんに色々教えて頂きました。ありがとうございました。
Makoto Tobiyama
17/May/2005

Return to FB Home Page...