RTシステム開発の流れ

ここでは、作成したRTCを複数組み合わせて, システムを構築する手法について説明します。

ネームサービス

分散オブジェクトミドルウエアは、任意の場所にある計算機上のオブジェクトに対して、参照を保持する代理オブジェクトを介して透過的アクセスを提供します。 この参照は CORBAではIOR(Interoperable Object Reference)と呼ばれ、実体はオブジェクトが存在するコンピュータのネットワークアドレスやポート番号、オブジェクト固有のキー等がエンコードされたものです。 あるオブジェクトのIORを別のコンピュータ上のプログラムから利用する方法としては、ネットワーク上のサーバー上にIORを登録するのが一つの方法です。この参照を登録したり取得したりするサービスがネームサービスです。ネームサービスはCORBAで標準的に定義されているサービスの一つであり、OpenRTM-aistでは、rtm-namingというラッパーコマンドとして提供されています。

RTシステムを起動する前に、RTCを登録するネームサーバーを起動させる必要があります。また、各RTCに対しては、ネームサーバーの場所を前もって調べておく必要があり、そのために設定ファイルrtc.confにその情報を指定します。例えば、ネームサーバーをホスト名openrtm.mydomain.net上で起動した場合、全てのRTCにはそれに対応したrtc.confに以下の内容を書く必要があります。

 corba.nameservers: openrtm.mydomain.net

ネームサーバーはIPアドレスでも指定することができ、「,」で区切ることで複数のサーバーに同時にRTCを登録することができます。ネームサーバーは、通常長時間起動したまま使われ、システムにおいて固定的であるので、設定ファイルを頻繁に書き換える必要はありません。

RTSystemEditorによるシステム構築

作成されたいくつかのRTCを実行し、それらのポートを接続し、アクティブ化することでシステムが動作します。RTC同士の接続やRTCに対してアクティブ化や非アクティブ化のコマンドを送り、システムを起動するためのツールとしてRTSystemEditorが提供されています。

rtse_ja.png
RTSystemEditorによるシステム構築

RTCは起動後メモリーにロードされると、左側のネームサービスビューに表示されます。 ネームサービスビュー上のRTCを中央のエディタにドラッグアンドドロップすると、RTCがシステムエディタ内にアイコンで表示されます。 長方形の辺上の凸部がポートを表しており、RTC間のこれらのポートを接続することでシステムを構築します。また、画面中央下部にはRTCのコンフィギュレーションビューが表示されており、ここで任意のRTCのパラメーターを編集することができるようになっています。

システムを構築したら、エディタ上で右クリックし「All Activate」を選択することで、全てのRTCをアクティブ化することが可能です。また、エディタ上で右クリックし「Save as」を選択することで、システムの構成情報を保存することができます。保存したシステム構成情報は、再度呼び出すことでシステムの接続情報、コンフィギュレーションの情報等を復元することが可能です。

現在のところ、システム構成情報を復元する際には予めRTCを起動しメモリにロードしておく必要がありますが、将来的にはRTCの起動から接続復元までが自動で行えるようになる予定です。

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

Webサイト統計
ユーザ数:2159
プロジェクト統計
RTコンポーネント307
RTミドルウエア35
ツール22
文書・仕様書2

Choreonoid

モーションエディタ/シミュレータ

OpenHRP3

動力学シミュレータ

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク