Proceedings of the 10th Annual Meeting of Particle Accelerator Society of Japan (August 3-5, 2013, Nagoya, Japan)

MADOCA	 II-LabVIEW インターフェイスを用いた BPM データ読み出しシステムの作成	 
DEVELOPMENT OF A BPM DATA READOUT SYSTEM USGING MADOCA IILABVIEW INERFACE古川 行人 A)，松本 崇博 A)，藤田 貴弘 A)
Yukito Furukawa#,A), Takahiro MatsumotoA), Takahiro FujitaA)
A)
Japan Synchrotron Radiation Research Institute

Abstract
We have developed new control framework called “MADOCA II” as reported on this PASJ10 meeting. Main features of the MADOCA II are; 1) It can treat variable length data like a waveform or an image. 2) It can be running on aWindows™ operating system. Using these features, we have developed a MADOCA II-LabVIEW interface programand applied it on a readout system for beam position monitors (BPM). The system consists of two NI’s PXI 5922
digitizers (4 channels in total), a CPU and a PXI crate and the readout program was written using the LabVIEW on a 32bit version of Windows 7. BPM data is digitized on the PXI 5922 with 50k samples/s and the data is decimated toseveral sampling rates (50~5k samples/s) by the LabVIEW based software and these decimated data are transferred toremote client software via the MADOCA II middleware. Monitoring of the beam orbit is performed on the client withgraphs for time-domain and frequency domain by FFT on the client software. It was confirmed that all decimated data
were transferred to the client with sufficient speed without any lack.

1.

はじめにする。

MADOCA (Message And Database Oriented ControlArchitecture)は SPring-8 の蓄積リング制御フレーム 2. MADOCA	 Ⅱ-LabVIEW インターフェイス
Figure 1 に MADOCA Ⅱ-LabVIEW インターフェワークとして設計され、蓄積リング、放射光ビーム
ラ イ ン 、 入 射 器 等 の 制 御 に 利 用 さ れ て き た 。 イスの概要を示す。MADOCA Ⅱのメッセージ通信
MADOCA は分散型の制御システムであり、遠隔の の中核である Message Server 2(MS2)はクライアントI/O を取り扱う VME 等のフロントエンド計算機に対 から送られてくるメッセージを LabVIEW に転送すしてテキストベースのメッセージを送り、VME は る 。 メ ッ セ ー ジ 通 信 は ZeroMQ[2] と 呼 ば れ る メ ッセージ通信ライブラリを用いて行われるため、その応答を同じくメッセージとして送り返す。
長い利用期間の間に加速器制御系への要求の高度 LabVIEW 側では LabVIEW-zmq binding[3]を利用して化や利用対象の拡大により MADOCA では簡単には 通 信 を 行 う 。 MADOCA Ⅱ で は 通 信 メ ッ セ ー ジ を
扱 い き れ な い 対 象 が 増 え て き た 。 そ の た め MessagePack[4] を 用 い て パ ッ キ ン グ し て い る 。
MADOCA に大幅な機能拡張や仕様の変更を行った MessagePack を利用することでネットワーク通信で問題になるバイトオーダの問題を解決でき、さらにMADOCA Ⅱを開発した[1]。
MADOCA Ⅱの大きな特徴として次の２つが挙げ 構造を持つ可変長データを柔軟に扱えるためである。
られる。1) 画像や波形データ等の可変長データを取 LabVIEW で MessagePack によりパックされたデータり扱うことが出来る。2) Windows 環境でも動作可能 を扱うため、MessagePack for LabVIEW[5]を用いていである。これらの特徴を活かすことで、これまでの る。
Figure 1 に示すように、LabVIEW インターフェイ
MADOCA では難しかった LabVIEW ベースで作成され た シ ス テ ム へ の 直 接 ア ク セ ス が 可 能 と な る 。 ス は 、 MS2 か ら の メ ッ セ ー ジ を LabVIEW-zmqLabVIEW 上で構築された様々な資産を利用し、そ binding で受信し、MessagePack for LabVIEW を用いの上で計測された様々なデータを取り扱うことがで てアンパックして制御メッセージを取り出し、解釈、きるようになる。SPring-8 では日本 NI の協力を得て、 実行し、結果を MessagePack for LabVIEW でパック
LabVIEW 上に MADOCA Ⅱインターフェイスを構 して LabVIEW-zmq binding を通じて送り返す。
特筆すべき点として、これらの機能は全て築し、その最初のアプリケーションとして PXI 5922を用いた Beam Position Monitor(BPM)データ収集シ LabVIEW で記述されており、他の言語による支援は不要である事が挙げられる。
ステムに適用した。
本報告では構築したシステムの概要について報告____________________________________________#furukawa@spring8.or.jp- 239 -Proceedings of the 10th Annual Meeting of Particle Accelerator Society of Japan (August 3-5, 2013, Nagoya, Japan)

