Note: 2013/09/10 system updated
Realtime digital systemの基本的な使い方。
1. ケーブル類を正しく繋ぐ。
2. 0-5V、65536Hzの矩形波(timing signal)をADC/DACカードに入れる。
3. 拡張シャーシの電源を2つONにする(この時点では電源は入らない)。
4. 計算機の電源を入れる。
standalone上で
sudo reboot
とする。一番よく使うコマンドかもしれない。
ユーザー名:controls、パスワード:????で入る。
desktop1でterminalを開き、
ssh -Y controls@standalone
として、パスワードを入力する。
自分のパソコンのterminalを開き、
ssh -Y ユーザー名@granite.phys.s.u-tokyo.ac.jp
として、自分のパスワードを入力する。するとgraniteに入れるので、そこから
ssh -Y controls@AirStationのIPアドレス
として、パスワードを入力する。AirStationのIPアドレスはここを参照。すると、desktop1に入れるので、そこから
ssh -Y controls@standalone
として、パスワードを入力する。
自分のパソコンのOSがLinux、またはX11の入ったMacならMEDM screenやMATLABも開けるので便利。Windowsでやりたい場合はVMWare Playerなどを使うといい。terminal上の操作だけできれば十分なら、Tera Termなどでもいい。
ちなみに,研究室内から繋ぐ場合やsosにVPN接続している場合は一度graniteに入る必要はなく,直接AirStationにsshで入れる.
standalone上で
sudo lspci
とする。このような結果にならなければ、何かがおかしい。
新しいPC上での結果
#ref(): File not found: "lspci.txt" at page "DigitalSystemHowTo_Old"
standalone上で
diag -i
とする。結果が
Diagnostics configuration: awg 22 0 192.168.11.100 822095894 1 192.168.11.100 awg 89 0 192.168.11.100 822095961 1 192.168.11.100 nds * * 192.168.11.100 8088 * 192.168.11.100 tp 22 0 192.168.11.100 822091798 1 192.168.11.100 tp 89 0 192.168.11.100 822091865 1 192.168.11.100
となれば正常。awgやtpが出てこない場合は、拡張シャーシの認識がおかしいかもしれない。ndsが出てこない場合はネットワークがおかしいかもしれない。
standalone上で
ping desktop1
またはdesktop1上で
ping standalone
として反応があるか確かめる
standalone上で
lsmod
とする。例えば、結果が
Module Size Used by x1x16fe 4495987 0 x1x14fe 4989783 1 x1x16fe mbuf 7672 9 x1x16fe,x1x14fe
となったら、x1x16とx1x14のfrontendが走っていることがわかる。また、x1x14がx1x16によって使われているので、x1x14がmaster、x1x16がslaveとなっていることも確認できる。
フィルタのON/OFF、ゲインの変更、各種スイッチングなどはMEDM screenを用いて行うことができる。
terminalで
// cd /opt/rtcds/tst/x1/medm/ cd /opt/rtcds/kamioka/k1/medm/ medm -x &
とするか、desktop1のMEDMと書かれたデスクトップアイコンをダブルクリックする。
/opt/rtcds/kamioka/k1/medmの中の、各realtime model名フォルダの中に、自動生成されたMEDM screenがある。例えば、X1X16_GDS_TP.adlではCPUがちゃんと動いているか、timing signalは来ているかなどを確認することができる。また、K1VEX_ADC_FILTER_01.adlなどでフィルタのON/OFF、ゲインの変更ができる。
terminalで
medm &
としてMEDMを起動すれば、MEDM screenの編集もすることができる。触ってみて覚えるしかない。
dataviewer、Fourier Tools、fotonなどをまとめてDTT(diagnostics test tools)と呼ぶ。
詳しい使い方はここにも書いてある。
terminalで
dtt &
とするか、desktop1のDTTと書かれたデスクトップアイコンをダブルクリックする。するとDTTのメインメニューが開かれるので、使いたい機能を選べばよい。
dataviewerを用いて行う。
Signalタブで見たい信号を選び、Realtimeタブで表示したい信号を選んでStartボタンをクリックすれば、オシロスコープとして使える。
過去のデータまでさかのぼりたい時はPlaybackタブのなかのメニューで行えばよい。
terminalから直接dataviewerを開きたい場合は
dv &
とする。
Fourier Toolsを用いて行う。
InputタブでData Source SelectionをOnline Systemにし、Measurementタブでスペクトルを測りたい信号を選んで、Startボタンをクリックすれば、Resultタブに結果が表示される。
伝達関数を測りたい場合はMeasurementタブでSwept Sine Responseを選択し、Excitationタブでexcitationを注入する場所を設定すればよい。
伝達関数がうまく測定できない場合はMeasurment Timeを0.7 sec以上にしてみるとうまくいくかもしれない。
terminalから直接Fourier Toolsを開きたい場合は
diaggui &
とする。
fotonを用いて行う。
フィルタの編集から反映までの流れは下記の通り。
1. fotonを開く。
2. Module Selectionで/opt/rtcds/kamioka/k1/chans/を開き、編集したいmodel名のtxtファイルを開く(例えば、X1X16.txt)。編集したいModule名を選択する(例えば、ADC_FILTER_01)。各Moduleには10個のフィルタを入れることができる。
3. FileメニューのRead Onlyを外す。
4. Selectionsで編集したいフィルタを選び、名前をつける。
5. Designを用いてフィルタを作成する。作成したフィルタの形は「Bode Plot」ボタンをクリックすると、「Graphics」タブに表示される。
6. 編集後Saveし、該当するModuleのMEDM screenを開く(例えば、K1VEX_ADC_FILTER_01.adl)。
7. 「LOAD COEFFICIENTS」ボタンをクリックすると、フィルタの変更が反映される。
terminalから直接fotonを開きたい場合は
foton &
とする。
MATLABのSimulinkを用いて、realtime modelを編集することができる。
terminalで
//cd /opt/rtcds/tst/x1/core/advLigoRTS/trunk/src/epics/simLink/ rtr cd src/epics/simLink matlab &
とするか、desktop1上のMATLABと書かれたデスクトップアイコンをダブルクリックする。
1. MATLABを開き、編集したいモデルを開く(例えば、k1vex.mdl)(/opt/rtcds/rtscore/tags/advLigoRTS-2.6.3/src/epics/simLink)。
2. Simulinkを用いて配線を行う。フィルタモジュールなど、使えるパーツはCDS_PARTS.mdlの中に入っているので、コピー・ペーストして作っていく。
3. 編集後Saveする。
4. standalone上で
rtr make k1vex make install-k1vex killk1vex startk1vex
とすると、編集した後の新しいk1vexが走り出すようになる。MEDM screenなどもこの操作で自動生成される。
新しいモデルを作った後はDAQがリセットされているので必ず再設定すること。
通常ならstandaloneをrebootするとfilterのゲインやon/off, matrixの値など、epicsの値がデフォルトに戻ってしまい再現されない。しかし、新しいRT systemにはburtというepicsの値を保存しておいてくれるシステムがある。
startk1vexとする。
cd /opt/rtcds/kamioka/k1/burt/autoburt/snapshots/ burtgooey &とし、Restore -> Snapshot Files... -> 該当する日付のフォルダから*.snap fileを選択し、OKをクリック。