(轉(zhuǎn)載請注明作者和出處:https://yangningbocn.github.io 未經(jīng)允許請勿用于商業(yè)用途)
本博客只是個人學(xué)習(xí)記錄使用,瞎寫寫,內(nèi)容比較粗糙。編寫過程中,借鑒了yaked大神的實戰(zhàn)youBot和ROS-WIKI以及其它一些大神的內(nèi)容。
現(xiàn)在大部分的移動機器人主要差動輪進行運動,只有l(wèi)inear.x和angular.z兩個值,但是我的模型是4個瑞典輪,能提供橫向的移動速度,即linear.y。
在gazebo中的橫向移動同樣要修改控制方式,只不過在與rviz不同,不能直接修改,文件格式打不開,這里采用的方案是直接在xacro中加載一個平面移動的插件就可以了
<!-- position controller -->
<gazebo>
<plugin name="base_controller" filename="libgazebo_ros_planar_move.so">
<commandTopic>cmd_vel</commandTopic>
<odometryTopic>odom</odometryTopic>
<odometryFrame>/odom</odometryFrame>
<odometryRate>100.0</odometryRate>
<robotBaseFrame>base_footprint</robotBaseFrame>
<broadcastTF>true</broadcastTF>
</plugin>
</gazebo>
模型xacro加載到gazebo
沿用yaked大神博客中的gazebo.launch進行修改,把自己的模型修改到他的launch文件中,就可以了。gazebo加入上面的代碼