チュートリアルが正しく動かない ROS アクションと逆運動学を使用した PR2 のアーム動作の制御

3 次查看(过去 30 天)
Kazutaka Kikuchi
Kazutaka Kikuchi 2019-3-18
Robot System ToolboxのGazebo関連のチュートリアルをいくつか実施していますが、
下記のチュートリアルが動作しません。どのように対処すればよいでしょうか?
 ・ROS アクションと逆運動学を使用した PR2 のアーム動作の制御
 ・シミュレーションでのロボットの自律性のテスト
下記は正常動作しました。
・Gazebo からのモデルおよびシミュレーションの特性の読み取り
・Gazebo でのオブジェクトの追加、作成、および削除
・Rosinitも正常です
このことから、Gazeboへの接続はうまくいっていると思います。
環境はMathworksツールはWindows10、Gazeboはチュートリアル上からダウンロードしました。
  2 个评论
Tohru Kikawada
Tohru Kikawada 2019-3-20
もう少し詳しく現象を教えていただいてもよろしいでしょうか。
チュートリアルが動作しないというのはコードのどこで起こっていますか。
たとえば、sendGoalAndWaitコマンド(actionlib)が動作しないなどでしょうか。
Kazutaka Kikuchi
Kazutaka Kikuchi 2019-3-20
Tohru Kikawada様
返信ありがとうございます。
>>rosinit('192.168.1.103')
Initializing global node /matlab_global_node_43058 with NodeURI http://192.168.1.100:62549/
>>[rArm, rGoalMsg] = rosactionclient('r_arm_controller/joint_trajectory_action');
>>waitForServer(rArm); ← 30分待ちましたが帰ってきません
また、sendGoalAndWaitも同様に帰ってきません。
Gazeboの物理情報取得やRostopics一覧はMATLABから見ることができています。
追加で必要なデータ等ありましたら、お申しつけください。
全く原因がわからず困っています。

请先登录,再进行评论。

回答(1 个)

Tohru Kikawada
Tohru Kikawada 2019-3-20
Gazebo側からメッセージが返ってこないことでMATLABが待機状態になっているようです。ホスト側のネットワークアダプタのIPアドレスを明示的に指定することで解決できるケースがあります。
ROS ネットワークへの接続 の"ROS 環境変数"にあるようにsetenv関数を使って明示的にそれぞれの変数を設定してみてください。
  4 个评论
Tohru Kikawada
Tohru Kikawada 2019-3-20
混乱させてしまって申し訳ありませんが、setenvはMATLBのコマンドです。MATLAB上で下記のコマンドでMATLABで使う環境変数を設定してみてください。VMware上のUbuntuの設定ではありません。
MATLAB側でrosinitの前に下記のとおり設定をお試しいただけますでしょうか。
setenv('ROS_MASTER_URI','http://192.168.1.103:11311') % VMwaer上のUbuntuのROSのURI
setenv('ROS_IP','192.168.1.100') % Windows側のネットワークIFのIPアドレス
rosinit
Kazutaka Kikuchi
Kazutaka Kikuchi 2019-3-20
ご指摘ありがとうございます。上記試しましたが、変化ありませんでした。
念のため、rosinitも2種類 rosinit、rosinit("192.168.1.103")の両方を試しましたが、
残念ながら結果は同じでした。

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Robotics System Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!