このケーススタディでは、rtshell で RTコンポーネントのデータ管理を行う方法を紹介します。以下の機能を紹介します。
rtshell はネームサーバー上に登録されている RTコンポーネントをシェルから管理することができるツールです。 コンポーネントを activate/deactivate/reset したり、ポートの接続を行うことができます。RTシステムを管理することもできます。
最初にネームサーバーを起動します。
次は Windows のコマンドプロンプトを起動します。
環境変数を設定します。コマンドプロンプトで以下のコマンドを実行します。 「RTCTREE_NAMESERVERS」は、rtshell の支援ライブラリ rtctree が使う変数で、rtshell が見えるネームサーバーを指定します。
set RTCTREE_NAMESERVERS=127.0.0.1
rtshell でコンポーネントが登録されているネームサーバー上のフォルダーに移動します。
rtcwd /127.0.0.1/maia-win7.host_cxt
「maia-win7.host_cxt」はネームサーバーの名前です。
以下のコンポーネントを起動します。
コンポーネントをアクティブ化します。コマンドプロンプトで以下のコマンドを実行します。
rtact ConsoleIn0.rtc
rtls で結果が確認できます。
次に rtprint コマンドで ConsoleIn0.rtc のポートが出力するデータを表示します。
rtprint ConsoleIn0.rtc:out
ConsoleIn 画面に数を入力すると、コマンドプロンプトで表示されます。
ctrl-c で rtprint を終了します。
rtact ConsoleOut0.rtc
rtinject コマンドで ConsoleOut のポートにデータを入力します。
rtinject ConsoleOut0.rtc:in -c "RTC.TimedLong({time}, 42)"
送る値は「-c」オプションで指定します。Python の表現です。「{time}」は自動的にタイムスタンプに変更されます。
ConsoleOut の画面で数が表示されます。
rtshell の rtlog コマンドでコンポーネントが出力するデータをファイルに保存して、別のコンポーネントに入力することができます。
まずは、rtlog で ConsoleIn が出力するデータをファイルに保存します。以下のコマンドを実行したら ConsoleIn の画面に複数の数を入力します。
rtlog -f numbers.rtlog ConsoleIn0.rtc:out.nums
ポート名の後に「.nums」でデータチャネルの名を指定します。
記録は ctrl-c で終了します。
rtlog では、ログファイルのメタデータが表示されます。
rtlog -f numbers.rtlog -d
データが保存されたら別のコンポーネントに入力できます。以下のコマンドを実行したら ConsoleOut の画面で保存された数が表示されます。
rtlog -f numbers.rtlog -p ConsoleOut0.rtc:in.nums
「-p」オプションで再生させます。「.nums」でデータチャネルを選択します。
モーションエディタ/シミュレータ
動力学シミュレータ
統合開発プラットフォーム
産総研が提供するRTC集
東京オープンソースロボティクス協会
ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク
はじめに
このケーススタディでは、rtshell で RTコンポーネントのデータ管理を行う方法を紹介します。以下の機能を紹介します。
rtshell とは
rtshell はネームサーバー上に登録されている RTコンポーネントをシェルから管理することができるツールです。 コンポーネントを activate/deactivate/reset したり、ポートの接続を行うことができます。RTシステムを管理することもできます。
流れ
rtshell を使うための準備
最初にネームサーバーを起動します。
次は Windows のコマンドプロンプトを起動します。
環境変数を設定します。コマンドプロンプトで以下のコマンドを実行します。 「RTCTREE_NAMESERVERS」は、rtshell の支援ライブラリ rtctree が使う変数で、rtshell が見えるネームサーバーを指定します。
rtshell でコンポーネントが登録されているネームサーバー上のフォルダーに移動します。
「maia-win7.host_cxt」はネームサーバーの名前です。
データの表示
以下のコンポーネントを起動します。
コンポーネントをアクティブ化します。コマンドプロンプトで以下のコマンドを実行します。
rtls で結果が確認できます。
次に rtprint コマンドで ConsoleIn0.rtc のポートが出力するデータを表示します。
ConsoleIn 画面に数を入力すると、コマンドプロンプトで表示されます。
ctrl-c で rtprint を終了します。
データの入力
以下のコンポーネントを起動します。
コンポーネントをアクティブ化します。コマンドプロンプトで以下のコマンドを実行します。
rtls で結果が確認できます。
rtinject コマンドで ConsoleOut のポートにデータを入力します。
送る値は「-c」オプションで指定します。Python の表現です。「{time}」は自動的にタイムスタンプに変更されます。
ConsoleOut の画面で数が表示されます。
データログ作成・再生
rtshell の rtlog コマンドでコンポーネントが出力するデータをファイルに保存して、別のコンポーネントに入力することができます。
まずは、rtlog で ConsoleIn が出力するデータをファイルに保存します。以下のコマンドを実行したら ConsoleIn の画面に複数の数を入力します。
ポート名の後に「.nums」でデータチャネルの名を指定します。
記録は ctrl-c で終了します。
rtlog では、ログファイルのメタデータが表示されます。
データが保存されたら別のコンポーネントに入力できます。以下のコマンドを実行したら ConsoleOut の画面で保存された数が表示されます。
「-p」オプションで再生させます。「.nums」でデータチャネルを選択します。