[openrtm-users 02795] RTCインスタンス名の動的変更について

6 個の投稿 / 0 new
最終投稿
chiku
オフライン
Last seen: なし 前
登録日: 2013-05-13 16:00
[openrtm-users 02795] RTCインスタンス名の動的変更について

OpenRTM-aist開発チームの皆様

株式会社セックの 知久 と申します。

OpenRTP 1.1.0-RC4を使用しておりますが、システムエディタの下記現象に困っ
ております。

・RTCのインスタンス名をRTObject_impl::setInstanceName関数を用いて動的に
変更した際に、
System Diagramタブ上の表示に反映されない。

ちなみに、プロパティータブ上での表示には、変更が自動的に反映されて表示が
変化します。

System Diagram上の表示は、Name Serviceペインからドラッグ&ドロップした際
に表示されるインスタンス名のままとなっており、再度ドラッグ&ドロップし直
さないと反映されないようです。
DiactivateやActivateをしても、インスタンス名の表示は変化しません。

RTCのインスタンス名の動的変更に応じて、
System Diagram上での表示インスタンス名も更新されるようにご対応頂けないで
しょうか。

あるいは、再度ドラッグ&ドロップすることなく強制的に変更を反映させる代替
手段が
ありましたら、その方法をご教示下さい。

以上、よろしくお願いいたします。

未定義
Ando Noriaki
オフライン
Last seen: 1年 9ヶ月 前
登録日: 2011-09-04 17:20
[openrtm-users 02796] RTCインスタンス名の動的変更について

知久さま

安藤です

setInstanceNameはユーザが呼ぶことを想定した関数ではないので、
これによりRTC生成後にインスタンス名を変更すると、いろいろと不整合が起こると思います。
また、RTSystemEditorの方でも特に動的インスタンス名の変更は想定しておりません。
ただし、コンポーネント生成時にcreateComponentに与える引数により、<型名>+数字
以外の特定のインスタンス名を与えることは可能です。

以上、よろしくお願いします。

2013年5月13日 15:16 chiku :
> OpenRTM-aist開発チームの皆様
>
> 株式会社セックの 知久 と申します。
>
> OpenRTP 1.1.0-RC4を使用しておりますが、システムエディタの下記現象に困っ
> ております。
>
> ・RTCのインスタンス名をRTObject_impl::setInstanceName関数を用いて動的に
> 変更した際に、
> System Diagramタブ上の表示に反映されない。
>
> ちなみに、プロパティータブ上での表示には、変更が自動的に反映されて表示が
> 変化します。
>
> System Diagram上の表示は、Name Serviceペインからドラッグ&ドロップした際
> に表示されるインスタンス名のままとなっており、再度ドラッグ&ドロップし直
> さないと反映されないようです。
> DiactivateやActivateをしても、インスタンス名の表示は変化しません。
>
> RTCのインスタンス名の動的変更に応じて、
> System Diagram上での表示インスタンス名も更新されるようにご対応頂けないで
> しょうか。
>
> あるいは、再度ドラッグ&ドロップすることなく強制的に変更を反映させる代替
> 手段が
> ありましたら、その方法をご教示下さい。
>
> 以上、よろしくお願いいたします。
>
> --
> /********************************************************
> 株式会社セック 開発本部 第四開発部
> 知久 健
> 158-0097 東京都世田谷区用賀4-10-1 世田谷ビジネススクエア
> TEL : 03-5491-4404
> e-mail : chiku@sec.co.jp
> ********************************************************/
>
> _______________________________________________
> openrtm-users mailing list
> openrtm-users@openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users
_______________________________________________
openrtm-users mailing list
openrtm-users@openrtm.org
http://www.openrtm.org/mailman/listinfo/openrtm-users

chiku
オフライン
Last seen: なし 前
登録日: 2013-05-13 16:00
[openrtm-users 02797] RTCインスタンス名の動的変更について

安藤様

返信ありがとうございます。 セック)知久です。

setInstanceName関数の設計思想について、承知致しました。
コンポーネント生成時にインスタンス名を指定する方法を検討してみます。

以上、よろしくお願いします。

