DigitalSystemに戻る

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

How To

LIGO CDSの基本的な使い方

起動

電源の入れ方

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

再起動の方法,復旧

サーバーに接続した状態で

sudo reboot now

とする.now をつけないと数10秒待たされるので注意.
再起動後,

rtcds status

でモデルが動いているか確認する.(だいたい動いていないので)動いていないものを以下の方法でスタートする.

  1. IOPモデルをスタートする.
    rtcds start (IOPのモデル名)
    一般ユーザーでログインしていればパスワードを求められるので適宜入力する.
  2. CAMモデルをスタートする.
    rtcds start (CAMのモデル名)
    CAMは複数同時にスタートできる.
  3. local_dcをスタートする.
    sudo systemctl start rts-local_dc.service
    serviceはなくてもいい.
  4. 各モデルのGDS_TP.adlを確認する.インジケーターが全部緑になっていればOK.

サーバーに入る方法

サーバーのモニターを使う場合

ユーザー名:controls、パスワード:????で入る.

workstationを使う場合

ssh接続をする.適当なターミナルから

ssh controls@(サーバーのホスト名)

として,パスワードを入力する.

研究室から入る場合

自分のPCのターミナルから

ssh controls@(ルーターのIPアドレス) [-p (ポート番号)]

として,パスワードを入力する.ルーターのIPアドレスはここを参照. ポート番号は指定しなければworkstationに繋がる.

研究室外から入る場合

一番簡単なのはVPN接続をすること.その場合は研究室内と同じ方法でアクセスできる.
VPN接続をしない場合,一旦graniteサーバーを踏む必要がある.

ssh ユーザー名@(graniteのIPアドレス)

でgraniteへ入り,その後研究室内の場合と同じ方法でアクセスできる.

様々な動作チェックの方法

動いているモデルのチェック

サーバー上で

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が動いているかどうか

サーバー上で

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.

モデルが正常に動いているかのチェック

各モデルのGDS_TP.adlを確認する.インジケーターが全て緑色になっていればOK.

ネットワーク接続のテスト

サーバー上で

ping (workstationのホスト名)

またはworkstation上で

ping (サーバーのホスト名)

として反応があるか確かめる.

MEDM関連

フィルタのON/OFF,ゲインの変更,各種スイッチングなどはMEDM screenを用いて行うことができる。

MEDMの開き方

terminalで

/opt/rtcds/(site)/(ifo)/medm
medm  &

とするか,MEDMと書かれたデスクトップアイコンをダブルクリックする.

MEDM screenの見方

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

DTT関連

diaggui, foton, awgguiなどをまとめてDTT(diagnostics test tools)と呼ぶ.
詳しい使い方はここにも書いてある.

スペクトル,伝達関数などの測り方

diagguiを使う.terminalで

diaggui &

とするか、diagguiと書かれたデスクトップアイコンをダブルクリックする.
詳しい使い方はここを見るか,詳しい人に聞く.

時系列データの見方

ndscopeを使う.terminalで

ndscope &

とするか,ndscopeと書かれたデスクトップアイコンをダブルクリックする.
詳しい使い方は… いい文献があったら教えてください.

フィルタの編集方法

fotonを用いて行う。terminalで

foton &

とするか,fotonと書かれたデスクトップアイコンをダブルクリックする.
フィルタの編集から反映までの流れは下記の通り.

  1. fotonを開く.
  2. Module Selectionで/opt/rtcds/(site)/(ifo)/chans/を開き,編集したいmodel名のtxtファイルを開く(例えば,T1VISAVIT.txt).
  3. 編集したいmodule名を選択する(例えば,SERVO_X).各moduleには10個のフィルタを入れることができる.
  4. FileメニューのRead Onlyを外す.
  5. Selectionsで編集したいフィルタを選び,名前をつける.
  6. Designを用いてフィルタを作成する.作成したフィルタの形は「Bode Plot」ボタンをクリックすると,「Graphics」タブに表示される.
  7. 編集後Saveし,該当するModuleのMEDM screenを開く(例えば,T1VIS_SERVO_X.adl).
  8. 「LOAD COEFFICIENTS」ボタンをクリックすると,フィルタの変更が反映される.

Simulink関連

MATLABのSimulinkを用いて,モデルを編集することができる.

MATLABの開き方

terminalで

matlab &

とする.

モデルの編集

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

モデルの追加

モデルを追加する場合,やることが少し増える. t1new というモデルと追加する場合,

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

epicsの値の復元

通常ならモデルをリスタートするとfilterのゲインやon/off, matrixの値など,epicsの値がデフォルトに戻ってしまい再現されない.そのような場合に値を復帰するために,SDFというepicsの値を保存しておいてくれるシステムがある.
詳しい使い方はここを参照.

保存方法

  1. 各モデルのSDF_TABLE.adlを開く.
  2. 値を保存したいチャンネルの ACCEPT ボタンを押す
  3. 保存したいチャンネルを全て選択したら,右上の CONFIRM ボタンを押す.

復元方法

  1. 値を復元したいチャンネルの REVERT ボタンを押す
  2. 復元したいチャンネルを全て選択したら,右上の CONFIRM ボタンを押す.

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS