Size: 9523
Comment:
|
Size: 127
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Rack Environmental Monitor = <<TableOfContents(2)>> |
= Temperature and Humidity Monitor System = |
Line 4: | Line 3: |
== 親機リスト Base station list == ||Name ||Serial # ||IP address ||Location ||Connected to || ||Center ||52A0101E ||10.68.140.1 ||Center digital room in Mine ||Relay1, dr, outdr || ||X end ||52A0112B ||192.168.10.4 (local) ||X end station, on a AED rack ||1F EXC, 2F EXC, Racks || ||Y end || || 192.168.10.5 (local)|| EY1 rack at Yend station || 1F EYC, 2F EYC, Racks || ||Mozumi Station ||52A002A0 ||10.68.11.10 ||Control Room ||SVR || ||Yend 2F || 52A01115|| 192.168.11.16|| Y end 2F area (EYV) || || ||X500m (PX) || ? || 10.68.140.2|| GIF Area || || |
[[Overview|概要]] |
Line 13: | Line 5: |
== 中継器リスト Relay station list == ||Name ||Connected to ||Serial # ||Location || ||Relay1 ||Relay2, center ||529A13E8 ||Location || ||Relay2 ||Relay3, imc, ioo, mcrack, pr2, prm, psl ||529A1401 ||Location || ||Relay3 ||ixa ||529A1853 ||By IXA clean booth / Cryomachine room door || ||Relay4 ||crydr ||529A1855 ||Location || ||Relay5 ||iya ||529A186A ||Location || |
[[ItemList|物品リスト]] |
Line 21: | Line 7: |
== 子機リスト Data logger list == === Center Racks === ||Name ||Serial # ||Location || ||mc rack ||52C61128 ||MC Rack || ||ioo ||52C610D7 ||IOO Rack || ||pr2 ||52C61227 ||PR2 Rack || ||prm ||52C61226 ||PRM Rack || ||psl ||52C61518 ||Entrance of the PSL enclosure || ||ixa ||52C61506 ||Around IXA duct || ||iya ||52C61505 ||Around IYA duct || === Center Fields === ||Name ||Serial # ||Location || ||out dr ||52C61234 ||Outside of the mine digital room || ||dr ||52C61234 ||Inside of the mine digital room || ||center ||52C61128 ||On the wall close to the BS booth || ||imc ||52C610DB ||On the big white shelf close to the IMC and PSL || ||crydr ||52C6122A ||低温機械室 tent1 || ||crydr2 ||52C6122E ||低温機械室 tent2 || === Center Booth === ||Name ||Connected to ||Serial # ||Location || ||pr booth ||?, center ||52C6199F || PR booth || === X end === ||Name ||Serial # ||Location || ||ex1 || ||Xend, DGS rack || ||exc1f ||52C6199E ||X end, EXC clean booth 1F || ||exc2f ||52C614D9 ||X end, EXC clean booth 2F || ||exa ||52C61A03 ||X end, EXA. || ||old exa || ||Sealed in the EXA metal rack and not accessible. Not used or not registered to the base station || === X Mid (500m) === ||Name ||Serial # ||Location || ||px1 ||52C61A00 ||Special DGS rack (not online yet) || ||field_px ||52C61A22 ||In Field (not online yet)|| === Y end === ||Name ||Serial # ||Location || || ey1 || 52C614D8 || EY0 rack || || eyc1f || 52C614DC || Yend clean booth 1F|| || eyc2f || 52C61A1E || Yend clean booth 2F|| === Y end 2F === ||Name ||Serial # ||Location || || eyv1 || 52C61A2B || EY1 (2F) rack || || eyv2 || 52C61A17 || EY2 (2F) rack || || eyvbooth || 52C61A02 || EY 2F clean booth || === Mozumi === ||Name ||Serial # ||Location || ||SVR ||52C61229 ||Mozumi server room rear || === Outside === ||fanhut || ||ファン小屋 || == 在庫リスト == ||Name ||Number of stock || ||親機 ||1 || ||中継機 ||5 || ||中継機電源 ||10 || ||バッテリ付き子機 ||32 || ||probeのみ ||7 || ||バッテリ ||22 || == REM (Rack Environmental Monitor) スクリプトの起動・設定方法 == === ・REMプログラムを起動する前に下記の確認が必要 === ==== 1.REMのEPICSを起動していること ==== 確認方法 . {{{ ps -ef | grep ./st.cmd }}} ===== 起動していなければ下記の手順で起動する ===== EPICS ioc を走らせるマシンへログイン . {{{ ssh k1script }}} ioc をスタートさせる . {{{ sudo supervisorctl start rem_ioc }}} ==== 2.温度計がFTPサーバにXMLファイルを転送していること ==== ===== FTPサーバのXMLファイルは下記の手順で確認する ===== . {{{ ftp 10.68.10.10 }}} . {{{ cd /kagra/rem/data/$(location) }}} . {{{ ls }}} .xmlファイルが存在すればOK === ・REMプログラムの起動方法 === . {{{ sudo supervisorctl start $(location) }}} === ・REMプログラムの大まかな流れ === . {{{ 1.温度計の親機がk1nfsの/kagra/rem/data/$(location)にデータをFTP転送する。 2.ディレクトリに存在するXMLファイルを解析する。 --- XMLファイルは<num>で括られた数字が子機番号となっている。(一番最初のnumはグループ番号となっているため注意) <value>で括られている数字は温度と湿度となっている。 --- 3.$(location)_db.shに値を渡して実行することで各チャンネル名にcaputしている。 4.上記の動作を1分間隔で繰り返す }}} === ・親機を追加した場合 === ==== 1.温度計プログラムを修正してビルドする ==== . {{{ cd /kagra/rem/data/src/ }}} . {{{ cp rem_Yend1f.c rem_$(Location).c }}} . {{{ vim rem_$(Location).c }}} ==== 2.ディレクトリの場所の指定をする ==== ===== 下記の内容を編集する ===== . {{{ #define xml_dir "/kagra/rem/data/Yend1f/" #define archive_dir "/kagra/rem/archive/Yend1f/" #define exe_command "bash /kagra/rem/data/bin/rem_Yend1f_db.sh" ===== 下記のように編集する ===== #define xml_dir "/kagra/rem/data/$(Location)/" #define archive_dir "/kagra/rem/archive/$(Location)/" #define exe_command "bash /kagra/rem/data/bin/rem_$(Location)_db.sh" }}} ==== 3.ビルドする ==== なんかエラー出るが無視する . {{{ gcc rem_$(Location).c -o rem_$(Location) }}} . {{{ cp rem_$(Location) ../bin/ }}} ==== 4.親機からデータを受け取るためのディレクトリを作成する ==== . {{{ mkdir /kagra/rem/data/$(Location)/ }}} . {{{ chmod 777 /kagra/rem/dara/$(Location)/ }}} ==== 5.supervisorの設定をする ==== . {{{ cd /etc/supervisor/ }}} . {{{ sudo vim supervisord.conf }}} ===== 下記の内容を追加する ===== . {{{ [program:rem_$(Location)] user=controls environment=PATH="/bin/:/usr/bin:/kagra/apps/epics/base/bin/linux-x86_64" command=/kagra/rem/data/bin/rem_$(Location) autorestart=true autostart=true redirect_stderr=true stdout_logfile=/kagra/rem/log/rem_$(Location).log }}} ==== 6.supervisorを再起動する ==== . {{{ sudo supervisorctl reload }}} === ・子機を追加した場合 === ==== 1.EPICSにチャンネルを追加する ==== . {{{ cd /opt/rtcds/kamioka/k1/target/k1rack/db/ }}} {{{ vim(or emacs) example_rack.db }}} ===== 下記の内容を追加する ===== . {{{ ——————————example_rack.db——— grecode(ai,”K1:PEM-TEMPERATURE_FIELD_子機名”) { 省略 } grecode(ai,”K1:PEM-HUMIDITY_FIELD_子機名”) { 省略 } ———————————————————————————— }}} ==== 2.DAQにチャンネルを追加 ==== . {{{ chans cd daq gedit K1EDCU_REM.ini }}} example_rack.db に追加したチャンネル名を書き足す . {{{ [K1:PEM-TEMPERATURE_$(name)] [K1:PEM-HUMIDITY_$(name)] }}} k1dc0のdaqdのリスタート /!\ データを使っている人がいないか確認してから /!\ . {{{ ssh k1dc0 ps -ef | grep daqd kill $(daqd ###) }}} ==== 3.スクリプトファイルを編集する ==== . {{{ cd /kagra/rem/data/bin/ }}} {{{ vim(or emacs) rem_center_db.sh }}} ===== 下記の内容を追加する ===== . {{{ ———————————————————rem_center_db.shの編集の仕方——— 下記の部分をコピーして貼り付ける。 ここでいう13は子機番号なので、EPICSのチャンネル名と共に適宜変更すること。 elif [ $1 -eq 13 ] && [ $rtn -eq 0 ]; then caput K1:PEM-TEMPERATURE_FIELD_CRYDR2 $2 caput K1:PEM-HUMIDITY_FIELD_CRYDR2 $3 ———————————————————————————— }}} === ・EPICSに使用する.adlファイルの場所 === . {{{ /opt/rtcds/userapps/release/rem/common/medm/K1REM_PLOT.adl }}} ===== 下記のコマンドを実行してmedmを編集 ===== . {{{ medm & }}} メモ {{{ cd /opt/rtcds/userapps/release/rem/common/scripts/ }}} === ・設定の半自動化スクリプト === 「親機を追加した場合」から「子機を追加した場合」までをワンライナーで行えるようにした (daqdのリスタートのみ、自動化から除外している) ==== 使い方 ==== {{{ /kagra/rem/data/src/Admin_rem.sh Zend1F RACK_EZ0 1 }}} ==== 補足 ==== 1. 第一引数は$Location(監視ディレクトリ)に相当<<BR>> 上記例では /kagra/rem/data/Zend1F が監視ディレクトリに追加される<<BR>> 既に監視ディレクトリになっている場合何もしないので、子機設定(チャンネル名追加)のみ行いたい場合も上記コマンドOK 2. 第二引数は子機名(チャンネル名の末尾)<<BR>> 上記例では K1:PEM-TEMPERATURE_RACK_EZ0 と K1:PEM-HUMIDITY_RACK_EZ0 が追加される<<BR>> (既に登録されているチャンネル名を指定すると何もせずエラー終了) 3. 第三引数は子機番号<<BR>> 上記例では子機番号1<<BR>> (既に登録されている子機番号を指定すると何もせずにエラー終了) 4. 第一引数だけを与えると親機の設定までを行って終了する {{{ /kagra/rem/data/src/Admin_rem.sh Zend1F }}} 5. おそらくちゃんと動く == おんどとり設定メモ == https://goo.gl/photos/bHgQJfxKcKDVpzuD9 |
[[HowTos|設定方法]] |