[openrtm-users 00833] SystemEditorでポート接続の復元に不具合

1 post / 0 new
root
Offline
Last seen: 1 day 42 min ago
Joined: 2009-06-23 14:31
[openrtm-users 00833] SystemEditorでポート接続の復元に不具合

OpenRTM-aist開発者各位

お世話になっております。
セック 小田桐です。

1.0.0用のRT Systesm Editorを使用していて、ポート接続の復元が
うまくできないケースがありましたので、ご報告いたします。

ポート接続がうまく復元できないのは、別々のホストで同じ種類のRTCを
複数起動した場合です。

例えば、HostAとHostBでConsoleInとConsoleOutをそれぞれひとつずつ
起動します。

ネーミングサービス上では以下のようになります。

|-HostA|host_cxt
| |-ConsoleIn0|rtc
| |-ConsoleOut0|rtc
| |-manager|mgr
|
|-HostB|host_cxt
| |-ConsoleIn0|rtc
| |-ConsoleOut0|rtc
| |-manager|mgr

HostAのConsoleIn0とConsoleOut0、HostBのConsoleIn0とConsoleOut0を
それぞれ接続し、保存します。
一度全てのRTCを再起動した後、状態を復元しようとすると、
HostBのConsoleIn0とConsoleOut0の間のポートが
接続されませんでした。

おそらく原因は、保存したXML(RTS Profile)のポート接続情報に、
ポート接続する対象のRTCがどこのホストに属するかという情報が
ないためではないかと思われます。
現状、ポート接続情報に、対象のRTCの情報はインスタンス名と
コンポーネントID(RTC:[vendor].[category].[implementation_id]:[version])
しかありません。
そのため、接続すべきポートが、HostAのConsoleIn0のポートoutなのか、
HostBのConsoleIn0のポートoutなのか区別ができないと思われます。
その結果、HostAのConsoleIn0とConsoleOut0を2回
接続してしまい、HostBの方は接続されなかったのではないかと
考えています。

この推測が正しいのであれば、RTS Profileにホストの情報を
付与するというのが一番簡単そうです
ただ、私としては、RTCのインスタンス名も、ネーミングサービスへの
登録名と同じようにしてはどうかと考えています。

以上、ご確認をよろしくお願いいたします。

Undefined

Download

latest Releases : 2.0.0-RELESE

2.0.0-RELESE Download page

Number of Projects

Choreonoid

Motion editor/Dynamics simulator

OpenHRP3

Dynamics simulator

OpenRTP

Integrated Development Platform

AIST RTC collection

RT-Components collection by AIST

TORK

Tokyo Opensource Robotics Association

DAQ-Middleware

Middleware for DAQ (Data Aquisition) by KEK