ロボット、千葉ロッテマリーンズについていいかげんなことを書きます。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
OpenRTM-aistのPython版の複合コンポーネントのサンプルが動作できたと思っていたのですが、動作できていませんでした。僕の環境だけなのかは定かではないので、Composite.pyが動作できるかどうか教えてください。
どうにもbindParameter関数の第3引数が空の文字列だとバインドされないみたいです。
つまりrtshell等で後で追加する場合は問題ありません。
今は独自の複合コンポーネントを作成しているのですが、その過程で色々と問題が起きています。
複合コンポーネントをリセットすると子コンポーネントが全てリセットできるみたいですが、そもそも複合コンポーネントがエラーにならないとリセットできないので意味がありません。
作成した複合コンポーネントがこれです。
C++版では非アクティブ化するときに子コンポーネントの非アクティブ化は別スレッドで処理するようにしました。Python版では上記の部分を修正しました。あと両方にいえる事ですが、子コンポーネントのどれかがエラー状態になると複合コンポーネントもエラーに遷移するようにしました。
とりあえずロボットアーム制御RTC群、クローラー制御RTC群を以下のように複合化しました。
これで一通りの機能は実装できたのでマニュアルの作成に集中できそうです。
クロスコンパイルのやり方も説明しようかとも思いましたが、そもそもIntel Edisonはx86なので開発PC上のLinuxで普通にビルドしてコピーすれば動作できます。mraaを動作してみた人もいるみたいです。OpenRTM-aistを使う場合でもビルドした実行ファイルに必要なライブラリをlddコマンドで調べてコピーすれば普通に動くのではないですかね?
そうなるとIntel EdisonのLinux用のクロスコンパイルツールは何の意味があるのかが不明ですけど。
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・
どうにもbindParameter関数の第3引数が空の文字列だとバインドされないみたいです。
つまりrtshell等で後で追加する場合は問題ありません。
今は独自の複合コンポーネントを作成しているのですが、その過程で色々と問題が起きています。
複合コンポーネントをリセットすると子コンポーネントが全てリセットできるみたいですが、そもそも複合コンポーネントがエラーにならないとリセットできないので意味がありません。
作成した複合コンポーネントがこれです。
C++版では非アクティブ化するときに子コンポーネントの非アクティブ化は別スレッドで処理するようにしました。Python版では上記の部分を修正しました。あと両方にいえる事ですが、子コンポーネントのどれかがエラー状態になると複合コンポーネントもエラーに遷移するようにしました。
とりあえずロボットアーム制御RTC群、クローラー制御RTC群を以下のように複合化しました。
これで一通りの機能は実装できたのでマニュアルの作成に集中できそうです。
クロスコンパイルのやり方も説明しようかとも思いましたが、そもそもIntel Edisonはx86なので開発PC上のLinuxで普通にビルドしてコピーすれば動作できます。mraaを動作してみた人もいるみたいです。OpenRTM-aistを使う場合でもビルドした実行ファイルに必要なライブラリをlddコマンドで調べてコピーすれば普通に動くのではないですかね?
そうなるとIntel EdisonのLinux用のクロスコンパイルツールは何の意味があるのかが不明ですけど。
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・
PR
この記事にコメントする