こんにちは.
表題の通り,公式のchoreonoid_ros_samples
から公開されているROSTankControllerが動かせません.
具体的な挙動は以下のとおりです.
1. プラグインの読み込みと実行
choreonoidのGUIから読み込んでいるプラグインは下図のとおりです.
Tankの下にSimpleControllerをインポートし,ROSTankControllerをロードしています.
roscoreを実行し,スタートボタンを押すと,とりあえずシミュレーションは動きます.
2. joyCallback()とcontrol()
ROSTankController.cpp 内のjoyCallbackは問題なく動作しているようです.
上記リンクのソースコードで検証した所,joy
トピックより受け取った値を各リンクの速度司令に渡すことは成功しているようです.
ログ(stdout)は下記の様になりました.
[ INFO] [1566246338.026477026]: trackR->dq() : 0.898837
[ INFO] [1566246338.027734067]: trackL->dq() : 0.898837
[ INFO] [1566246338.027758633]: trackR->dq() : 0.898837
[ INFO] [1566246338.029043965]: trackL->dq() : 0.898837
3. シミュレータ内のモデルが動かない
上記まで検証しましたが,クローラーが動かず,モデルが動きません.
一方,砲塔のJointはjoy
トピックを介して動かすことができました.
以上から,LINK::JOINT_SURFACE_VELOCITY
に関する部分がうまく起動できていないと思われます.
どのように対処したらよろしいでしょうか?
なお,試している環境とビルドオプションは以下のとおりです.
環境
項目 | 内容 |
---|---|
OS | Ubuntu 18.04 LTS |
Kernel | 5.0.0-25-generic #26 |
ROS | melodic |
ビルド方法 | catkin build |
cmake-args | -DBUILD_MULTICOPTER_PLUGIN=ON -DBUILD_MULTICOPTER_SAMPLE=ON -DBUILD_SCENE_EFFECTS_PLUGIN=ON -DBUILD_WRS2018=ON -DUSE_PYTHON3=OFF -DUSE_PYBIND11=OFF -DBUILD_PYTHON_PLUGIN=OFF -DBUILD_PYTHON_SIM_SCRIPT_PLUGIN=OFF -DBUILD_COLLISION_HANDLER_SAMPLE=ON -DBUILD_CONTACT_FORCE_EXTRACTION=ON -DBUILD_DOCUMENTS=ON -DBUILD_TRACKED_VEHICLE_SAMPLE=ON |
以上,よろしくお願いします.