check_urdf
sudo apt install liburdfdom-tools
使用方法:进入对应的需要检查语法错误的urdf文件目录
check_urdf xxxx.urdf
附上ROS——urdf官方文档
ROS官方文档http://wiki.ros.org/urdf/XML
urdf_to_graphiz
使用方法:进入对应的需要检查语法错误的urdf文件目录
urdf_to_graphiz xxxx.urdf
一、创建功能包
cd ./catkin_ws/src/
catkin_create_pkg mbot_description urdf xacro
创建功能包的文件结构
cd ~/catkin_ws/src/mbot_description
mkdir urdf
mkdir meshes
mkdir launch
mkdir config
编辑launch启动文件
cd ~/catkin_ws/src/mbot_description/launch
sudo gedit display_mbot_base_urdf.launch
下面开始创建四轮圆柱式机器人模型
cd ~/catkin_ws/src/mbot_description/urdf
sudo gedit mbot_base.urdf
注意代码实际写入后需要删除注释内容,防止运行报错
查看模型
roslaunch mbot_description display_mbot_base_urdf.launch
解决方法:将mrobot_description功能包下launch文件夹中display_mrobot_chassis_urdf.launch这个launch文件里面的运行robot_state_publisher节点下的type由type="state_publisher"改为type=“robot_state_publisher”
其他错误解决方法:
一、
ERROR: cannot launch node of type [robot_state_publisher/robot_state_publisher]: robot_state_publisher
ROS path [0]=/opt/ros/kinetic/share/ros
ROS path [1]=/home/wxw/catkin_ws/src
ROS path [2]=/opt/ros/kinetic/share
sudo apt-get install ros-noetic-robot-state-publisher
//下载完成后更新软件源
sudo apt-get update
二、
sudo apt-get install ros-noetic-joint-state-publisher-gui
根据自己的ros版本更新GUI插件
三、
一切正常启动但是rviz界面不显示小车底盘模型
创建车轮
sudo gedit mbot_base.urdf
//在urdf下创建mbot_base.urdf文件
使用check_urdf 命令检查mbot_base.urdf 语法是否存在错误
使用roslaunch 命令查看模型
roslaunch mbot_description display_mbot_base_urdf.launch
注意此时若不显示模型,请参考上文错误三解决方法
结果如下
向小车模型增添摄像头
跟创建小车基本模型操作相同,进入urdf文件下创建一个名为mbot_with_camera.urdf 的文件并且添加代码模块
cd ~/catkin_ws/src/mbot_description/urdf
sudo gedit mbot_with_camera.urdf
摄像头模块代码
然后进入launch 文件下创建并编辑 display_mbot_with_camera_urdf.launch
cd ~/catkin_ws/src/mbot_description/launch
sudo gedit display_mbot_with_camera_urdf.launch
新创建的launch 文件相比较于一开始小车基本模型的启动文件(display_mbot_base_urdf.launch)
只是修改了文件的启动路径,使用新创建的launch文件对应增添过摄像头模块的urdf文件进行启动
roslaunch mbot_description display_mbot_with_camera_urdf.launch
而相对应的 urdf 文件也需要进行增添:
//增添的摄像头模块
加入雷达模块
同样的进入urdf文件下创建mbot_with_laser.urdf文件
cd ./catkin_ws/src/mbot_description/urdf
sudo gedit mbot_with_laser.urdf
添加雷达模块的构建代码
进入launch文件下创建编辑新的对应启动文件
cd ./catkin_ws/src/mbot_description/launch
sudo gedit display_mbot_with_laser_urdf.launch
加入Kinect模块
操作相同此外不再赘述
cd ./catkin_ws/src/mbot_description/urdf
sudo gedit mbot_with_kinect.urdf
创建对应启动文件
cd ./catkin_ws/src/mbot_description/launch
sudo gedit mbot_with_kinect.launch
查看整体效果
roslaunch mbot_description mbot_with_kinect.launch
由于我将所有模块都进行增添,所以我的模型如下
cd .././urdf
sudo gedit mbot_base_whole.urdf
???
进入launch创建对应启动文件
sudo gedit display_mbot_with_whole.launch
查看模型
roslaunch mbot_description display_mbot_with_whole_urdf.launch