Differences between revisions 24 and 120 (spanning 96 versions)
Revision 24 as of 2016-10-06 18:33:58
Size: 4226
Comment:
Revision 120 as of 2018-01-18 15:42:12
Size: 10555
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
<<TableOfContents(2)>>
Line 4: Line 5:

|| Name || Serial # || IP address || Location ||
|| Center || 52A0101E || 10.68.140.1 || Center digital room ||
|| X end || 52A0112B || 192.168.10.4 || X end station, on a AED rack ||
||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)<<BR>>10.68.10.229 ||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 ||
Line 11: Line 23:

=== Center area ===
=== 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 ||
||PR2booth ||52C61A20 || || 20||
||PR3booth ||52C61A18 || || 21 ||
||SR2booth ||52C61A1F || || 22 ||
||IXAbooth ||52C61A21 || || 23 ||
||IYAbooth ||52C614C9 || || 24 ||


Line 15: Line 60:
|| Name || Serial # || Location ||
|| EX1 || || Xend, DGS rack ||
|| EXC1F || || X end, EXC clean booth 1F ||
|| EXC2F || || X end, EXC clean booth 2F ||

||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 ||
||バッテリ付き子機 ||22 ||
||probeのみ ||7 ||
||バッテリ || 40ぐらい ||

=== Y end ===
||Name ||Serial # ||Location || Koki # ||
|| old exc || 52C614Da || Back in Storage || N/A ||
Line 23: Line 109:
=== ・REMスクリを起動する前に下記の確認が必要 === === ・REMプログラムを起動する前に下記の確認が必要 ===
Line 26: Line 112:
Line 29: Line 116:
Line 36: Line 124:
ioc をスタートさせるスクリプトのあるディレクトリへ移動

 . {{{
 cd /opt/rtcds/kamioka/k1/target/k1rack/iocBoot/iock1rack
}}}
Line 45: Line 127:
./st.cmd  sudo supervisorctl start rem_ioc
Line 51: Line 133:
 ftp 172.16.34.56 ###ユーザーIDとパスワードは問い合わせてください###
}}}

 . {{{
 cd /tmp/ #温度計の親機で設定したディレクトリを指定
 ftp 10.68.10.10
}}}

 . {{{
 cd /kagra/rem/data/$(location)
Line 63: Line 145:
=== ・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 108: Line 251:
==== 2.スクリプトファイルを編集する ====
 . {{{
cd /opt/rtcds/userapps/release/rem/common/script/
==== 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 113: Line 278:
vim(or emacs) rem.sh vim(or emacs) rem_center_db.sh
Line 118: Line 283:
———————————————————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 139: Line 305:
 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. おそらくちゃんと動く


== おんどとり設定メモ ==
https://goo.gl/photos/bHgQJfxKcKDVpzuD9

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 192.168.10.2 (local)
10.68.10.209

X end station, on a AED rack

1F EXC, 2F EXC, Racks

Y end

52A0107C

192.168.10.5 (local)
10.68.10.229

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

PR2booth

52C61A20

20

PR3booth

52C61A18

21

SR2booth

52C61A1F

22

IXAbooth

52C61A21

23

IYAbooth

52C614C9

24

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

バッテリ付き子機

22

probeのみ

7

バッテリ

40ぐらい

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. おそらくちゃんと動く

おんどとり設定メモ

https://goo.gl/photos/bHgQJfxKcKDVpzuD9

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