Unified Robotics Description Format(机器人统一描述格式--学习记录)

URDF 入门

什么是 URDF?

URDF, 或统一的机器人描述格式, 是一个 XML 规范用于学术界和工业界的模型多体系统, 如机器人机械手武器制造装配线和仿真机器人的游乐园。URDF 是特别受欢迎的 ROS, 或机器人操作系统的用户-一个框架, 为 URDF 模型提供标准支持。您可以将 URDF 模型导入到Simscape™ Multibody™环境中, 例如, 用于模拟、分析和控制设计任务。见人形机器人的典型例子为一个简单的用例。

仿人机器人 URDF 模型

Unified Robotics Description Format(机器人统一描述格式--学习记录)_第1张图片

URDF 文件中有什么?

与其他类型的 xml 文件一样, URDF 文件包含各种 xml 元素, 如、 、 、嵌套在称为 XML 树的分层结构中。例如, 元素据说是元素的孩子, 并相互, 元素的的父母和元素。


	
		...
	
	
		...
	
	
		...
	

子元素, 如下, 可以反过来有自己的子元素。例如, 元素有子元素元素有子元素元素有子元素。此类子元素链对于定义父元素的属性和行为至关重要。


	
		
			...
		
		
			
				...
			
			
				
			
		
	
	...

除了子元素之外, URDF 模型中的 XML 元素还可以具有属性。例如, , 和元素都有属性-一个字符串, 用来标识元素。元素具有属性rgba--带有链接颜色的红色、绿色、蓝色和 alpha (或不透明度) 值的数字数组。这些属性帮助完全定义模型中的元素。


	
		
			...
		
		
			
				...
			
			
				
			
		
	
	...

XML 层次结构和运动学树

URDF 链接通过分层结构中的节点连接, 而不像通过在 URDF 文件中嵌套 XML 元素而形成的。元素通过元素来强制执行这些层次结构, 它将标识一个链接作为父级, 另一个作为子项。父链接本身也可以是子级链接, 而子节点则是模型中其他链接的家长。

联合元素


	
		
	
	
		
	
	
		
	

您可以使用称为连接关系图的示意图来可视化链接之间的连接。这个数字显示了一个例子。圆圈表示链接, 箭头表示关节。箭头根标识父节点, 箭头提示子节点。连通图揭示了底层模型的拓扑结构-这里是一个具有两个分支的简单运动树。

运动树的连通图

Unified Robotics Description Format(机器人统一描述格式--学习记录)_第2张图片

 

模型拓扑在 URDF 中很重要。模型的连通图只能以运动树的形状为形式, 即运动链, 分支或不分枝, 总是开放的。运动回路, 每一个封闭链组成的连接两端的另一开放链, 是不允许的。此限制会影响元素在 URDF 模型中的连接方式。

该限制转换为以下规则: no 元素可作为多个元素中的子节点。换句话说, 没有元素可以在模型的连接图中有多个父元素。只有根链接 (在连接关系图的起始处) 可以有许多不同于一个 (零) 的父节点。模型中只允许有一个根链接。

运动回路 URDF 例


	
		
	
	
		
	
	
		
	
	
		
	

该代码在两个元素、联合joint Cjoint D中声明链接link D, 作为子节点。link D元素有两个父级, 形成一个运动回路。该模型违反了 URDF 连接规则, 并且无效。图中显示了模型的连通关系图。

运动回路的连通图

Unified Robotics Description Format(机器人统一描述格式--学习记录)_第3张图片

 

必需的和可选的 URDF 实体

并非 URDF 规范中列出的所有元素和属性都是必需的。一些, 如, 是可选的。下面的代码演示可以使用的各种元素和属性, 以及可选的绿色颜色。

在可选元素中显示为必需的元素和属性仅在使用可选元素时才如此。可选属性的默认值以圆括号和斜体字体显示。请注意, 此代码仅作为引用包含, 并且它不表示有效的 URDF 模型。省略号 ("...") 在 URDF 模型中无效, 仅用于中断长行代码以便于查看。


	
		
			
			
			
		
		
			
			
				
				
				
				
			
			
				
				
			
		
		
			
			
				
				
				
				
			
		
	
	
		
		
		
		
		
		
		
		
		
		
	

 type prismatic和外卷的元素revolute所需的。

创建简单的 URDF 模型

例如, 创建一个双摆的 URDF 模型。在选择的文本编辑器中, 使用下面显示的代码创建一个文件, 并将该文件另存为double_pendulum.urdf在一个方便的文件夹中。在文件名中包含文件扩展名。一个单独的示例演示如何将此模型导入Simscape多体环境 (请参阅导入简单 URDF 模型).

 


	>
	
		
			
			
			
		
		
			
			
				
			
			
				
			
		
	
	
		
			
			
			
		
		
			
			
				
			
			
				
			
		
	
	
		
			
			
			
		
		
			
			
				
			
			
				
			
		
	

	>
	
		
		
		
		
	
	
		
		
		
		
		
	

 

关于 URDF 模型

该代码定义了一个名为 "linkage" 的多体模型。该模型包含三链接, 命名的link A,link Blink C, 连接通过两个关节, 命名为joint Ajoint B关节的元素确定链接连接方式:link A连接到link B ,link B连接到link Clink A没有父链接-即, 它仅作为子元素出现在元素中, 因此是根链接。

link A元素定义了链路的惯性 (ixxiyyizz) 的质量和力矩。惯性产品 (ixy、 ixziyz) 未指定, 且 URDF 默认值为零。link Avisual元素定义了用于模型可视化的几何类型和材料颜色。这种情况下的几何是一个框, 宽度和厚度为0.5米, 高度为0.1米。链接元素指定从链接参考框架到惯性和可视参考帧的转换。相似的元素适用于link Blink C.

元素的type属性定义了关节为连续-一种不受运动限制的外卷接头。元素指定连接相对于父链接元素的参照框架的位置。例如,joint A元素偏移沿-Z轴的联合0.05 m 相对于link A的原点参照框架。嵌套在每个joint元素内的axis元素定义了连接的旋转轴, 作为笛卡尔向量[0, 1, 0]+Y.

图中显示了模型的组件-链接和连接, 以及它们包含的各种帧。R表示一个链接参考框架, I 一个链路惯性框架, V 一个链接视觉框架。J 表示一个联合参考框架-按定义与子链接的参考框架相吻合。惯性和视觉帧被偏移到链接的中心和连接框架到他们的下边缘。

双摆模型组件

Unified Robotics Description Format(机器人统一描述格式--学习记录)_第4张图片

 

获取要导入的 URDF 模型

您可以, 但一般不必手动创建自己的 URDF 文件。对于更复杂的模型, 最好从其他源获取 URDF 文件。机器人制造商和顾问经常为他们的机器人系统提供 URDF 模型。CAD 应用程序, 如 SolidWorks®和 PTC®Creo™支持将 CAD 组件转换为 URDF 模型的 URDF 出口商。在使用复杂的机器人模型时, 请考虑这些选项, 这可能不是手工创建的简单方法。

另见

smimport

相关主题

  • URDF 导入
  • CAD 转换

参看网址:https://ww2.mathworks.cn/help/physmod/sm/ug/urdf-model-import.html

你可能感兴趣的:(Unified Robotics Description Format(机器人统一描述格式--学习记录))