[openrtm-users 00039] RTコンポーネントとプロセスの関係について
Akio Uda
uda-axa @ necst.nec.co.jp
2005年 11月 24日 (木) 20:39:15 JST
はじめまして。宇田@NECシステムテクノロジーと申します。
OpenRTMコンポーネントとプロセスの関係について、少し詳しく教えて
頂けますでしょうか?
例えば既存のロボット用のソフトウェア資産をOpenRTMで活用する場合、
普通に考えると頭、腕、足などのパーツごとにコンポーネント化するの
が自然かと思います。
OpenRTMから見たロボットソフトウェア
+---------------------------------------------+
| システム |
| +-----------+ +-----------+ +-----------+ |
| | 頭制御 | | 腕制御 | | 足制御 | |
| | Component | | Component | | Component | |
| +-----------+ +-----------+ +-----------+ |
+---------------------------------------------+
これらのパーツの制御用ソフトウェアは、元々がロボット・システムで
あるという経緯から、通常は1プロセス内で動いていることが想定され
ます。
ロボットソフトウェアの内部構造
+---------------------------------------------+
| 単一プロセス |
| +-----------+ +-----------+ +-----------+ |
| | 頭制御部 | | 腕制御部 | | 足制御部 | |
| +-----------+ +-----------+ +-----------+ |
+---------------------------------------------+
そこで、最も簡単なコンポーネント化の方法は、これら3種類のコンポー
ネントを1つの実行ファイルにまとめる方法かと思うのですが、デベロッ
パーズガイドの3.1.1.1によると、スタンドアロンコンポーネントは原則と
して1プロセスにつき1種類のコンポーネントにのみ対応するとあります。
これは何か技術的な理由による制約でしょうか?
またローダブルモジュールコンポーネントであれば複数種類のコンポーネ
ントに対応可能なようですが、それらのロード先を1プロセスに制限する
ことは可能でしょうか?(上記のように、ベースになるソフトウェア資産
が単一プロセスで動いている場合、それを基に作成したコンポーネントも
同一プロセス内で動かすのが最もシンプルかと思うのですが)
コンポーネントサーバがこのロード・実行の役割を担っているようですが、
デベロッパーズガイドにはあまり解説がないようですので、もし関連する
資料などがありましたら公開して頂けると助かります。
ご検討の程よろしくお願い致します。
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
z 宇田 安規男 z
z NECシステムテクノロジー株式会社 システムテクノロジーラボラトリ z
z 神奈川県川崎市中原区下沼部 1753 NEC 玉川事業場 9号館 z
z 〒 211-8666 Tel: 044-431-7574 Fax: 044-431-7588 z
z E-mail: uda-axa @ necst.nec.co.jp z
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
openrtm-users メーリングリストの案内