[openrtm-users 03446] Re: RTShell vs. RT System Editor

原功 isao-hara @ aist.go.jp
2017年 11月 16日 (木) 21:07:09 JST


大阪電気通信大 升谷先生

産総研の原です。
下記の件ですがエラ―の内容をみると Enum型のデータをマーシャリングするときの
エラーのようです。
このエラーは、通常では、Enumで定義された範囲を超えたデータ(整数)をマーシャリングしてしまったときに出るエラーだと思います。
omniRRBpyでの処理がどうなっているのかは、調べてみないとわかりませんので推測で死なないのですが。
また、RTSystemEditorではエラーがでないということですが、RTSystemEditorは、JavaORBですのでマーシャリングの処理は、PythonのomniORBを使っているrtctreeと振る舞いが異なるのは納得できます。

升谷先生のおっしゃっているエラーの状況がわかりませんが、CORBAの通信時のメッセージがわかればよりはっきりわかるとは思うのですが。

Choreonoidもすでに1.6がリリースされていますが、Linuxの方がテストはされており、Windowsよりも安定していると思います。

Choreonoidをお使いの場合には、Linuxで利用された方が良いと思います。

あまり解決にはなっていないとは思いますが、参考になれば幸いに存じます。

以上、よろしくお願いいたします。
------------------------------------------------------------
産業技術総合研究所   ロボットイノベーション研究センター
ロボットソフトウェアプラットフォーム研究チーム 主任研究員
  原  功 <Isao-Hara @ aist.go.jp>
 Isao HARA, Senior Researcher, RIRC, ,AIST,Japan
 TEL: +81-29-861-5973

________________________________________
差出人: openrtm-users <openrtm-users-bounces @ openrtm.org> が MASUTANI Yasuhiro <masutani @ osakac.ac.jp> の代理で送信
送信日時: 2017年11月16日 17:54
宛先: openrtm-users @ openrtm.org
件名: [openrtm-users 03445] RTShell vs. RT System Editor

OpenRTM-aist開発者の皆様,openrtm-users MLの皆様,

大阪電気通信大学です.

ChoreonoidのとあるBodyRTCをRTShellやrtctreeで扱おうとすると,

  CORBA.MARSHAL(omniORB.MARSHAL_InvalidEnumValue, CORBA.COMPLETED_YES)

というエラーになることがあり困っています.不思議なのは,そのような状況
の時にそのRTCをRT System Editorでは問題なく扱えていることです.両者の
違いは何でしょうか?

試しているのは,Choreonoid-1.5.0をWindows上でVS2012でビルドしたもので
す.ロボット本体のBodyRTC(CRANE.rtc)とは別に,環境に設置されたカメラ
を模擬するためにカメラのBodyRTC(Camera.rtc)を設置しているのですが,
それがうまく扱えません.

Choreonoidを起動した直後に,コマンドプロンプトでrtlsを実行すると以下の
ようになります.

  rtls /localhost/CRANE.rtc
  CRANE.rtc

  rtls /localhost/Camera.rtc
  rtls: CORBA.MARSHAL(omniORB.MARSHAL_InvalidEnumValue, CORBA.COMPLETED_YES)

不思議なことに,この時RT System Editor上ではどちらのRTCも同じように見
えています.プロパティも表示されています.

さらに不思議なことに,この現象は必ず起こるわけではないのですが,高確率
で(ほとんど毎回)起こる環境とたまに起こる環境があります.OSや
OpenRTM-aistのバージョンも実行しているChoreonoidのバイナリは全く同じも
のです.

さらにさらに不思議なことに,Choreonoidでシミュレーションを実行すると,
エラーは出なくなります.シミュレーション後にコマンドプロンプトでrtlsを
実行すると以下のようになります.

  rtls /localhost/Camera.rtc
  Camera.rtc

ChoreonoidのGitHubでも質問したのですが,良い答えを得られていません.

  https://github.com/s-nakaoka/choreonoid/issues/173

Choreonoidの過去のissueに関係のありそうなことを見つけたのですが,どの
ように手を付けたらいいのか分かりません.

  https://github.com/s-nakaoka/choreonoid/issues/104

ヒントやアドバスをいただけると幸いです.
よろしくお願いいたします.

--
# 升谷 保博
# 大阪電気通信大学 総合情報学部 情報学科
# 575-0063 大阪府四條畷市清滝1130-70 / TEL&FAX: 072-876-5107
_______________________________________________
openrtm-users mailing list
openrtm-users @ openrtm.org
http://www.openrtm.org/mailman/listinfo/openrtm-users


More information about the openrtm-users mailing list