ROS BUG
ROS 版本:melodic
问题描述:在ROS中,针对SOLIDWORKS导出的Gripper夹爪模型URDF仿真时,夹爪手指会乱飞,严重偏离理想模型。
解决方案:目前大部分网上建议的方法是调整模型物理属性(主要是inetial),经过尝试,然并无卵。
最后经分析发现是因为虽然URDF已完成gazebo_mimic_joint_plugin插件配置,但实际上gazebo_mimic_joint_plugin并没有安装。简单粗暴的查询方法是在系统根目录下搜索对应的动态库:
gazebo_mimic_joint_plugin
以上显示的是gazebo_mimic_joint_plugin的两个版本对应的动态库,分别由以下两个包提供:
roboticsgroup_upatras_gazebo_plugins(2.0)
或:
roboticsgroup_gazebo_plugins(1.0)
安装成功之后,这两个包会分别生成如图所示的动态库:
2.0: libroboticsgroup_upatras_gazebo_mimic_joint_plugin.so
1.0: libroboticsgroup_gazebo_mimic_joint_plugin.so
生成的这个动态库就是我们需要在URDF 中对应的gazebo tag中进行配置的插件:
...
<transmission name="joint1_trans">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint1">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="joint1_motor">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>1</mechanicalReduction>
</actuator>
</transmission>
<gazebo>
<plugin name="mimic_plugin_th_finger_joint2" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so">
<!--
2.0: libroboticsgroup_upatras_gazebo_mimic_joint_plugin.so
1.0: libroboticsgroup_gazebo_mimic_joint_plugin.so
-->
<joint>joint1</joint>
<mimicJoint>joint2</mimicJoint>
<multiplier>1.0</multiplier>
</plugin>
</gazebo>
...
对于安装,经过测试,roboticsgroup_upatras_gazebo_plugins 已经可以通过命令直接安装在根目录下:
sudo apt-get install ros-melodic-roboticsgroup-upatras-gazebo-plugins
而roboticsgroup_gazebo_plugins目前只能通过源码安装编译。