Size: 5336
Comment:
|
Size: 3904
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
<<TableOfContents(3)>> |
|
Line 3: | Line 6: |
==== 1.REMのEPICSを起動していること ==== | ==== 1.REMのEPICSチャンネルが登録されていること ==== |
Line 7: | Line 10: |
ps -ef | grep ./st.cmd | caget K1:PEM-TEMPERATURE-{ROCATION} |
Line 10: | Line 13: |
===== 起動していなければ下記の手順で起動する ===== EPICS ioc を走らせるマシンへログイン . {{{ ssh k1script }}} ioc をスタートさせる . {{{ sudo supervisorctl start rem_ioc }}} |
登録されていなかれば下記手順にそってk1sdfmanageを編集する |
Line 51: | Line 43: |
3.$(location)_db.shに値を渡して実行することで各チャンネル名にcaputしている。 | 3.$(location)_rb.shに値を渡して実行することで各チャンネル名にcaputしている。 |
Line 56: | Line 48: |
==== 1.温度計プログラムを修正してビルドする ==== . {{{ cd /kagra/rem/data/src/ }}} . {{{ cp rem_Yend1f.c rem_$(Location).c }}} . {{{ vim rem_$(Location).c }}} |
|
Line 67: | Line 49: |
==== 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.親機からデータを受け取るためのディレクトリを作成する ==== |
==== 1.親機からデータを受け取るためのディレクトリを作成する ==== |
Line 97: | Line 57: |
==== 5.supervisorの設定をする ==== | ==== 2.supervisorの設定をする ==== |
Line 110: | Line 70: |
command=/kagra/rem/data/bin/rem_$(Location) | command=/kagra/rem/data/bin/rem_Template /kagra/rem/data/$(Location)/ /kagra/rem/archive/$(Location)/ /kagra/rem/data/bin/rem_$(Location)_rb.sh |
Line 117: | Line 77: |
==== 6.supervisorを再起動する ==== . {{{ sudo supervisorctl reload }}} |
==== 3.supervisorを再起動する ==== . {{{ sudo supervisorctl reload }}} |
Line 122: | Line 84: |
==== 1.EPICSにチャンネルを追加する ==== . {{{ cd /opt/rtcds/kamioka/k1/target/k1rack/db/ }}} |
==== 1.k1sdfmanageにチャンネルを追加する ==== PEMブロックに追加する TEMPERATUREをはじめ5個のブロックがあるので全てに追加すること ===== コンパイル ===== |
Line 127: | Line 90: |
vim(or emacs) example_rack.db | make k1sdfmanage |
Line 130: | Line 93: |
===== 下記の内容を追加する ===== . {{{ ——————————example_rack.db——— grecode(ai,”K1:PEM-TEMPERATURE_FIELD_子機名”) { 省略 } grecode(ai,”K1:PEM-HUMIDITY_FIELD_子機名”) { 省略 } ———————————————————————————— |
===== インストールとDAQリスタート ===== k1dc0のdaqdのリスタートは /!\ データを使っている人がいないか確認してから /!\ {{{ make install-k1sdfmanage |
Line 144: | Line 101: |
ioc をスタートさせる . {{{ sudo supervisorctl restart rem_ioc }}} ==== 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 ###) }}} |
gurdianからDAQリスタート |
Line 178: | Line 108: |
vim(or emacs) rem_center_db.sh | vim(or emacs) rem_$(Location)_rb.sh |
Line 183: | Line 113: |
———————————————————rem_center_db(and? or? rb).shの編集の仕方——— | ———————————————————rem_$(Location)_rb.shの編集の仕方——— |
Line 185: | Line 115: |
ここでいう13は子機番号なので、EPICSのチャンネル名と共に適宜変更すること。 elif [ $1 -eq 13 ] && [ $rtn -eq 0 ]; then caput K1:PEM-TEMPERATURE_FIELD_CRYDR2 $2 caput K1:PEM-HUMIDITY_FIELD_CRYDR2 $3 |
子機番号と$(name)は適宜変更すること。 if [ $1 -eq 子機番号 ] && [ $rtn -eq 0 ]; then caput K1:PEM-TEMPERATURE_$(name) $2 caput K1:PEM-HUMIDITY_$(name) $3 caput K1:PEM-RSSI_$(name) $4 caput K1:PEM-BATT_$(name) $5 elif [ $1 -eq 1 ] && [ $rtn -eq 1 ]; then caput K1:PEM-RSSI_$(name) $4 caput K1:PEM-STATUS_$(name) 1 |
Line 192: | Line 128: |
script をスタートさせる . {{{ sudo supervisorctl restart rem_$(location) }}} ファイル _rb.sh とか _db.sh とかあるけど、 restart rem_center のみで OK |
REM (Rack Environmental Monitor) スクリプトの起動・設定方法
Contents
・REMプログラムを起動する前に下記の確認が必要
1.REMのEPICSチャンネルが登録されていること
確認方法
caget K1:PEM-TEMPERATURE-{ROCATION}
登録されていなかれば下記手順にそってk1sdfmanageを編集する
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)_rb.shに値を渡して実行することで各チャンネル名にcaputしている。 4.上記の動作を1分間隔で繰り返す
・親機を追加した場合
1.親機からデータを受け取るためのディレクトリを作成する
mkdir /kagra/rem/data/$(Location)/
chmod 777 /kagra/rem/dara/$(Location)/
2.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_Template /kagra/rem/data/$(Location)/ /kagra/rem/archive/$(Location)/ /kagra/rem/data/bin/rem_$(Location)_rb.sh autorestart=true autostart=true redirect_stderr=true stdout_logfile=/kagra/rem/log/rem_$(Location).log
3.supervisorを再起動する
sudo supervisorctl reload
・子機を追加した場合
1.k1sdfmanageにチャンネルを追加する
PEMブロックに追加する TEMPERATUREをはじめ5個のブロックがあるので全てに追加すること
コンパイル
make k1sdfmanage
インストールとDAQリスタート
k1dc0のdaqdのリスタートは データを使っている人がいないか確認してから
make install-k1sdfmanage
gurdianからDAQリスタート
3.スクリプトファイルを編集する
cd /kagra/rem/data/bin/
vim(or emacs) rem_$(Location)_rb.sh
下記の内容を追加する
———————————————————rem_$(Location)_rb.shの編集の仕方——— 下記の部分をコピーして貼り付ける。 子機番号と$(name)は適宜変更すること。 if [ $1 -eq 子機番号 ] && [ $rtn -eq 0 ]; then caput K1:PEM-TEMPERATURE_$(name) $2 caput K1:PEM-HUMIDITY_$(name) $3 caput K1:PEM-RSSI_$(name) $4 caput K1:PEM-BATT_$(name) $5 elif [ $1 -eq 1 ] && [ $rtn -eq 1 ]; then caput K1:PEM-RSSI_$(name) $4 caput K1:PEM-STATUS_$(name) 1 ————————————————————————————
・EPICSに使用する.adlファイルの場所
/opt/rtcds/userapps/release/rem/common/medm/K1REM_PLOT.adl
下記のコマンドを実行してmedmを編集
medm & }} メモ {{{ cd /opt/rtcds/userapps/release/rem/common/scripts/