狠狠撸
Submit Search
搁迟蝉丑别濒濒入门
?
0 likes
?
553 views
O
openrtm
Follow
搁罢システムの起动、终了を自动化するスクリプトファイルの作成方法を解説します。
Read less
Read more
1 of 18
Download now
Download to read offline
More Related Content
搁迟蝉丑别濒濒入门
1.
rtshell入門 宮本 信彦 国立研究開発法人産業技術総合研究所 インダストリアルCPS研究センター ソフトウェアプラットフォーム研究チーム
2.
2 2 資料 ? 配布資料の「 WEBpage
」のHTMLファイルを開く – チュートリアル(rtshell入門、Raspberry Pi Mouse) _ OpenRTM-aist.html ? もしくは以下のリンク – https://openrtm.org/openrtm/ja/node/7097
3.
3 3 RTシステム起動の自動化 ダブルクリックして起動 RTC起動 ポート接続、アクティブ化 GUIでの操作でポート接続、 RTCのアクティブ化 ? 先ほどまでのRTシステム起動手順を再起動時も実行するのは 手間がかかる ?
これらの処理を自動化するバッチファイル、シェルスクリプトの 作成手順を説明する。
4.
4 4 ? rtshellはコマンドラインでRTコンポーネントやRTシステム を操作するツール rtshell > rtcon
localhost/ConsoleIn0.rtc:out localhost/ConsoleOut0.rtc:in > rtact localhost/ConsoleIn0.rtc localhost/ConsoleOut0.rtc rtconコマンドで ポートの接続 rtactコマンドで アクティブ化
5.
5 5 ? 今回開発した「シミュレータ +
RobotController」のシステ ムを起動、終了するための手順は以下のとおりである。 1. RaspberryPiMouseSimulatorコンポーネント、 RobotControllerコンポーネントを起動する。 2. ポートをコネクタで接続する 3. RTCをアクティブ化する 4. RTCを終了する RTシステムの起動、終了を自動化 ? 1~4を実行するスクリプトファイル(バッチファイル、シェルスクリ プト)を作成し、簡単にRTシステムを起動、終了できるようにする – 1については以下のプログラムを実行するコマンドを記述するだけ ? RaspberryPiMouseSimulatorComp.exe ? RobotControllerComp.exe – 2、3、4についてはrtshellのコマンドを使用する
6.
6 6 事前準備 ? この実習ではコマンドラインによる操作を行うため、コマンドプ ロンプト(Windows)、ターミナル(Ubuntu)を起動してください。 – Windowsの場合は左下の「検索」に「コマンド
プロンプト」と入力して検索する。 – コマンドプロンプトが起動したら「rtls」を入力してみてください。「‘rtls’ は、内部コ マンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認 識されていません。」と表示された場合、Pythonのインストールフォルダ内の Scriptsフォルダが環境変数Pathに設定されていません。 ? 「C:?Python38?Scripts」といったフォルダを環境変数Pathに追加する必要 がありますが、分からない場合は質問してください。
7.
7 7 1. RTSystemEditor上でデータポートを接続する。 2. コネクタの接続情報をファイルに保存する。 3.
再起動時にファイルの情報からコネクタを復元する。 ポート接続の自動化 > rtcryo -o C:?work?robotcontroller.xml localhost RTSystemEditorで ポートを接続する rtcryoコマンドで接続情報な どをXMLファイルに保存する 前準備
8.
8 8 RTシステムの保存、復元 > rtresurrect C:?work?robotcontroller.xml ?
作成したXMLファイルからポートの接続情報を読み込み、 元のシステムを復元できる。 rtresurrectコマンドでXMLファイルの 情報からポートを接続する。
9.
? rtcryoコマンドを試してみる – RTSystemEditorでポートを接続した状態にする。 –
rtcryoコマンドでシステムの情報をXMLファイルに保存する – Pyyamlがインストールされていないとエラーになる ? pip install pyyaml 9 9 RTシステムの保存、復元 > rtcryo -o C:?work?robotcontroller.xml localhost XMLファイルを保存するパスを 指定する。適宜パスは分かりや すい場所に変更してください ネームサーバーを指定する。 今回はlocalhostのみ。
10.
? rtresurrectコマンドを試してみる 1. RTSystemEditorでコネクタを切断した状態にする。 ?
コネクタを切断するには、コネクタを選択してDeleteキーを押すか、右 クリックしてDeleteを選択する。 2. rtresurrectコマンドでポートの接続情報を復元する 10 10 RTシステムの保存、復元 > rtresurrect C:?work?robotcontroller.xml XMLファイルのパスはrtcryoコマンドで保存したパスに変更する
11.
? rtstartコマンドでXMLファイルに保存したシステムのRTCをアクティ ブ化する – 以下のコマンドを試してみてください 11 11 RTCのアクティブ化の自動処理 >
rtstart C:?work?robotcontroller.xml XMLファイルのパスはrtcryoコマンドで保存したパスに変更する
12.
? rtstopコマンドでXMLファイルに保存したシステムのRTCを非アク ティブ化する – 以下のコマンドを試してみてください 12 12 RTCの非アクティブ化 >
rtstop C:?work?robotcontroller.xml XMLファイルのパスはrtcryoコマンドで保存したパスに変更する
13.
? rtexitコマンドでXMLファイルに保存したシステムのRTCを非アク ティブ化する – 以下のコマンドを試してみてください 13 13 RTCの終了の自動化 >
rtexit localhost/RaspberryPiMouseSimulator0.rtc > rtexit localhost/%COMPUTERNAME%.host_cxt/RobotController0.rtc デフォルトの設定でRobotControllerはネームサーバーで ホスト名.host_cxtの下に登録される。 ※Ubuntuの場合は「%COMPUTERNAME%」 を「${HOSTNAME}」に変更する。
14.
? rtshellのコマンドを用いて、RTシステムの起動、終了を自動化す るバッチファイル(Windows)、シェルスクリプト(Ubuntu)を作成す る。 – まずは適当な場所に以下のファイルを作成 ?
Windowsの場合はバッチファイル(拡張子.bat) – 今回は「robotcontroller_start.bat」、 「robotcontroller_exit.bat」というファイルを作成 – テキストファイルを新規作成後、 名前を変更することで作成する。 – エクスプローラーで拡張子を非表示にしている場合は注意 ? Ubuntuの場合はシェルスクリプト(拡張子.sh) – 今回は「robotcontroller_start.sh」、 「robotcontroller_exit.sh」というファイルを作成 14 14 スクリプトファイルの作成
15.
15 15 バッチファイル作成,編集 エクスプローラーで 右クリックして、 「新規作成」-> 「テキスト ドキュメント」 を選択する 名前を 「robotcontroller_start.bat」、 「robotcontroller_exit.bat」に 変更する。 ファイルを右クリックして「編集」を選 択する。
16.
? まずは「robotcontroller_start.bat」、 「robotcontroller_start.sh」を編集する。 ? RaspberryPiMouseSimulator、RobotControllerのプログラ ムを実行するコマンドを記述する。 –
バッチファイル ? ファイルのパスは適宜変更する – シェルスクリプト ? ファイルのパスは適宜変更する 16 16 起動自動化のスクリプトファイルの作成 start "" /d C:?workspace?RobotController?build?src?Release RobotControllerComp.exe start "" /d C:?work?RTM_Tutorial?EXE RaspberryPiMouseSimulatorComp.exe timeout 2 cd ~/workspace/RobotController/build/src/ ./RobotControllerComp& cd ~/RasPiMouseSimulatorRTC/build/src ./RaspberryPiMouseSimulatorComp& sleep 2
17.
? RTシステムを復元、RTCのアクティブ化を実行するコマンドを 記述する。 – XMLファイルのパスは適宜変更する。 ?
記述が完了したら、robotcontroller_start.bat、 robotcontroller_start.shを実行してシミュレータが起動する かを確認してください。 – RTCが起動しない場合、実行ファイルのパスが違う可能性があるため 確認してください。 17 17 起動自動化のスクリプトファイルの作成 rtresurrect C:?work?robotcontroller.xml rtstart C:?work?robotcontroller.xml
18.
? まずは「robotcontroller_exit.bat」、 「robotcontroller_exit.sh」を編集する。 ? RTC終了のコマンドを記述する。 –
Windows – Ubuntu ? 記述が完了したら、robotcontroller_exit.bat、 robotcontroller_exit.shを実行して以下の事を確認してくださ い。 – シミュレータが終了する(ウィンドウが消える)。 – ネームサーバーからRTCが消える。 18 18 終了自動化のスクリプトファイルの作成 rtexit localhost/RaspberryPiMouseSimulator0.rtc rtexit localhost/ %COMPUTERNAME%.host_cxt/RobotController0.rtc HOSTNAME=`hostname` rtexit localhost/RaspberryPiMouseSimulator0.rtc rtexit localhost/${HOSTNAME}.host_cxt/RobotController0.rtc
Download