物質・生命科学実験施設の 実験制御ソフトウェア 2005年7月11日 中性子装置開発研究グループ 中谷 健 目次 • 実験制御システムのハードウェア/ソフトウェ ア構成 • ネットワーク分散型制御システムのプロトタイ プ • ロギングシステムのプロトタイプ • まとめと今後 中性子ビームラインの実験制御システム(ハードウェア) CPU DAQ Sample environment CPU D-Ana+UI CPU DAQ Beamline components CPU UI Spectrometer Vacuum vessel Beamline collimator Neutron beam Neutron guide Beam monitor Sample environment control instrument Sample Detectors Vacuum gauge T0 chopper Chopper Monitor camera Water leak sensor Gas sensor Beamline LAN Vacuum gauge CPU DB Thermometer Hygrometer DAQ Electronics CPU DAQ+D-Red CPU Logging DAQ data storage Timing, Inhibit Module Storage Area Network 中性子ビームラインの実験制御システム(ソフトウェア) CPU DAQ CPU DAQ Beamline component server Sample environment server Spectrometer CPU D-Ana+UI CPU UI User interface for Beamline manager User interface for Beamline user Vacuum vessel Beamline collimator Neutron beam Neutron guide Beam monitor Sample environment control instrument Sample Detectors Vacuum gauge T0 chopper Chopper Monitor camera Water leak sensor Gas sensor CPU Logging TCP/IP Socket CPU DB RDBMS Web server Vacuum gauge Thermometer Hygrometer CPU DAQ+D-Red Detector server DAQ Electronics Logging client DAQ data storage Timing, Inhibit Module Storage Area Network ネットワーク分散型制御システムのプロトタイプ CPU DAQ CPU DAQ Beamline component server Sample environment server Spectrometer CPU D-Ana+UI CPU UI User interface for Beamline manager User interface for Beamline user Vacuum vessel Beamline collimator Neutron beam Neutron guide Beam monitor Sample environment control instrument Sample Detectors Vacuum gauge T0 chopper Chopper Monitor camera Water leak sensor Gas sensor CPU Logging TCP/IP Socket CPU DB RDBMS Web server Vacuum gauge Thermometer Hygrometer CPU DAQ+D-Red Detector server DAQ Electronics Logging client DAQ data storage Timing, Inhibit Module Storage Area Network ネットワーク分散型制御システムの特徴 • オープンな通信プロトコル – 信頼性の高いTCP/IPのSocket通信を利用。OSやアプリケーションに依 存しない。 • ネットワーク分散化 – 検出器からのデータの増大に対応して負荷を分散。 – 実験セットアップの変更に柔軟に対応。 • Client-server型構造 – 対障害性の向上。 • 排他処理 – 実験中は他の制御端末からの制御は受け付けない。 – 使用状況は常時モニター可能。 ネットワーク分散型制御システムのプロトタイプ @KENS SWAN USB 2.0 TA Modules CPU DAQ Ethernet CPU D-Ana+UI GPIB Detectors USB 2.0 CPU DAQ PSD Modules Detectors USB 2.0 Sample environment Controller Thermo-control, Sample change... CPU DAQ PSD Modules Detectors ネットワーク分散型制御システムのプロトタイプ @KENS SWAN TA server Socket通信 TCP/IP ユーザーインターフェース(例) PSD servers Data Reduction Online Data Analysis Sample environment server ネットワーク分散型制御システムのプロトタイプ @KENS SWAN PC1(制御側に着目した構成の例) PC2(機器側に着目した構成の例) KENS control コマンドタスク (KENS_control.vi) コマンドステータス ・ドライバ選択リスト ・コマンド発行 ・ステータス取得 ・占有管理 コマンド ・BEGIN ・END ・PAUSE ・RESUME ・ABORT ・SAVE ・CHANGE KPサーバ (KP_server.vi) コマンド コマンド レシーブコマンドタスク ・コマンド受信 データ センドデータタスク ・データ送信 レシーブデータタスク コマンドステータス ・データ要求 ・データ取得 コマンド センドステータスタスク ・占有IP送信 設定値 KPサーバファイル (KP_server.TAtable) 設定値 TAサーバファイル (TA_server.TAtable) ドライバタスク ・BEGIN ・END ・PAUSE ・RESUME ・ABORT ・CHANGE 設定値 KENS control起動ファイル (Device.ini) ・コメント ・ユーザー ・ランナンバー ・モニター情報 ・ドライバ種別 ・IPアドレス ・ポート番号 グラフ (任意.vi) ・TAグラフ ・PSDグラフ ・PSDマップ レシーブデータタスク コマンド ・データ要求 ・データ取得 データ TAサーバ (TA_server.vi) コマンド レシーブコマンドタスク ・コマンド受信 データ センドデータタスク ・データ送信 コマンドステータス KPサーバ (KP_server.vi) コマンド ドライバタスク ・BEGIN ・END ・ABORT ・SAVE ・CHANGE データ TAデータファイル センドステータスタスク ・占有IP送信 TAサーバ (TA_server.vi) PSDサーバ (PSD_server.vi) PSDサーバ (PSD_server.vi) コマンド レシーブコマンドタスク ・コマンド受信 データ センドデータタスク ・データ送信 コマンドステータス センドステータスタスク ・占有IP送信 PC3 KENS control SWANでの作業風景 Ethernet コマンド 設定値 ドライバタスク ・BEGIN ・END ・ABORT ・SAVE ・CHANGE PSDサーバファイル (PSD_server.PSDtable) データ PSDデータファイル ロギングシステムのプロトタイプ CPU DAQ CPU DAQ Beamline component server Sample environment server Spectrometer CPU D-Ana+UI CPU UI User interface for Beamline manager User interface for Beamline user Vacuum vessel Beamline collimator Neutron beam Neutron guide Beam monitor Sample environment control instrument Sample Detectors Vacuum gauge T0 chopper Chopper Monitor camera Water leak sensor Gas sensor CPU Logging TCP/IP Socket CPU DB RDBMS Web server Vacuum gauge Thermometer Hygrometer CPU DAQ+D-Red Detector server DAQ Electronics Logging client DAQ data storage Timing, Inhibit Module Storage Area Network ロギングシステムのプロトタイプ@研究棟付属4棟 Ethernet CPU UI CPU Logging Thermocouple sensor WE7000 with Thermocouple module CPU DB ロギングシステムのプロトタイプ@研究棟付属4棟 from socket import * import readline,time,sys,string HOST = ‘linux01nsrc‘ PORT = 10201 ADDR = (HOST, PORT) tcpCliSock = socket(AF_INET,SOCK_STREAM) tcpCliSock.connect(ADDR) n=1 data00=0. while 1: data=['%g'%data00] query='put/%s/%s'%(sig,string.join(data,'_')) t0=time.time() tcpCliSock.send(query) dataret = tcpCliSock.recv(4) data00=time.time()-t0 if n%100==0 print query print n,data,dataret n=n+1 time.sleep(10) tcpCliSock.send('q') tcpCliSock.close() CPU1 Logging Client Python Device Database Server Web server Apache CPU UI http cgi RDBMS MySQL CPU2 Logging SQL Socket Web browser IE, Netscape, … Server Python Socket Client LabVIEW Device ロギングシステムのプロトタイプ@研究棟付属4棟 プロトタイプ(ハードウェア構成)@研究棟付属4棟 CPU UI CPU DB Ethernet(JLAN) CPU Logging GPIB USB IEEE1394 Thermocouple CPUs DAQ+D-Red CPU Beamline component USB2.0 USB2.0 Motor driver Power cable Monitor camera Goniometer DAQ electronics プロトタイプ(ソフトウェア構成)@研究棟付属4棟 CPU UI CPU DB User interface RDBMS Web server TCP/IP Socket CPU DAQ CPU Logging Beamline component server Logging client USB or IEEE1394 Thermocouple GPIB Motor driver CPU DAQ+D-Red CPU DAQ+D-Red Detector server Detector server USB2.0 USB2.0 Power cable Monitor camera Goniometer DAQ electronics まとめと今後 • KENS controlを改良したネットワーク分散型制御システムの プロトタイプをSWANでの試験運用に成功した。 • データベースとWebブラウザを用いたロギングシステムのプ ロトタイプを原研研究棟付属第4棟で立ち上げた。 • JLAN環境において、ロギングシステムを加えたネットワーク 分散型制御システムのプロトタイプを原研研究棟付属第4棟 に構築する。 • 試料環境制御のサーバー化を行う。 • SIRIUSの一部をネットワーク分散型制御システムに入れ換 えることによりイベント処理のプロトタイプを開発する。 • Day-1に必要とされる実験制御ソフトウェア群のガイドライン を今年度中に策定する。
© Copyright 2024 ExpyDoc