(2013/05/13 15:43), Ando Noriaki wrote:
> 知久さま
>
> 安藤です
>
> setInstanceNameはユーザが呼ぶことを想定した関数ではないので、
> これによりRTC生成後にインスタンス名を変更すると、いろいろと不整合が起こると思います。
> また、RTSystemEditorの方でも特に動的インスタンス名の変更は想定しておりません。
> ただし、コンポーネント生成時にcreateComponentに与える引数により、<型名>+数字
> 以外の特定のインスタンス名を与えることは可能です。
>
> 以上、よろしくお願いします。
>
>
> 2013年5月13日 15:16 chiku :
>> OpenRTM-aist開発チームの皆様
>>
>> 株式会社セックの 知久 と申します。
>>
>> OpenRTP 1.1.0-RC4を使用しておりますが、システムエディタの下記現象に困っ
>> ております。
>>
>> ・RTCのインスタンス名をRTObject_impl::setInstanceName関数を用いて動的に
>> 変更した際に、
>> System Diagramタブ上の表示に反映されない。
>>
>> ちなみに、プロパティータブ上での表示には、変更が自動的に反映されて表示が
>> 変化します。
>>
>> System Diagram上の表示は、Name Serviceペインからドラッグ&ドロップした際
>> に表示されるインスタンス名のままとなっており、再度ドラッグ&ドロップし直
>> さないと反映されないようです。
>> DiactivateやActivateをしても、インスタンス名の表示は変化しません。
>>
>> RTCのインスタンス名の動的変更に応じて、
>> System Diagram上での表示インスタンス名も更新されるようにご対応頂けないで
>> しょうか。
>>
>> あるいは、再度ドラッグ&ドロップすることなく強制的に変更を反映させる代替
>> 手段が
>> ありましたら、その方法をご教示下さい。
>>
>> 以上、よろしくお願いいたします。
>>
>> --
>> /********************************************************
>> 株式会社セック 開発本部 第四開発部
>> 知久 健
>> 158-0097 東京都世田谷区用賀4-10-1 世田谷ビジネススクエア
>> TEL : 03-5491-4404
>> e-mail : chiku@sec.co.jp
>> ********************************************************/
>>
>> _______________________________________________
>> openrtm-users mailing list
>> openrtm-users@openrtm.org
>> http://www.openrtm.org/mailman/listinfo/openrtm-users
> _______________________________________________
> openrtm-users mailing list
> openrtm-users@openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users
>
>
_______________________________________________
openrtm-users mailing list
openrtm-users@openrtm.org
http://www.openrtm.org/mailman/listinfo/openrtm-users

Ando Noriaki
オフライン
Last seen: 1年 9ヶ月 前
登録日: 2011-09-04 17:20
[openrtm-users 02798] RTCインスタンス名の動的変更について

知久さま

安藤です

ちなみに、どういったケースで動的なインスタンス名の変更を
利用されるご予定だったのか、参考までにユースケースを
おしえていただけないでしょうか?

2013年5月13日 16:56 chiku :
> 安藤様
>
> 返信ありがとうございます。 セック)知久です。
>
> setInstanceName関数の設計思想について、承知致しました。
> コンポーネント生成時にインスタンス名を指定する方法を検討してみます。
>
> 以上、よろしくお願いします。
>
>
> (2013/05/13 15:43), Ando Noriaki wrote:
>> 知久さま
>>
>> 安藤です
>>
>> setInstanceNameはユーザが呼ぶことを想定した関数ではないので、
>> これによりRTC生成後にインスタンス名を変更すると、いろいろと不整合が起こると思います。
>> また、RTSystemEditorの方でも特に動的インスタンス名の変更は想定しておりません。
>> ただし、コンポーネント生成時にcreateComponentに与える引数により、<型名>+数字
>> 以外の特定のインスタンス名を与えることは可能です。
>>
>> 以上、よろしくお願いします。
>>
>>
>> 2013年5月13日 15:16 chiku :
>>> OpenRTM-aist開発チームの皆様
>>>
>>> 株式会社セックの 知久 と申します。
>>>
>>> OpenRTP 1.1.0-RC4を使用しておりますが、システムエディタの下記現象に困っ
>>> ております。
>>>
>>> ・RTCのインスタンス名をRTObject_impl::setInstanceName関数を用いて動的に
>>> 変更した際に、
>>> System Diagramタブ上の表示に反映されない。
>>>
>>> ちなみに、プロパティータブ上での表示には、変更が自動的に反映されて表示が
>>> 変化します。
>>>
>>> System Diagram上の表示は、Name Serviceペインからドラッグ&ドロップした際
>>> に表示されるインスタンス名のままとなっており、再度ドラッグ&ドロップし直
>>> さないと反映されないようです。
>>> DiactivateやActivateをしても、インスタンス名の表示は変化しません。
>>>
>>> RTCのインスタンス名の動的変更に応じて、
>>> System Diagram上での表示インスタンス名も更新されるようにご対応頂けないで
>>> しょうか。
>>>
>>> あるいは、再度ドラッグ&ドロップすることなく強制的に変更を反映させる代替
>>> 手段が
>>> ありましたら、その方法をご教示下さい。
>>>
>>> 以上、よろしくお願いいたします。
>>>
>>> --
>>> /********************************************************
>>> 株式会社セック 開発本部 第四開発部
>>> 知久 健
>>> 158-0097 東京都世田谷区用賀4-10-1 世田谷ビジネススクエア
>>> TEL : 03-5491-4404
>>> e-mail : chiku@sec.co.jp
>>> ********************************************************/
>>>
>>> _______________________________________________
>>> openrtm-users mailing list
>>> openrtm-users@openrtm.org
>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>> _______________________________________________
>> openrtm-users mailing list
>> openrtm-users@openrtm.org
>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>
>>
> _______________________________________________
> openrtm-users mailing list
> openrtm-users@openrtm.org
> http://www.openrtm.org/mailman/listinfo/openrtm-users

