HWP用のWSをk1ctr8,9,12からRevPi Core3+へ置き換えを行う。
RevPi Core3+のセットアップ
Debian10へのUpdate
[必要な機材]
DHCPでネットワークに接続できる環境とWindowsPCを用意する
[必要なソフト]
専用のDebian10をダウンロードして解凍しておく https://revolution.kunbus.de/shop/en/buster RPiBoot(Windows Installer)をダウンロードしてインストール https://github.com//raspberrypi/usbboot/raw/master/win32/rpiboot_setup.exe Win32 Disk Imagerをインストール https://sourceforge.net/projects/win32diskimager/
[手順]
# 立ち上げ
RPiBootを起動 "Second stage boot server done"が出たら Win32 Disk Imagerを起動 ImageFileを押下してDebian10を選択、Writeを押下してeMMCにイメージを書き込む 電源を再投入してRevPiを起動する 電源起動後 login:pi Password:(マニュアル記載の初期パスワード) PRODUCT TYPEの選択 RevPi Core / Core 3(+) / Core S 初期設定 シリアル(5桁)とMACアドレスを入力 SSHの有効化 $ sudo raspi-confifg [3.Interface Options]-[SSH]-[Yes]有効にする マニュアルに書いてあるVNCは有効にしない
# Applicationのインストール
emacs入れておこうかと、それ以外はなんとなく 初期状態でDHCPが有効になっているので適当なネットワークに接続してインストールする $ sudo apt-get update $ sudo apt-get install emacs nfs-common wmctrl cups lxshortcut make chrony gnome-terminal sqlite3 barrier subversion imagemagick autorandr festival rsync $ sudo apt-get install dnsutils
# piアカウントのパスワードを変更
既存のpiアカウントのパスワードはraspberryではなく CDSで使っているrootパスワードと同じにしておく
# Userアカウントの設定
$ sudo su - # useradd -u 1001 -m controls # passwd controls いつものやつを設定
# Network設定
Place |
Name |
IP address |
RevPi S-Number |
Splitter S-Number |
Install |
Rotater iSerial |
|
PSL |
k1hwp0 |
10.68.160.170 |
Installed |
PSL:A66FJY38(Encoder) |
- |
||
IMC |
k1hwp1 |
10.68.160.171 |
Installed |
IMC_RELF:A66Y7T9N(Encoder) |
IMC_REFL |
||
OMC |
k1hwp2 |
10.68.160.172 |
Installed |
IFO_AS:FT3RYOUE |
- |
||
IFO_REFL |
k1hwp3 |
10.68.160.173 |
Installed |
IFO_REFL:A66Y7TCF(Encoder) |
IFO_REFL |
||
IFO_REFL_WFS |
k1hwp4 |
10.68.160.174 |
Installed |
IFO_REFL_WFS:FT1YHVBK |
IFO_REFL_WFS |
NetworkNamagerをインストールして設定する $ sudo apt-get update $ sudo apt-get install network-manager nmcliを起動 $ sudo nmtui Edit a connectopn - Add Profile name: eno1 Device: XX:XX:XX:XX:XX:XX (eth0)ているものを選択する。出ない場合は再起動すると出ます。 IPv4 Showを押下して次の値を設定 Address: 10.68.xx.xx/24 (10.68.150.は/16、10.68.160.は/24) Gatteway: 10.68.10.1 (Pico nwtworkの場合は、設定しない) DNS services: 10.68.10.1 (Pico networkの場合は、設定しない) Search domain: kagra.icrr.u-tokyo.ac.jp (Pico nwtworkの場合は、設定しない) OKを選択して押下 Backを選択して押下 Activate a connectionを選択、eno1を選択、続いてActivateを選択して押下 エラーになるようならばコマンドラインからActiveしてしまう sudo nmcli connection up eno1
# Hostname setting
/etc/hostname を変更 k1hwp[0-4].kagra.icrr.u-tokyo.ac.jpになっているか確認 (Pico networkの場合は、k1hwp[0-2]のみとする) /etc/hosts を変更 172.0.1.1 RevXXXをk1hwp{0,1,2}に変更
# NFS Setting (Pico networkの場合はIPアドレスが異なる)
/etc/fstab へ次の行を追加 ’’’ #DGS network #10.68.10.100:/opt/rtcds /opt/rtcds nfs nofail,rw,bg,soft 0 0 #10.68.10.100:/opt/rtapps /opt/rtapps nfs nofail,rw,bg,soft 0 0 10.68.10.10:/export/kagra /kagra nfs nofail,rw,bg,soft 0 0 10.68.10.10:/export/users /users nfs nofail,rw,bg,soft 0 0 # Pico Network 10.68.160.151:/export/kagra /kagra nfs nofail,rw,bg,soft 0 0 10.68.160.151:/export/users /users nfs nofail,rw,bg,soft 0 0 ’’’ sudo mount -a
# NTP setting (Pico networkの場合はアクセスできないので不要)
/etc/chrony/chrony.conf server 10.68.10.251 iburst server 172.16.231.114 iburst server 172.16.231.113 iburst
# sudo権限の追加
/etc/groupへsudo権限を追加 sudo:x:27:pi,controls
# 後処理(consoleモードで実施していたら不要)
最後にConsoleに戻す $ sudo raspi-confifg [1.Sysyem Options]-[Boot / Auto Login]-[Console(Autologinなし)]
# 以降controlsにてログインして編集
#.bashrcの変更 (Pico networkの場合はアクセスできないので不要)
最小設定も可能だが手間なので共通にしておく。 if [ -f /kagra/apps/etc/client-user-env_deb10.sh ]; then source /kagra/apps/etc/client-user-env_deb10.sh fi
# .sshディレクトリにシンボリックリンクを作成
$ ssh-keygen (.sshディレクトリがない場合に実行する。作成すると.sshが作成されます) $ ln -s /kagra/apps/agilis/authorized_keys authorized_keys
Pico networkの場合はアクセスできないので不要だが、authorized_keysとconfigファイルは作成する。
・sudoでパスワードなしで実行できるように設定する。
$ sudo visudo 一番最後の行に追加する。途中の行だと認識しないようです。 controls ALL=NOPASSWD: /kagra/apps/agilis/agilis_control.py controls ALL=NOPASSWD: /kagra/apps/agilis/agilis-p_control.py
PyUSB1.0をインストールする $ sudo pip3 install pyusb
Encoder付きHWPインストール
[ファイル] /kagra/apps/agilis/agilis-p_controls.py
・新規の電子署名ファイルを作成する[1台分のみ作成あとは使い回し]
/kagra/apps/agilis/authorized_keys 電子署名サンプル $ ssh-keygen -t ed25519 ファイル名を聞かれるのでid_ed25519_agilis_pを指定 公開鍵id_ed25519_agilis_p.pubをauthorized_keys(/kagra/apps/agilis/authorized_keys)へ追加 秘密鍵id_ed25519_agilis_pを/kagra/apps/agilis/へコピー
・ピコネットワークの場合は、k1script1経由で接続する為、k1script1接続用の電子署名を作成してそれをコピーする
$ ssh-keygen -t ed25519 ファイル名を聞かれるのでid_ed25519_k1script1を指定 公開鍵id_ed25519_k1script1.pubをauthorized_keys(k1script1の.ssh/authorized_keys)へ追加 秘密鍵id_ed25519_k1script1を/kagra/apps/agilis/へコピー
コマンド投入の流れ
(DGSネットワークで使用する場合の流れ)
k1ctr*[MEDM],k1grd0(gurdian script),k1script => /kagra/apps/agilis/medm_hwp_calib.sh or medm_hwp.sh => sshでk1hwp*へログイン.ssh/authorized_keysに記述したagilis-p_controls.pyを実行させる
(ピコネットワークで使用する場合の流れ)
k1ctr*[MEDM],k1grd0(gurdian script) =>/kagra/apps/agilis/medm_hwp_calib.sh or medm_hwp.sh => ssh多段ログインでk1script1へログイン後、k1hwp*へ続けてログイン.ssh/authorized_keysに記述したagilis-p_controls.pyを実行させる k1script1 => /kagra/apps/agilis/medm_hwp_calib.sh or medm_hwp.sh => ssh多段にする必要がないので、sshでk1hwp*へログイン.ssh/authorized_keysに記述したagilis-p_controls.pyを実行させる
Encoder付きHWPのセットアップ
必要機器
WindowsPC, CONEX-AG-PR100P
手順
1.最初にWindowsアプリケーションを使用して次のパラメータの設定と確認を行う。
CONEX-AG-PR100P のCONEX-AGP-2.0.0をダウンロードしてWindowsPCへインストールする。
2.インストール後、Newport CONEX-AGP appletを起動する。
3.Discoverを押してHWPを検索、見つかったら[launch Applet]押下して起動
4.コマンドから次の値を設定する。
Software Limitの設定変更 [Diagnostics]タブを選択して、Commandに次の値を入力して[SendX]を押下する。 1PW1 => Enter CONFIGURATION state: CONFIGURATIONステートに遷移する 1HT1 => Set HOME search type: 1 現在位置をHOMEとします. 機械的にはデフォルト4がベストですが、電源起動時に原点検索を初めてしまう為、 現在位置をHOMEとして、現在位置はEPICSの値と一致している前提で処理を構築する。 1SL-340 => Set negative software limit: マイナス方向の移動量を-340まで可能に設定する 1SR340 => Set positive software limit: プラス方向の移動量を340まで可能に設定する 1PW0 => Enter CONFIGURATION state: NOT REFERENCEDステートに遷移する 注意: PWコマンドはストアメモリへ書き込みを行う為、繰り返し可能な上限は100回までです。 余り何度も変更しないようにする必要があります。
5.WindowsPCからUSBケーブルを取り外してRavPiへUSB接続する。
6.RavPiの電源をONする(電源ボタンはないのでPoE給電の場合は電源ケーブルを接続する)
7.スクリプトからHWPが動作することを確認する