2562
Comment:
|
10276
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
== REM スクリプトの起動・設定方法 == === ・REMスクリプトを起動する前に下記の確認が必要 === |
= Rack Environmental Monitor = <<TableOfContents(2)>> == 親機リスト 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)-- 192.168.10.2 (local)<<BR>>10.68.10.209 ||X end station, on a AED rack ||1F EXC, 2F EXC, Racks || ||Y end ||52A0107C ||192.168.10.5 (local) ||Top of EY1 rack || 1F EYC, 2F EYC, Racks || ||Mozumi Station ||52A002A0 ||10.68.11.10 ||Control Room ||SVR || ||Yend 2F ||52A01115 ||192.168.11.16 (local)<<BR>>10.68.10.230 ||Y end 2F area (EYV) || || ||X500m (PX) ||52A01117 ||10.68.140.2 ||GIF Area || || == 中継器リスト 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 || == 子機リスト Data logger list == === Center Racks === ||Name ||Serial # ||Location || koki # || ||mc rack ||52C61128 ||MC Rack ||1 || ||ioo ||52C610D7 ||IOO Rack ||6 || ||pr2 ||52C61227 ||PR2 Rack ||7 || ||prm ||52C61226 ||PRM Rack ||8 || ||ixa ||52C61506 ||Around IXA duct ||10 || ||iya ||52C61505 ||Around IYA duct ||11 || === Center Fields === ||Name ||Serial # ||Location || koki # || ||out dr ||52C61234 ||Outside of the mine digital room || 2 || ||dr ||52C61234 ||Inside of the mine digital room ||3 || ||center ||52C61128 ||On the wall close to the BS booth ||4 || ||imc ||52C610DB ||On the big white shelf close to the IMC and PSL ||5 || ||crydr ||52C6122A ||低温機械室 tent1 ||12 || ||crydr2 ||52C6122E ||低温機械室 tent2 ||13 || ||psl ||52C61518 ||Entrance of the PSL enclosure ||9 || ||psl2 || 52C61A2C ||In front of PSL's airconditioner || 19 || === Center Booth === ||Name ||Serial # ||Location || koki # || ||pr booth ||52C6199F || PR booth || 15 || ||mcf booth || 52C619A0|| mcf booth || 16 || ||bs booth || 52C61A27|| bs booth || 17 || ||pslbooth ||52C61A29 ||PSL clean area || 18 || === 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 || Koki # || || ey1 || 52C614D8 || EY0 rack || 1 || || eyc1f || 52C614DC || Yend clean booth 1F|| 2 || || eyc2f || 52C61A1E || Yend clean booth 2F|| 3 || || eya || 52C61A01 || iKAGRA EYA booth || 4 || === 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 === ||Name ||Serial # ||Location || koki # || ||fanhut ||52C61A04 ||ファン小屋 || 14 || == 在庫リスト == ||Name ||Number of stock || ||親機 ||1 || ||中継機 ||5 || ||中継機電源 ||10 || ||バッテリ付き子機 ||27 || ||probeのみ ||7 || ||バッテリ ||21 || === Y end === ||Name ||Serial # ||Location || Koki # || || old exc || 52C614Da || Back in Storage || N/A || == REM (Rack Environmental Monitor) スクリプトの起動・設定方法 == === ・REMプログラムを起動する前に下記の確認が必要 === |
Line 6: | Line 104: |
===== 起動していなければ下記の手順で起動する ====== {{{ cd /opt/rtcds/kamioka/k1/target/k1rack/ }}} {{{ ./bin/linux-86_64/k1rack ./iocBoot/iok1rack/st.cmd }}} |
確認方法 . {{{ ps -ef | grep ./st.cmd }}} ===== 起動していなければ下記の手順で起動する ===== EPICS ioc を走らせるマシンへログイン . {{{ ssh k1script }}} ioc をスタートさせる . {{{ sudo supervisorctl start rem_ioc }}} |
Line 14: | Line 125: |
. {{{ 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/ }}} |
|
Line 15: | Line 227: |
ftp 172.16.34.56 }}} {{{ dgs }}} {{{ kagradgs }}} {{{ cd tmp }}} {{{ ls }}} === ・REMスクリプトの起動方法 === {{{ cd /tmp/ }}} {{{ bash rem.sh }}} === ・REMスクリプトの大まかな流れ === {{{ FTPサーバに接続する FTPサーバの/tmp/に存在するすべてのXMLファイルをLocalサーバに転送する FTPサーバの/tmp/に存在するすべてのXMLファイルを削除する Localサーバの/tmp/に存在するすべてのXMLファイルをFTPサーバの/archive/に転送する //バックアップのため、FTPサーバの/archive/にXMLファイルを保存する FTPサーバの接続を切る Localサーバの/tmp/に存在するXMLファイルを読み込む(XMLに記載されている各子機の温度、湿度を抽出) 抽出した値をTextファイルに書き込む Textファイルを読み込み、EPICSに値を登録する Localサーバの/tmp/に存在するXMLファイルを削除する 上記の動作を1分間隔で繰り返す }}} === 子機を追加した場合 === ==== 1.EPICSにチャンネルを追加する ==== {{{ cd /opt/rtcds/kamioka/k1/target/k1rack/db/ }}} {{{ vim(or emacs) example_rack.db }}} |
vim(or emacs) example_rack.db }}} |
Line 54: | Line 231: |
{{{ | . {{{ |
Line 56: | Line 233: |
grecode(ai,”K1:RACK-子機名_T”) | grecode(ai,”K1:PEM-TEMPERATURE_FIELD_子機名”) |
Line 60: | Line 237: |
grecode(ai,”K1:RACK-子機名_H”) | grecode(ai,”K1:PEM-HUMIDITY_FIELD_子機名”) |
Line 64: | Line 241: |
———————————————————————————— }}} ==== 2.スクリプトファイルを編集する ==== |
———————————————————————————— }}} ==== 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/ }}} |
Line 68: | Line 271: |
cd /tmp/ }}} {{{ vim(or emacs) rem.sh }}} |
vim(or emacs) rem_center_db.sh }}} |
Line 73: | Line 275: |
{{{ ———————————————————rem.sh——— 省略 caput K1:RACK-MC_H ${arr[3]} ###連番になるように追加### caput K1:RACK-子機名_T ${arr[4]} caput K1:RACK-子機名_H ${arr[5]} 省略 ———————————————————————————— }}} |
. {{{ ———————————————————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 |
Rack Environmental Monitor
Contents
親機リスト 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 192.168.10.2 (local) |
X end station, on a AED rack |
1F EXC, 2F EXC, Racks |
Y end |
52A0107C |
192.168.10.5 (local) |
Top of EY1 rack |
1F EYC, 2F EYC, Racks |
Mozumi Station |
52A002A0 |
10.68.11.10 |
Control Room |
SVR |
Yend 2F |
52A01115 |
192.168.11.16 (local) |
Y end 2F area (EYV) |
|
X500m (PX) |
52A01117 |
10.68.140.2 |
GIF Area |
|
中継器リスト 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 |
子機リスト Data logger list
Center Racks
Name |
Serial # |
Location |
koki # |
mc rack |
52C61128 |
MC Rack |
1 |
ioo |
52C610D7 |
IOO Rack |
6 |
pr2 |
52C61227 |
PR2 Rack |
7 |
prm |
52C61226 |
PRM Rack |
8 |
ixa |
52C61506 |
Around IXA duct |
10 |
iya |
52C61505 |
Around IYA duct |
11 |
Center Fields
Name |
Serial # |
Location |
koki # |
out dr |
52C61234 |
Outside of the mine digital room |
2 |
dr |
52C61234 |
Inside of the mine digital room |
3 |
center |
52C61128 |
On the wall close to the BS booth |
4 |
imc |
52C610DB |
On the big white shelf close to the IMC and PSL |
5 |
crydr |
52C6122A |
低温機械室 tent1 |
12 |
crydr2 |
52C6122E |
低温機械室 tent2 |
13 |
psl |
52C61518 |
Entrance of the PSL enclosure |
9 |
psl2 |
52C61A2C |
In front of PSL's airconditioner |
19 |
Center Booth
Name |
Serial # |
Location |
koki # |
pr booth |
52C6199F |
PR booth |
15 |
mcf booth |
52C619A0 |
mcf booth |
16 |
bs booth |
52C61A27 |
bs booth |
17 |
pslbooth |
52C61A29 |
PSL clean area |
18 |
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 |
Koki # |
ey1 |
52C614D8 |
EY0 rack |
1 |
eyc1f |
52C614DC |
Yend clean booth 1F |
2 |
eyc2f |
52C61A1E |
Yend clean booth 2F |
3 |
eya |
52C61A01 |
iKAGRA EYA booth |
4 |
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
Name |
Serial # |
Location |
koki # |
fanhut |
52C61A04 |
ファン小屋 |
14 |
在庫リスト
Name |
Number of stock |
親機 |
1 |
中継機 |
5 |
中継機電源 |
10 |
バッテリ付き子機 |
27 |
probeのみ |
7 |
バッテリ |
21 |
Y end
Name |
Serial # |
Location |
Koki # |
old exc |
52C614Da |
Back in Storage |
N/A |
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(監視ディレクトリ)に相当
上記例では /kagra/rem/data/Zend1F が監視ディレクトリに追加される
既に監視ディレクトリになっている場合何もしないので、子機設定(チャンネル名追加)のみ行いたい場合も上記コマンドOK
2. 第二引数は子機名(チャンネル名の末尾)
上記例では K1:PEM-TEMPERATURE_RACK_EZ0 と K1:PEM-HUMIDITY_RACK_EZ0 が追加される
(既に登録されているチャンネル名を指定すると何もせずエラー終了)
3. 第三引数は子機番号
上記例では子機番号1
(既に登録されている子機番号を指定すると何もせずにエラー終了)
4. 第一引数だけを与えると親機の設定までを行って終了する
/kagra/rem/data/src/Admin_rem.sh Zend1F
5. おそらくちゃんと動く