chiku
オフライン
Last seen: なし 前
登録日: 2013-05-13 16:00
[openrtm-users 02799] RTCインスタンス名の動的変更について

安藤様

セック)知久です。

検討していたのは、下記ユースケースです。
・同じインタフェースの複数の機能を持ち、コンフィギュレーションの設定によ
り機能を動的に切り替える

この機能切り替え時に、機能と結びつくインタスタンス名を動的に変更しようと
していました。
ご指摘を踏まえ、機能選択の方法とタイミングを見直すことを検討しています。

以上、よろしくお願いいたします。

(2013/05/13 17:00), Ando Noriaki wrote:
> 知久さま
>
> 安藤です
>
> ちなみに、どういったケースで動的なインスタンス名の変更を
> 利用されるご予定だったのか、参考までにユースケースを
> おしえていただけないでしょうか?
>
>
>
> 2013年5月13日 16:56 chiku :
>> 安藤様
>>
>> 返信ありがとうございます。 セック)知久です。
>>
>> setInstanceName関数の設計思想について、承知致しました。
>> コンポーネント生成時にインスタンス名を指定する方法を検討してみます。
>>
>> 以上、よろしくお願いします。
>>
>>
>> (2013/05/13 15:43), Ando Noriaki wrote:
>>> 知久さま
>>>
>>> 安藤です
>>>
>>> setInstanceNameはユーザが呼ぶことを想定した関数ではないので、
>>> これによりRTC生成後にインスタンス名を変更すると、いろいろと不整合が起こると思います。
>>> また、RTSystemEditorの方でも特に動的インスタンス名の変更は想定しておりません。
>>> ただし、コンポーネント生成時にcreateComponentに与える引数により、<型名>+数字
>>> 以外の特定のインスタンス名を与えることは可能です。
>>>
>>> 以上、よろしくお願いします。
>>>
>>>
>>> 2013年5月13日 15:16 chiku :
>>>> OpenRTM-aist開発チームの皆様
>>>>
>>>> 株式会社セックの 知久 と申します。
>>>>
>>>> OpenRTP 1.1.0-RC4を使用しておりますが、システムエディタの下記現象に困っ
>>>> ております。
>>>>
>>>> ・RTCのインスタンス名をRTObject_impl::setInstanceName関数を用いて動的に
>>>> 変更した際に、
>>>> System Diagramタブ上の表示に反映されない。
>>>>
>>>> ちなみに、プロパティータブ上での表示には、変更が自動的に反映されて表示が
>>>> 変化します。
>>>>
>>>> System Diagram上の表示は、Name Serviceペインからドラッグ&ドロップした際
>>>> に表示されるインスタンス名のままとなっており、再度ドラッグ&ドロップし直
>>>> さないと反映されないようです。
>>>> DiactivateやActivateをしても、インスタンス名の表示は変化しません。
>>>>
>>>> RTCのインスタンス名の動的変更に応じて、
>>>> System Diagram上での表示インスタンス名も更新されるようにご対応頂けないで
>>>> しょうか。
>>>>
>>>> あるいは、再度ドラッグ&ドロップすることなく強制的に変更を反映させる代替
>>>> 手段が
>>>> ありましたら、その方法をご教示下さい。
>>>>
>>>> 以上、よろしくお願いいたします。
>>>>
>>>>
>>>> _______________________________________________
>>>> openrtm-users mailing list
>>>> openrtm-users@openrtm.org
>>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>> _______________________________________________
>>> openrtm-users mailing list
>>> openrtm-users@openrtm.org
>>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>>>
>>>
>> _______________________________________________
>> openrtm-users mailing list
>> openrtm-users@openrtm.org
>> http://www.openrtm.org/mailman/listinfo/openrtm-users
>
>
_______________________________________________
openrtm-users mailing list
openrtm-users@openrtm.org
http://www.openrtm.org/mailman/listinfo/openrtm-users

