ROS学习记录2:仿真【Gazebo】【urdf】

URDF文件简述

URDF(Unified Robot Description Format,统一机器人描述格式)是ROS中非常重要的机器人模型描述格式,URDF 是一种基于XML 规范、用于描述机器人结构的格式。根据该格式的设计者所言,设计这一格式的目的在于提供一种尽可能通用(as general as possible)的机器人描述规范。从机构学角度讲,机器人通常被建模为由连杆和关节组成的结构。连杆是带有质量属性的刚体,而关节是连接、限制两个刚体相对运动的结构。关节也被成为运动副。通过关节将连杆依次连接起来,就构成了一个个运动链(也就是这里所定义的机器人模型)。一个URDF 文档即描述了这样的一系列关节与连杆的相对关系、惯性属性、几何特点和碰撞模型。具体来说,包括:

  • 机器人模型的运动学与动力学描述
  • 机器人的几何表示
  • 机器人的碰撞模型

URDF的常用参数

标签 link

link标签用于描述机器人某个刚体部分的外观和物理属性,包括尺寸(size)、颜色(color)、形状(shape)、惯性矩阵(inertial matrix)、碰撞参数(collision properties)等。
visual标签用于描述机器人LINK 部分的外观参数。inertial标签用于描述link 的惯性参数,而collision标签用于描述link 的碰撞属性。

标签joint

joint标签用于描述机器人关节运动学和动力学属性,包括关节涌动的位置和速度限制。根据机器人的关节运动形式可以将其分为六种类型。
ROS学习记录2:仿真【Gazebo】【urdf】_第1张图片

实例URDF文件




	
		
			
			
				
			
			
				
			
		
		
			
			
				
			
		
		
			
			
		
	
	
		Gazebo/Gray
	

配置过程问题记录:

运行Gazebo出现cmd /opt/ros/melodic/lib/gazebo_ros/gzserver类似错误

请添加图片描述
执行命令重启服务器:

killall gzserver

urdf文件中定义gazebo插件的指令添加位置

直接代码片段:


......
......

	
		
			
			
				
			
		
	

	
		
		
		
	
	
		false
	

	
		
			true
			/
			100
			left_front_joint
			right_front_joint
			left_back_joint
			right_back_joint
			0.200
			0.120
			1
			cmd_vel
			odom
			odom
			base_footprint
			1
		
	
	

rosdep update连接不上的解决方法:

尝试了非常多的方法,使用本地文件更新的方法是最有效的,附上连接(为大佬点赞):
本地文件安装法

要注意一点:很多教程说不需要update这一步,确实,如果说没有使用ROS更多的功能的话确实不需要,甚至我自己在没有更新成功的情况下学习完古月ROS入门教程的21讲都没有遇到什么需要rosdep update这一步来解决的。但是在后期进一步学习ROS的仿真的时候就必须要解决这问题。

相关XML文件格式记录

这里给出了XML的基础语法连接,还要好好研读学习。
XML基本语法

你可能感兴趣的:(ROS,xml,c++)