#author("2022-12-18T21:34:10+09:00","default:LabMember","LabMember")
#author("2023-05-22T04:33:51+09:00","default:LabMember","LabMember")
[[DigitalSystemに戻る>DigitalSystem]]

Note: 2022/05/10 system updated to LIGo CDS ver. 4.2

* How To [#ee7be9cf]
LIGO CDSの基本的な使い方

#contents


** 起動 [#o4c54398]
*** 電源の入れ方 [#zcadcef1]
+ 各種ケーブル類が適切に刺さっていることを確認する.
++ AA chassis: 電源(ヒロセの4ピン),ADCボード(80ピン),クロック(LEMO)
++ AI chassis: 電源(ヒロセの4ピン),DACボード(68ピン),クロック(LEMO)
++ サーバー: 電源,ADC/DACボード,キーボード,モニター,LANケーブル
+ AA/AI chassisへTEXIOの安定化電源から±15Vを供給する.
++ 電源が入ると中の回路のLEDが緑に光るので確認できる.
++ 全ての回路に電源を供給すると~1A程度消費するはず.それよりかなり大きいor小さい場合は故障が疑わしいので開けて確認する.
+ シンセサイザーからクロックの信号をAA/AI chassisに入れる.
++ 画面表示で0-5V,65536kHzの矩形波を入れる.オシロで見ると0-10Vの矩形波になっていればOK.~
&color(red){信号が大きすぎるとボードのクロック入力が壊れるので気をつけること.};(既に2回やらかしている)
+ サーバーの電源を入れる.表面右上あたりにボタンがある.

*** 再起動の方法,復旧 [#e68811f1]
サーバーに接続した状態で~
 sudo reboot now
とする.now をつけないと数10秒待たされるので注意. ~
再起動後,
 rtcds status
でモデルが動いているか確認する.(だいたい動いていないので)動いていないものを以下の方法でスタートする.
+ IOPモデルをスタートする.
 rtcds start (IOPのモデル名)
一般ユーザーでログインしていればパスワードを求められるので適宜入力する.
+ CAMモデルをスタートする.
 rtcds start (CAMのモデル名)
CAMは複数同時にスタートできる.
+ local_dcをスタートする.
 sudo systemctl start rts-local_dc.service
serviceはなくてもいい.
+ 各モデルのGDS_TP.adlを確認する.インジケーターが全部緑になっていればOK.

** サーバーに入る方法 [#f9dfa138]
*** サーバーのモニターを使う場合 [#l1e4e1e3]
ユーザー名:controls、パスワード:????で入る.
*** workstationを使う場合 [#c32fd178]
ssh接続をする.適当なターミナルから
 ssh controls@(サーバーのホスト名)
として,パスワードを入力する.
*** 研究室から入る場合 [#kfc019dd]
自分のPCのターミナルから
 ssh controls@(ルーターのIPアドレス) [-p (ポート番号)]
として,パスワードを入力する.ルーターのIPアドレスは[[ここ>InternalIPaddressList]]を参照.
ポート番号は指定しなければworkstationに繋がる.
*** 研究室外から入る場合 [#qd2f4916]
一番簡単なのはVPN接続をすること.その場合は研究室内と同じ方法でアクセスできる.~
VPN接続をしない場合,一旦graniteサーバーを踏む必要がある.
 ssh ユーザー名@(graniteのIPアドレス)
でgraniteへ入り,その後研究室内の場合と同じ方法でアクセスできる.

** 様々な動作チェックの方法 [#geeaa533]
*** 動いているモデルのチェック [#l8d672fb]
サーバー上で
 rtcds status
とする.例えば結果が以下のような場合…
 Build kernel-mode models by default
 Kernel Module Status\n

 mbuf                   20480  38 t1tst,t1visavit,t1pem,t1ioptoba
 gpstime                32768  5 t1tst,t1visavit,t1pem,t1ioptoba

 t1ioptoba            9392128  3 t1tst,t1visavit,t1pem
 t1pem                8880128  0
 t1tst                9093120  0
 t1visavit            9261056  0
 Kernel Module Status = ALL LOADED

 System Status
 system         epics          module         awgtpman
 ------------------------------------------------------
 t1ioptoba       ON             ON             ON
 t1pem           ON             ON             ON
 t1tst           ON             ON             ON
 t1visavit       ON             ON             ON
 Systems Status =       ALL ACTIVE


 Overall Status =       OK
モデルはt1ioptoba, t1pem, t1tst, t1visavitが動いていることがわかる.System Statusがどれか1つでもOFFであれば正常でないので以下の方法で確認する.

*** 各モデルでawg, tp, epicsが動いているかどうか [#mc68bc21]
サーバー上で
 rtcds status (モデル名)
とする.モデル名がt1vistobaの場合,結果が~
 Build kernel-mode models by default
 ● rts@t1visavit.target - Advanced LIGO RTS target: t1visavit
    Loaded: loaded (/lib/systemd/system/rts@.target; disabled; vendor preset: enabled)
   Drop-In: /run/systemd/generator.early/rts@t1visavit.target.d
            └─part_of_rts-user-models.target.conf
    Active: active since Sat 2022-11-26 17:47:38 JST; 3 weeks 1 days ago

 ● rts-awgtpman@t1visavit.service - Advanced LIGO RTS awgtpman: t1visavit
    Loaded: loaded (/lib/systemd/system/rts-awgtpman@.service; static; vendor preset: enabled)
   Drop-In: /run/systemd/generator.early/rts-awgtpman@t1visavit.service.d
            └─after_rts-module@t1visavit.service.conf
    Active: active (running) since Sat 2022-11-26 17:47:38 JST; 3 weeks 1 days ago
  Main PID: 21860 (awgtpman)
    CGroup: /system.slice/system-rts\x2dawgtpman.slice/rts-awgtpman@t1visavit.service
            └─21860 awgtpman -s t1visavit

 ● rts-epics@t1visavit.service - Advanced LIGO RTS EPICS IOC sequencer: t1visavit
    Loaded: loaded (/lib/systemd/system/rts-epics@.service; static; vendor preset: enabled)
   Drop-In: /run/systemd/generator.early/rts-epics@t1visavit.service.d
            └─after_rts-awgtpman@t1ioptoba.service.conf, after_rts-module@t1ioptoba.service.conf, require_rts-module@t1io
    Active: active (running) since Sat 2022-11-26 17:47:30 JST; 3 weeks 1 days ago
  Main PID: 21805 (t1visavitepics)
    CGroup: /system.slice/system-rts\x2depics.slice/rts-epics@t1visavit.service
            └─21805 ./t1visavitepics t1visavitepicsT1.cmd

 ● rts-module@t1visavit.service - Advanced LIGO RTS kernel module: t1visavit
    Loaded: loaded (/lib/systemd/system/rts-module@.service; static; vendor preset: enabled)
   Drop-In: /run/systemd/generator.early/rts-module@t1visavit.service.d
            └─after_rts-epics@t1visavit.service.conf, after_rts-module@t1ioptoba.service.conf, bindsto_rts-module@t1iopto
    Active: active (exited) since Sat 2022-11-26 17:47:38 JST; 3 weeks 1 days ago
   Process: 21806 ExecStart=/usr/bin/rts_module_ctrl start t1visavit (code=exited, status=0/SUCCESS)
  Main PID: 21806 (code=exited, status=0/SUCCESS)
となれば正常.左上の●が全て緑色になっていればOK.

*** モデルが正常に動いているかのチェック [#b5788ae9]
各モデルのGDS_TP.adlを確認する.インジケーターが全て緑色になっていればOK.

*** ネットワーク接続のテスト [#h77ba28a]
サーバー上で~
 ping (workstationのホスト名)
またはworkstation上で~
 ping (サーバーのホスト名)
として反応があるか確かめる.

** MEDM関連 [#ld88fd7b]
フィルタのON/OFF,ゲインの変更,各種スイッチングなどはMEDM screenを用いて行うことができる。
*** MEDMの開き方 [#kf32a094]
terminalで
 /opt/rtcds/(site)/(ifo)/medm
 medm  &
とするか,MEDMと書かれたデスクトップアイコンをダブルクリックする.

*** MEDM screenの見方 [#u147fa4f]
/opt/rtcds/(site)/(ifo)/medmの中の,各モデル名のフォルダの中に,自動生成されたMEDM screenがある.~
MEDMを起動して出てきた画面の"Mode"から"Execute"を選択すると,ゲインの調整やフィルターのON/OFFなどができるようになる.~
MEDM screenを編集したい場合,"Mode"から"Edit"を選択して編集したい画面を開く.
編集モードは癖があるので触って慣れる必要あり.

** DTT関連 [#o0371788]
diaggui, foton, awgguiなどをまとめてDTT(diagnostics test tools)と呼ぶ.~
詳しい使い方は[[ここ>http://gwwiki.icrr.u-tokyo.ac.jp/JGWwiki/KAGRA/Subgroups/DGS/Manual]]にも書いてある.

*** スペクトル,伝達関数などの測り方 [#v0580a1c]
diagguiを使う.terminalで
 diaggui &
とするか、diagguiと書かれたデスクトップアイコンをダブルクリックする.~
詳しい使い方は[[ここ>https://gwdoc.icrr.u-tokyo.ac.jp/cgi-bin/private/DocDB/ShowDocument?docid=5912]]を見るか,詳しい人に聞く.

*** 時系列データの見方 [#t12707c6]
ndscopeを使う.terminalで
 ndscope &
とするか,ndscopeと書かれたデスクトップアイコンをダブルクリックする.~
詳しい使い方は… いい文献があったら教えてください.

*** フィルタの編集方法 [#e6b6fa27]
fotonを用いて行う。terminalで
 foton &
とするか,fotonと書かれたデスクトップアイコンをダブルクリックする.~
フィルタの編集から反映までの流れは下記の通り.
+ fotonを開く.
+ Module Selectionで/opt/rtcds/(site)/(ifo)/chans/を開き,編集したいmodel名のtxtファイルを開く(例えば,T1VISAVIT.txt).
+ 編集したいmodule名を選択する(例えば,SERVO_X).各moduleには10個のフィルタを入れることができる.
+ FileメニューのRead Onlyを外す.~
+ Selectionsで編集したいフィルタを選び,名前をつける.~
+ Designを用いてフィルタを作成する.作成したフィルタの形は「Bode Plot」ボタンをクリックすると,「Graphics」タブに表示される.
+ 編集後Saveし,該当するModuleのMEDM screenを開く(例えば,T1VIS_SERVO_X.adl).
+ 「LOAD COEFFICIENTS」ボタンをクリックすると,フィルタの変更が反映される.

** Simulink関連 [#ud9b6101]
MATLABのSimulinkを用いて,モデルを編集することができる.

*** MATLABの開き方 [#r22809d9]
terminalで
 matlab &
とする.

*** モデルの編集 [#fd4edb5d]
+ MATLABを開き,編集したいモデルを開く.例えば,t1tst.mdlなら,/opt/rtcds/usercode/models にある.
+ Simulinkを用いて配線を行う.フィルタモジュールなど,使えるパーツはCDS_PARTS.mdlの中に入っているので,コピー・ペーストして作っていく.
++ CDS_PARTS.mdl はMATLABのコンソール上で
 CDS_PARTS
と打てば出てくる.
+ 編集後Saveする.
+ サーバー上で
 rtcds build t1tst
 rtcds install t1tst
 rtcds restart t1tst
とすると,編集した後の新しいt1tstが走り出すようになる.MEDM screenなどもこの操作で自動生成される.~
+ モデルを編集した後はDAQのチャンネルを再設定する.サーバー上で
 sudo systemctl rts-daqd.service restart
とする.

*** モデルの追加 [#p931a74d]
モデルを追加する場合,やることが少し増える.
t1new というモデルと追加する場合,
+ サーバーに入り /etc/advligorts に移動する.
+ env というファイルの USER_MODELSに追加するモデルの名前を追加する.
 USER_MODELS="(元々書いてあるモデル名) T1NEW"
 USER_MODELS="(元々書いてあるモデル名) t1new"
+ systemd_env というファイルの USER_MODELS, local_dc_args に追加するモデルの名前を追加する.
 USER_MODELS="(元々書いてあるモデル名) T1NEW"
 local_dc_args='(色々書いてある) "(元々書いてあるモデル名) T1NEW"(色々書いてある)'
 USER_MODELS="(元々書いてあるモデル名) t1new"
 local_dc_args='(色々書いてある) "(元々書いてあるモデル名) t1new"(色々書いてある)'
+ masterというファイルに以下を追記する.
 /opt/rtcds/tyo/t1/chans/daq/T1NEW.ini
 /opt/rtcds/tyo/t1/target/gds/param/tpchn_t1new.par
tyo, t1は適宜置き換える.
+ あとはモデルを編集するときと同じようにする.ただしモデルを走らせるときは restart ではなく startにする.
 rtcds start t1new

**epicsの値の復元 [#fb88d928]
通常ならモデルをリスタートするとfilterのゲインやon/off, matrixの値など,epicsの値がデフォルトに戻ってしまい再現されない.そのような場合に値を復帰するために,SDFというepicsの値を保存しておいてくれるシステムがある.~
詳しい使い方は[[ここ>https://gwdoc.icrr.u-tokyo.ac.jp/cgi-bin/private/DocDB/ShowDocument?docid=9228]]を参照.

*** 保存方法 [#da17e42a]
+ 各モデルのSDF_TABLE.adlを開く.
+ 値を保存したいチャンネルの ACCEPT ボタンを押す
+ 保存したいチャンネルを全て選択したら,右上の CONFIRM ボタンを押す.

*** 復元方法 [#ed67cc31]
+ 値を復元したいチャンネルの REVERT ボタンを押す
+ 復元したいチャンネルを全て選択したら,右上の CONFIRM ボタンを押す.

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS