URDF建模原理

本文详细介绍了URDF(统一机器人描述符格式)的原理,包括其组成部分(Links、Joints)、D-H参数、link和joint的描述,以及xacro模型文件的增强特性,如精简代码、编程接口和宏定义。
摘要由CSDN通过智能技术生成

URDF建模原理

执行机构:人体的手和脚,直接面向工作对象的机械装置。
驱动系统:人体的肌肉和筋络,分则驱动执行机构,将控制系统下达的命令转换成执行机构需要的信号
传感系统:人体的感官和神经,主要完成信号的输入和反馈,包括内部传感器和外部传感系统
控制系统:人体的大脑,实现任务及信息的处理,输出控制命令信号
URDF:一种使用XML格式描述的机器人模型文件(Links:坐标系与集合关系   Joints:Links之间的连接关系)
URDF可以描述完成的工作空间,不局限于机器人
D-H参数是描述机械臂各个关节的位置

link:

①用于描述机器人某个刚体部分的外观和物理属性;
②描述连杆尺寸(size)、颜色(color)、形状(shape),惯性矩阵(index matrix),碰撞参数(collision properties)等
③每个link会成为一个坐标系

图中x,y,z的单位都为米,rpy单位为弧度

joint

①描述两个link之间的关系,分为六种类型;
②包括关节运动的位置和速度限制;
③描述机器人关节的运动学和动力学属性。
每一个关节有且只能连接两个link
如图,把Link2连接到了link1上;origin用来描述两个link之间的作用关系(xyz描述平移,rpy描述旋转);axis表示围绕哪个轴旋转;limit用来限制关节上下位的限制(lower、upper的单位为弧度,上图中即表示关节的运动弧度从-180到+180,velocity单位(若为旋转则为弧度每秒,平移为米每秒)

<robot>

①完整机器人模型的最顶层标签
②<link>和<joint>标签都必须包含在<robot>标签内
③一个完整的机器人模型,由一系列<link>和<joint>组成

URDF模型的进化版本--xacro模型文件

增强了整个模型解释器的能力及编程的特性,增强了建模的可编程性、可读性及复用性。
1、精简模型代码
①创建宏定义
②文件包含
2、提供可编程的接口
①常量
②变量
③数学计算
④条件语句
常量定义:<xarco:property name="M_PI" value="3.14159"/>
常量使用:<origin xyz="0 0 0" rpy="${M_PI/2}0 0"/>
数学计算:<origin xyz="0 ${(motor_length+wheel_length)/2} 0" rpy="0 0 0"/>
注:所有的数学运算都会转换成浮点数进行,以保证运算的精度。
宏定义:<xacro:macro name="name" parent="A B C">
                        .........
              </xacro:macro>
宏调用:<name A="A_value" B="B_value" C="C_value"/>
图中prefix表示左轮还是右轮,reflect表示轮子的位置(镜像关系)
文件包含:<xacro:include fliename="$(find mbot_description)/urdf/xacro/mbot_base.xacro" />

三维模型导出URDF

  • 11
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值