+ All Categories
Home > Documents > DAQ$Middlewareについてrobot-education.sakura.ne.jp/files/130903/sendai...従来のDAQシステム構築...

DAQ$Middlewareについてrobot-education.sakura.ne.jp/files/130903/sendai...従来のDAQシステム構築...

Date post: 27-Jan-2021
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
37
DAQMiddlewareについて 千代浩司(せんだいひろし) 大学共同利用機関法人 高エネルギー加速器研究機構(KEK) 素粒子原子核研究所 20130903 1
Transcript
  • DAQ-‐Middlewareについて

    千代浩司(せんだいひろし)  大学共同利用機関法人  

    高エネルギー加速器研究機構(KEK)  素粒子原子核研究所

    2013-‐09-‐03 1

  • DAQ-‐Middlewareとは•  RT-‐Middlewareを実験データ収集用

    に拡張  •  DAQコンポーネント (RTコンポーネン

    ト)を組み合わせてシステムを構築する。以下をユーザーに提供する。  –  状態遷移  –  DAQコンポーネント  –  ランコントーロール(DAQ-‐Operator(コントローラ))  

    –  システムコンフィギュレーション  –  システムインターフェース  

    2013-‐09-‐03 2

    DAQ- Component

    DAQ- Operator

    DAQ-Middleware

    DAQ- Component

    DAQ- Component

    RT-Middleware

    Run Control Function

    System Configuration

    function Data Transfer

    Function

    Web Interface

  • もくじ

    •  DAQ-‐Middlewareが想定している実験    DAQ:  Data  AcquisiBon  (データ収集)  

    •  DAQ-‐Middlewareの紹介

    2013-‐09-‐03 3

  • 高エネルギー加速器研究機構 (KEK)•  加速器を使ったサイエンス  

    – 素粒子、原子核の研究  – 物質構造、生命科学  – 場所: 茨城県つくば市および東海村  – 人員:  教員  380人、技術職員  150人、事務職員 150人  

    2013-‐09-‐03 4

  • 東海キャンパス

    2013-‐09-‐03 5

  • J-‐PARC•  Japan  Proton  Accelerator  Research  Complex

    2013-‐09-‐03 6

    高エネルギー加速器研究機構 (KEK)、原子力研究開発機構 (JAEA)共同運営

  • J-‐PARC/MLF    (物質•生命科学実験施設)

    2013-‐09-‐03 7

  • 2013-‐09-‐03 8

  • 測定法

    L

    陽子ビーム

    速い中性子

    中速中性子

    遅い中性子

    試料

    検出器E=1/2*m(L/t)2  

    25Hz  

    2013-‐09-‐03   9  

    水銀ターゲット

    解析には散乱中性子のエネルギーと位置情報が必要  •     エネルギーは飛行時間から速さを算出  •  位置情報は検出器の位置、および電荷で算出

    Q1  

    Q2  

    L  

    x  

    x/L=  Q1/(Q1+Q2)  4kΩ  

    He3ガス一次元検出器

    PSD(posiBon  sensiBve  detector)  

  • 2013-‐09-‐03 10

  • 2013-‐09-‐03 11

  • 2013-‐09-‐03 12

  • 2013-‐09-‐03 13

  • 2013-‐09-‐03 14

  • 2013-‐09-‐03  

    読出し方式(昔)

    •  共有バスによる読出し方式CAMAC,  VMEbus  ⇒クレート内にコントローラが必要

    ⇒基本的にはコントローラによるシーケンシャルなモジュール読出しのためスループットに限界

    Controller

    ADCs

    CAMAC Dataway

    計算機へ

    15

  • 2013-‐09-‐03  

    読出し方式(今)

    •  共有バスによるシリアル読出しから、ネットワークによる並列読出しへシフトが起こっている

    •  SiTCPの発明により、種々のモジュールのネットワーク読出しが可能になった    h[p://e-‐sys.kek.jp/tech/sitcp/

    16

    FPGA

  • DAQ-‐Middlewareについて

    2013-‐09-‐03 17

  • 2013-‐09-‐03  

    データ収集(DAQ)システムの基本要素データ読出し、保存

    – 検出器からの信号を(デジタイズして)保存する– オフラインで詳細なデータ解析のため

    オンライン解析(モニタ)– 実験の監視を行う (ビーム時間が制限されている

    場合もある)– 実験遂行の妥当性を保障する  

    ランコントロール  – スタート、ストップ (プロセスの起動、停止)  

    周辺機器コントロール  – 高電圧、温度など

    18

  • 従来のDAQシステム構築

    •  スクラップ &  ビルド  – ソフトウェアの再利用については  

    •  ライブラリレベルでの再利用 (システムとしては結局あらたなものを作ることになる)  

    •  システムレベルでの再利用 (データ収集効率が落ちる)  

    2013-‐09-‐03 19

  • DAQ-‐Middlewareがめざすもの

    •  目的  – システム構築の負担を減らす  – データ収集効率を最大限に近づける  

    •  方針  – デバイスドライバ、読み出しライブラリとシステム

    の間にコンポーネント層を設ける  •  データ収集効率の確保  •  実験毎の違いを吸収  

    – システムの枠組みは普遍フレームワークとする2013-‐09-‐03 20

  • 2013-‐09-‐03 21

  • DAQ-‐Middlewareとは•  RT-‐Middlewareを実験データ収集用

    に拡張  •  DAQコンポーネント (RTコンポーネン

    ト)を組み合わせてシステムを構築する。以下をユーザーに提供する。  –  状態遷移  –  DAQコンポーネント  –  ランコントーロール(DAQ-‐Operator(コントローラ))  

    –  システムコンフィギュレーション  –  システムインターフェース  

    2013-‐09-‐03 22

    DAQ- Component

    DAQ- Operator

    DAQ-Middleware

    DAQ- Component

    DAQ- Component

    RT-Middleware

    Run Control Function

    System Configuration

    function Data Transfer

    Function

    Web Interface

  • DAQ-Middleware構成図

    Dispatcher  

    Logger  

    Monitor  Gatherer  

    ・  ・  ・  

    HTTP  Server  

    • Control  Panel  on  Web  browser      (javascript,  ajax)  • Python  GUI  • Command  line  program  

    Online  histograms    on  Web  browser  

    Read-‐out  modules  

    PC

    PC  

    xml/h[p  Command/Status

    User  Interface

    XML

    System  ConfiguraBon

    Online  histograms    using  ROOT  

    XML/JSON

    Device  CondiBon/  Online  analysis

    • 使用するコンポーネントを指定  •   コンポーネント間接続情報  •   パラメータ

    •  装置パラメータ  •     オンラインモニタパラメータ

    Detectors  

    Daq  Operator

    2013-‐09-‐03 23

    mod_python  mod_wsgi

    command/status

  • 状態遷移

    2013-‐09-‐03 24

    LOADED

    CONFIGURED

    RUNNING PAUSED

    Configure

    Start

    Unconfigure

    StopPause

    Resume

  • 2013-‐09-‐03 25

    InacBve

    Error

    LOADED

    CONFIGURED

    RUNNING PAUSED

    Configure

    Start

    Unconfigure

    StopPause

    Resume

    Created

    Alive

    AcBve

    Atcive状態のサブステートとして必要な状態を実装

  • 26  

    DAQコンポーネント  

       n DAQコンポーネント ==  RT コンポーネント  n データ転送機能はInPort,  OutPortを利用  n DaqOperatorコンポーネントからの指示(コマンド、ステータス)はサービス

    ポートを利用  n コマンド:  状態遷移  n ステータス:  InPort,  OutPortの状態、取り扱ったデータ数  

     

    InPort   OutPort  

    Service  Port  (command/status)  

    Logics      (for  data  handling)  

    Data  

    InPort   OutPort  

    Service  Port  (command/status)  

    Logics      (for  data  handling)  

    Data  + =

    2013-‐09-‐03

  • DAQコンポーネント間のデータフォーマット

    2013-‐09-‐03 27

    COMPONENT  HEADER

    COMPONENT  FOOTER

    Event  Data  

    Event  Data  

    Event  Data  

    Event  Data  

    Reserved ReservedHeader  MagicHeader  Magic

    Data  Byte  Size

    Data  Byte  Size

    Data  Byte  Size

    Data  Byte  Size

    Reserved ReservedFooter  MagicFooter  Magic Seq.  Num Seq.  Num Seq.  Num Seq.  Num

    Component  Header

    Component  Footer

    Data  Byte  Sizeには下流コンポーネントに何バイトのイベントデータを送ろうとしたか  を入れる  下流側ではDataByteSizeを読んでデータが全部読めたかどうか判断する  

    Sequence  Numberにデータを送るのは何回目かを入れる  下流側では受け取った回数を自分で数えておいて、Sequence  Numberとあうか  どうか確認する

  • ランコントロールおよび  システムインターフェース:  DaqOperator

    2013-‐09-‐03 28

    HTTP  Server  

    • Control  Panel  on  Web  browser      (javascript,  ajax)  • Python  GUI  • Command  line  program  

    xml/h[p  Command/Status

    User  Interface

    Daq  Operator

    28

    DAQコンポーネント

    • DAQコンポーネントに対してデータ収集スタート、ストップ等の指示、ステータス取得を行う必要がある。  • DaqOperatorを作り、これに統括させる。DaqOperatorはRTコンポーネント。サービスポートを利用している。  • 外部システムからDaqOperatorに対する指示はxml/h[pで行う  

    • 既存のものがあるときは、h[pで通信するようにすれば使える  

    command,status

  • システムコンフィギュレーション•  XMLファイルに記述し、DaqOperatorが読んで

    システム構成を把握する。  •  システムコンフィギュレーションファイルの変

    更で構成を変更することができる。

    2013-‐09-‐03 29

                               127.0.0.1                                                                                                                                            127.0.0.1                                          50000                                          SampleReader0.rtc                                          /home/daq/MyDaq/SampleReader/SampleReaderComp                                          /tmp/daqmw/rtc.conf                                          2                                                                                                                                                                                samplereader_out                                                                                    

    READOUT  

    READOUT  

    READOUT  

    READOUT  

  • ユーザー側でのセットアップ

    •  RedHat  Enterprise  Linux互換OS用RPMパッケージ、Ubuntu用パッケージを配布  – セットアップスクリプトの実行でダウンロードから

    セットアップまで終了する  

    2013-‐09-‐03 30

  • ユーザーの利用方法

    2013-‐09-‐03 31

    LOADED  

    CONFIGURED  

    RUNNING  

    PAUSED  

    daq_dummy()  

    daq_dummy()  

    daq_run()  

    daq_dummy()  

    CONFIGURE  daq_configure()  

    START  daq_start()  

    PAUSE  daq_pause()  

    UNCONFIGURE  daq_unconfigure()  

    STOP  daq_stop()  

    RESUME  daq_resume()  

    各状態および状態遷移時に呼ばれる関数を用意。  ユーザーは各関数を実装することでDAQコンポーネントを完成させる。

  • 利用例

    •  実験  –  J-‐PARC/MLF  –  DAQ  system  of  Depth-‐resolved  XMCD  (X-‐ray  MagneBc  Circular  Dichroism)  

    experiments  at  Photon  Factory    (KEK  IMSS,  KEK  IPNS)  

    –  CANDLES  (岐阜県神岡地下実験)  •  実験(これから)  

    –  J-‐PARC  Hadron  E16  (High  P)  –  SuperNEMO  

    •  検出器(センサー)テストベッド  –  ILC  CCD  Vertex  (KEK,東北大学)  –  GEM  (KEK  測定器開発室)  –  SOI  (KEK  測定器開発室)  –  ADC_SiTCP  (Open-‐It)  –  J-‐PARC  Hadron  COMET  (RoesB,  CDC)  (これから)  

     2013-‐09-‐03 32

  • J-‐PARC  MLF中性子での使用状況

    2013-‐09-‐03 33

    DAQ-‐Middleware  Working

    2008年5月のファーストビームから稼働している。  

  • 開発体制

    2013-‐09-‐03 34

    Open-‐It  (Open  source  consorBum  of  InstrumentaBon)  の1プロジェクトとして開発を進めている。    Open-‐It  :  加速器科学および関連分野に関する放射線計測システム開発のための開発教育拠点ネットワーク  テクノロジー:  ASIC,  PCB,  FPGA,  Soqware  教育:  OJT,  トレーニングコース、セミナー    h[p://openit.kek.jp/  

    学部:  11,  M1:  66,  M2:  9,  D1-‐3:  8  その他 41

  • DAQ-‐Middleware  プロジェクト

    •  2010年4月DAQ-‐Middleware  Core  グループ結成  •  メンバー  

    – 千代、濱田、井上 (KEK)  – 長坂 (広島工業大学)  – 味村 (大阪大学)  – 神徳、安藤 (産業技術総合研究所)  – 和田 (  (株)  Bee  Beans  Technologies)  – 仲吉(2011年4月まで)、安(2012年3月まで)  

    2013-‐09-‐03 35

  • DAQ-‐Middleware  トレーニングコース

    2013-‐09-‐03 36

    毎年夏に東日本、西日本でそれぞれ開催  

  • 2013-‐09-‐03 37

    p  RT-‐Middlewareを実験データ収集システムに拡張  p  RT-‐Middlewareからの拡張点  

    – 実験データ収集に必要な状態遷移の拡張  – サービスポートを利用したコマンド/ステータス送受信機能

    の実装  p 利用状況  

    – 実験として    大強度陽子加速器施設(J-‐PARC)物質・生命科学実験施設(MLF)の14個のビームライン  

      CANDLES(神岡地下実験室)  – 検出器センサーテストベッドとしての利用  

    p 開発体制  – Open-‐Itの1プロジェクトとして開発を進めている    Open-‐It:  加速器科学および関連分野に関する放射線計測システム開発のための開発教育拠点ネットワーク  

    p URL    h[p://daqmw.kek.jp/    h[p://openit.kek.jp/  


Recommended