OpenRTM-aist-1.2.0への対応

遅くなってしまいましたが、Ubuntu 18.04 にOpenRTM-aist 1.2.0 をインストールして試してみました。

ビルドに一部失敗したり、大量の警告が出たり、ビルドできても起動しないといった問題がありましたが、それらについては修正できるところは修正し、いちおうビルドと起動はできるようにしました。

ただし、コンパイル時にOpenRTMのヘッダに起因してWarningが多数出ます。それについてはOpenRTMのフォーラムでも指摘しています。
https://www.openrtm.org/openrtm/ja/node/6587

そして、OpenRTMのサンプルについてまだ正常に動作しない状況です。

具体的には、以下のような不具合があります。

  • OpenRTM-SR1Walk.cnoid, OpenRTM-PA10Pickup.cnoid
    RTCのactivateがうまく出来ていない模様で、シミュレーションを実行するとロボットが崩れ落ちる。

  • OpenRTM-Tank.cnoid, OpenRTM-TankVisionSensors.cnoid
    起動時に terminate called after throwing an instance of ‘CORBA::BAD_PARAM’ という例外で落ちる。

  • OpenRTM-AizuSpider-Terminal.cnoid と OpenRTM-AizuSpiderSS-Remote.cnoid の組み合わせ(同一ホスト上で実行)
    シミュレーション実行時に、Error: the application attempted to invoke an operation on a nil reference. terminate called after throwing an instance of ‘CORBA::INV_OBJREF’ というエラーで落ちる

どうもOpenRTM 1.1.2と1.2.0でAPIの使用方法についても一部変更があるようで、上記の不具合もそれに起因するものかと思われますが、現状ではどこがどう変更されたかが分からないため、修正が難しいところがあります。

あとは、プロジェクト起動時から、コンソールにRTCの情報がテキストで大量に出力されるようになってしまいました。これはOpenRTM1.2で仕様が変わってデフォルトでコンソールにいろいろと出力されるようになったのかと思われます。あまりコンソールにいろいろ出てきても困るので、この機能をオフにする方法は無いものかと思っています。

升谷先生によるとWindows上では1.2でも問題なく動いているようなのですが、Ubuntu上で私が確認した限りでは以上のような状況です。したがって、当面はChoreonoidについてはOpenRTM 1.1.2を継続して利用されるのがよろしいかと思います。