Ando Noriaki
オフライン
Last seen: 1年 9ヶ月 前
登録日: 2011-09-04 17:20
[openrtm-users 02800] RTCインスタンス名の動的変更について

知久さま、皆様

安藤です

> 安藤様
>
> セック)知久です。
>
> 検討していたのは、下記ユースケースです。
> ・同じインタフェースの複数の機能を持ち、コンフィギュレーションの設定によ
> り機能を動的に切り替える
>
> この機能切り替え時に、機能と結びつくインタスタンス名を動的に変更しようと
> していました。
> ご指摘を踏まえ、機能選択の方法とタイミングを見直すことを検討しています。

なるほど、便利そうなコンポーネントですが、いわゆる何でもできるコンポーネント的
なもので、ちょっと危うい印象も受けますね。

それはさておき、現状OpenRTM-aistでは、Configurationの変更やポートの
接続、状態の遷移などを通知するためのフックが色々と用意されていますが、
残念ながら、コンポーネントのプロファイル(インスタンス名を含む)の変更を
通知する仕組みはいまのところ実装されていません。

1.1から追加されたSDO拡張モジュールのObserverには、ComponentProfile
を通知する仕組みらしきものを定義はしていますが、実装はありません。
http://svn.openrtm.org/OpenRTM-aist/branches/RELENG_1_1/OpenRTM-aist/src/ext/sdo/observer/ComponentObserver.idl

あと、標準仕様レベルの話ですと、OMGのRTC仕様では、インスタンス名を含む
ComponentProfileは以下のような説明になっていました。

Description
ComponentProfile represents the static state of an RTC that is
referred to here as the “target” RTC.

http://www.omg.org/spec/RTC/

"static state" とあるので、「普通は変わらない」プロファイルということなのだと思い
ますが、どの程度のスパンでstaticなのかは、明確には書いてません。
#仕様を作った時にはそこまで深く考えてませんでした。

RTCのライフサイクル>アプリケーションが同一状態にある間>RTCが同一状態にある間

など、スパンはいろいろ考えられると思います。実際、ComponentProfileのうち

- instance_name
- type_name
- description
- version
- vendor
- category

はライフサイクル中は static かな、と思いますが、

- port_profile: ポートの接続状態や動的追加により変わる
- parent (RTOBject): 複合コンポーネント化すると変わる
- properties: いろいろプロパティをいれると変わる

は変更される可能性は高いものと考えられます。なので、OpenRTM-aistとしても、
これらの変更に関するフックは今後実装するつもりです。

ただし、インスタンス名(およびtype_name等)を変更すると、
「じゃぁ、ネームサーバに登録されている名前も変更しなきゃいけないのでは?」
とか、「Aっていうコンポーネントからデータを受け取っていたと思っていたら、
いつのまにかBっていうコンポーネントからデータをもらっていた。何を言ってるのか(ry」
とか、いろいろ面倒なことが起こりそうなので、特にインスタンス名は静的な方がいいのでは?
と、は私自身は考えています。

ご意見有りましたらよろしくお願いします。
_______________________________________________
openrtm-users mailing list
openrtm-users@openrtm.org
http://www.openrtm.org/mailman/listinfo/openrtm-users

コメントを投稿するにはログインまたはユーザー登録を行ってください

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

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

Choreonoid

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

OpenHRP3

動力学シミュレータ

OpenRTP

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

産総研RTC集

産総研が提供するRTC集

TORK

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

DAQ-Middleware

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