REMOTECLIENT

3. PXI 5922 を用いた BPM モニタシステムとデータ読み出しシステム
BPM 読み出し PC(Windows)

Message
ServerMessage

Reply

LabVIEW-zmq

LabVIEW Program

UnpackMessage
MessagePackfor LabVIEW

Interpreter

Execution
Execution
Pack Reply MessageExecution

Figure 1 MAODCA II-LabVIEW Interface
Client Program

Client PC(Linux)

Waveform
Display

Message
ServerFFTMessage
ServerSpectrum
Display

BPM 読み出し PC(Windows)

LabVIEW Program
MADOCA IILabVIEW
InterfaceQUEUE

PXI 5922
Readout
Block

Figure 2 BPM Readout system

AnalogBlock

BPM モニタシステムの目的は大きく分けて２つあり、１つ目は挿入光源のギャップ変更などによる軌道変動や地震による軌道変動を含む、電子ビーム軌道のドリフトを監視すること（目的１）であり、もう１つは数 100Hz までのビーム軌道の変動を常時監視すること（目的２）である。
ハードウェアの概要は次の通りである。蓄積リン
グのセル 15 とセル 27 に設置されているボタン型電極からの信号をアナログ回路で水平および垂直信号に変換した後、光信号に変換して１か所に集約する。
集約された信号は PXI 5922 デジタイザに入力されて同期した測定を行う。現在の構成では２か所の BPMでそれぞれ水平位置、垂直位置の４信号である。
（ボードを増設することでチャンネル数を増やすことが可能である。）
Figure 2 に BPM データ読み出しシステムの概要を示 す 。 LabVIEW ソ フ ト ウ エ ア が 起 動 す る と PXI
5922 から 50k samples/s のデータ収集が開始される。
遠隔のクライアントプログラムからデータ転送開始メッセージが送られると、LabVIEW の Queue を利用して 5k samples/s, 500samples/s, 50samples/s に間引かれたデータがデータ転送ブロックに転送される。
クライアントプログラムからデータ転送メッセー
ジが送られると、これらのデータの先頭に開始時刻、終了時刻、時間間隔が付加された実数配列としてデータが送り返される。
Figure 3 にサーバーVI のブロックダイアグラムの１部を示す。メッセージ用のキューからメッセージを受け取ると、その内容を解釈してデジタイザ―データ用のキューからデータを取得し、ms send でクライアント側に送信している。Figure 5 にサーFigure 3 Block diagram of server VI. Server program detects message in message que, read digitizer data fromdata que and send data via ms-send.

- 240 -Proceedings of the 10th Annual Meeting of Particle Accelerator Society of Japan (August 3-5, 2013, Nagoya, Japan)

Figure 4 GUI of server VI working on Windows PC. Each waveform indicate position data at C15 and C27
horizontal and vertical.
バープログラムのフロントパネルを示す。VI を実行することで自動的に ms2exe が開始される。現在の波形データと時刻、エラー等の情報が表示される。
なお、サーバープログラムの実行には debugモードがあり、ms2exe のログを表示することが可能である。また、通信確認用ツール tellms2 を用いることで、サーバー側でメッセージのやり取りを確認することが可能である。

そのものの他、FFT を行なった結果を表示する。
Figure 5 にクライアントプログラムの表示例を示す。
この表示では全ての挿入光源のギャップを Full-closeから full-open にした際の軌道の変化が記録されている。
データ転送試験を繰り返した結果、少なくとも数日間に渡って取りこぼしなくデータ転送が行えることが確認できた。

クライアントプログラムは Linux 上に作成されたGUI プログラムであり、転送されてきた波形データ

4. 今後の展開
今後、BPM の波形データをデータベースに記録し、長期的な変動の測定を行なっていく。また 5kHz のデータをクライアントプログラムのバッファに蓄えておき、突発的な軌道変動要因（ビームアボートなど）の解明などに役立てていく計画である。

参考文献[1] T. Matsumoto et.al,. 日 本 加 速 器 学 会 第 10 回 年 会
SAOTP4[2] http://www.zeromq.org/[3] http://www.zeromq.org/bindings:labview[4] http://msgpack.org/[5] http://sourceforge.net/p/msgpack-labview/wiki/Home/

Figure 5 Example on Client program of BPM monitor
system based on MADCA II-Lavbiew interfaceAround horizontal axis from 2000-3000, Gaps of all
insertion devices were fully opened.
- 241 -