The BAQ/Data Acquisition/DAQ System/FAQ
もどる
よく発生するトラブルや質問疑問などについての情報です。
- [ALL ] BAQとは?
- [ALL ] babaDAQ、babarlDAQ、NBBQの違い
- [ALL ] データフォーマット
- [BBRL] Performance、Trigger Rateなど
- [BBRL] Controllerに関して
- [BBRL] DATに関して
- [NBBQ] IRQに関して
- [ALL ] BAQとは
babaDAQ、babarlDAQ、NBBQや、その他もろもろ私が開発したDAQ関連のプログラムたちを総称してBAQと命名しました。(named
by Mr. KYON.)
- [ALL ] babaDAQ、babarlDAQ、NBBQの違い
- babaDAQ
RTLinux を使用した1PCで使うStand
alone型DAQです。 JavaベースのOn-line
Monitorを備えていますが、1D、2Dヒストグラム表示が出来ますが、解析機能ありません。
RTLinuxベースなので、DAQとしてはそこそこパフォーマンスがよいですが、インストールが繁雑なことと、RTLinuxを使用すること、PnP
(Plug and Play) に対応していないこと、解析が出来ないこと、データフォーマットが未熟などなどを理由に、今後全く拡張やバグの修正を行なう予定がなく、
使用を勧めていません。
- babarlDAQ
RTLinux を使用した複数台のPCで使う Network分散型のDAQです。
1台のPCだけでも動作しますが、基本的にはCAMAC-VME制御PC(RTLinux)、データ保存PC(Linux)、On-line解析PC(Linux)の3台で使用するのが効果的です。
CAMAC Crate ControllerはKinetic 3922+2915PCIとTOYO CC/7700+CC/PCI、 VME
ControllerはSBS 620 PCI-VME、Wiener PCI-VMEが使えます。インストールが繁雑で設定も面倒ですが、 DAQのパフォーマンスが良いことと、非常に動作が安定していること、CAMAC +
VMEハイブリッドで使えること、強力なOn-lineが可能であることが大きなメリットです。
- NBBQ
babaDAQ、babarlDAQの経験をふまえて作られた、ノーマルLinux用 Stand
alone型のシステムです。
基本的にbabarlDAQ互換で、CAMAC + VMEハイブリッドで使用、
On-line解析も行なえます。ほぼPnPに対応しており、インストールも簡単です。
DAQのパフォーマンスはRTLinuxを使用したものに比べて劣りますが、検出器のテストなど Dead
Timeが気にならない測定に最適です。
また、CAMACやVME制御用の汎用ドライバとアプリケーションが附属しているので、各モジュールの
パラメータ設定などにも使えます。 DAQの学習用にもよいかもしれません。
- [ALL ] データフォーマット
babarlDAQは RDF(理研?データフォーマット)です。
babaDAQのデータフォーマットは 独自規格です。
NBBQでは両者とも使用可能ですが、RDF(BBRLモード)をお勧めします。
- [BBRL] Performance / Trigger
Rateなど
Performanceに関してはパフォーマンスを参照して下さい。
BBRLが耐えられるTrigger
Rateは、ちゃんとTriggerにVETOの回路をつけておく限り無制限です。
Trigger
Rateが高くてBBRLが落ちることはまずありません。
Trigger Rate (Ungated Trigger)
50kcpsでもちゃんとデータとれます。
- [BBRL] Controllerに関して
- 画面の表示が崩れたとき
何かしらのエラーで、Controllerの表示が崩れてしまった場合は、 "cc"
というコマンドで表示をクリアできます。
- Controllerを立ち上げ直すとき
"netstat -a | less" などとやって、port番号 "167**"
のソケットが DATマシンとCAMACマシン間でコネクションされていないことを確認して下さい。
ステータスが "TIME_WAIT"
の場合は約1分以内で解消されます。 "ESTABLISHED" の場合はまだ接続状態にあるので、 DATマシン側で "ps -x" とやって、
"recorder","database"というプロセスが残っていればkillして下さい。また、CAMACマシン側で "ps -ax" とやって
"transfer" というプロセスがあればそれもkillして下さい。
- Ctrl-c などで強制終了したとき
まず "ps x" とやって "recorder"、"database"
というプロセスが残っていないか確認して下さい。もしも残っていたら "kill -9 ****" で kill して下さい。
- [BBRL] DATに関して
- DAT使用率について
Controllerで表示されるDAT使用率はBlock数です。デフォルトでは 80000 Block =
1.22 GB をFullにしています。
DATマシンで環境変数 "BBRL_DAT" でこのFullのBlock数を変えることができます。
2GBのDATを使う時は "setenv BBRL_DAT 120000" のように環境変数をセットしてからControllerを立ち上げるとよいです。
- start or stop時にDAT使用率表示が急に増える
"mou"コマンドを行なうことによって、DAT DriveのBlock
Sizeを16kBにセットしています。DAT DriveデフォルトのBlock Sizeはたいてい512Bなので、
1回も"mou"をしない状態でDATにデータを書き込むと32倍使用したように見えます。
また、RUNの途中でのDAT使用率は何回Blockを処理したかという計算値で、実際にDAT
Driveから使用率を得るのはstartかstopした時のみです。
- Block Sizeに関して
おそらく2000年秋以降から、DATにデータを書き込む際に、 Block
Sizeを16384=16kBにしています。別のDAT Driveでデータを読み出したい場合は dd if=/dev/nst0 of=***.rdf
bs=16k のように "bs=16k" をつけて下さい。
DAT Driveによっては "mt -f /dev/nst0 defblksize
16384" とやって、Drive自身でBlock Sizeをセットする必要があります。 (root権限でしか defblksize はセットできないようです)
- データ収集中のエラー
SeagateのDAT Driveを使用している場合に、
2002年あたりからときどき書き込み中にエラーが表示されるようになりました。エラーが出た場合はすぐにRUNをストップして、
DATテープを変えるようにして下さい。
"st0: Error 8 (sugg. bt 0x0, driver bt 0x0, host bt
0x0)." と表示された場合は、どうやら書き込みに失敗した時に出るようです。 2001年ぐらいまではエラー出なかったので、DAT
Driveをクリーニングしていないためでしょうか? (2年間ぐらいクリーニングしていない...)
なので、なるべくクリーニングテープで掃除をするようにしてみて下さい。
→ ちゃんとこまめにクリーニングするようにしたら、エラー激減しました
- [NBBQ] IRQに関して
startするとマシンが固まり、moduleをクリアすると復帰する場合は
DAQに使うPCIカードが他デバイスとIRQが競合していると可能性が高いです。 "cat /proc/interrupt", "cat /proc/pci"
で確認して下さい。
IRQが競合していた場合はPCIカードを差す場所を変えるか、競合するデバイスを使用不可にして下さい。
最近のLinuxではi810でX使用時にIRQを1つ占拠するものもあるようです。
XF86Config-4の 'Load "dri" # Direct rendering infrastructure'
をコメントアウトするとIRQを占拠しなくなります。
Last Update: 2005/4/6
Hidetada Baba
baba @ rarfaxp.riken.jp