Differences between revisions 60 and 92 (spanning 32 versions)
Revision 60 as of 2016-10-27 14:07:20
Size: 6781
Comment:
Revision 92 as of 2017-05-18 10:38:52
Size: 9645
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
Line 5: Line 4:
Line 7: Line 5:

||
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 (TBC) || X end station, on a AED rack || 1F EXC, 2F EXC ||
|| Y end || || || || ||
|| Mozumi Station ||52A002A0   || 10.68.11.10 || Control Room || SVR ||
||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 || ||
Line 15: Line 14:
|| 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 ||
||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 ||
Line 23: Line 23:
Line 25: Line 24:

||
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 ||
||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 ||
Line 36: Line 35:

||
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   ||

||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 ||
||mcf booth ||?, center || 52C619A0|| mcf booth ||
||bs booth ||?, center || 52C61A27|| mcf booth ||

koki num 15, 16, 17
Line 47: Line 51:
||  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. ||
|| exa || || Old EXA. Not used or not registered to the base station ||
||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)||
Line 56: Line 64:
|| Name || Serial # || Location ||
|| No name yet || 52C61A1E || Yamamoto san installed ||
|| ey1 || || ||
|| eyc || || ||
||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 ||
Line 63: Line 77:
||  Name    ||  Serial #  || Location ||
||  SVR    ||  52C61229  || Mozumi server room rear ||
||Name ||Serial # ||Location ||
||SVR ||52C61229 ||Mozumi server room rear ||

=== Outside ===
||fanhut || ||ファン小屋 ||
Line 68: Line 84:
||  Name    || Number of stock||
||親機   || 3 ||
||中継機 || 5 ||
||中継機電源 || 10 ||
||バッテリ付き子機  || 40 ||
||probeのみ|| 7||
||バッテリ ||26 ||
||Name ||Number of stock ||
||親機 ||1 ||
||中継機 ||5 ||
||中継機電源 ||10 ||
||バッテリ付き子機 ||29 ||
||probeのみ ||7 ||
||バッテリ ||22 ||
Line 77: Line 94:
=== ・REMスクリを起動する前に下記の確認が必要 === === ・REMプログラムを起動する前に下記の確認が必要 ===
Line 80: Line 97:
Line 83: Line 101:
Line 90: Line 109:
ioc をスタートさせるスクリプトのあるディレクトリへ移動

 . {{{
 cd /opt/rtcds/kamioka/k1/target/k1rack/iocBoot/iock1rack
}}}
Line 99: Line 112:
./st.cmd  sudo supervisorctl start rem_ioc
Line 109: Line 122:
 cd /kagra/ren/data/$(location)  cd /kagra/rem/data/$(location)
Line 117: Line 130:
=== ・REMスクリプトの起動方法 ===
 . {{{
cd /opt/rtcds/userapps/release/rem/common/script/
}}}
 . {{{
bash rem.sh
}}}

=== ・REMスクリプトの大まかな流れ ===
 . {{{
FTPサーバに接続する
FTPサーバの/tmp/に存在するすべてのXMLファイルをLocalサーバの/tmp/に転送する
FTPサーバの/tmp/に存在するすべてのXMLファイルを削除する
Localサーバの/tmp/に存在するすべてのXMLファイルを/opt/rtcds/userapps/release/rem/common/script/xml/に移動する
        //バックアップのため、Localサーバの/xml/にXMLファイルを保存する
FTPサーバの接続を切る
Localサーバの/tmp/に存在するXMLファイルを読み込む(XMLに記載されている各子機の温度、湿度を抽出)
抽出した値をTextファイルに書き込む
Textファイルを読み込み、EPICSに値を登録する
上記の動作を1分間隔で繰り返す
}}}
=== ・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 }}}
Line 168: Line 242:
Line 169: Line 244:
 {{{
 .
{{{
Line 175: Line 251:
 {{{
 .
{{{
Line 183: Line 260:
cd /opt/rtcds/userapps/release/rem/common/script/ cd /kagra/rem/data/bin/
Line 186: Line 263:
vim(or emacs) rem.sh vim(or emacs) rem_center_db.sh
Line 191: Line 268:
———————————————————rem.shの編集の仕方———
まず,転送されてきたxmlファイルが存在するディレクトリに移動し,下記のコマンドを実行する
less RTR-500AW_52A0107C_**********.xml
その後,/numを入力.<num>0</num>のように,ハイライトされる場所がいくつかあるので見る
最初の0はグループ番号,次の1は子機の番号,次の1は子機の温度,次の2は子機の湿度なので,それをみてスクリプトを編集する
———————————————————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
Line 212: Line 290:
 cd /opt/rtcds/userapps/release/rem/common/script/
}}}
 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. おそらくちゃんと動く

Rack Environmental Monitor

親機リスト 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

中継器リスト 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

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

mcf booth

?, center

52C619A0

mcf booth

bs booth

?, center

52C61A27

mcf booth

koki num 15, 16, 17

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

バッテリ付き子機

29

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(監視ディレクトリ)に相当
上記例では /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. おそらくちゃんと動く

おんどとり設定メモ

https://goo.gl/photos/bHgQJfxKcKDVpzuD9

KAGRA/Subgroups/DGS/Projects/Rem (last edited 2023-02-17 19:13:21 by KeikoKokeyama)