URDF文件,是ROS系统中的,一种机器人的描述文件。全称:Unified Robot Description Format 它以HTML的形式定义一个机器人。包含的内容有:连杆、关节名称,运动学参数、动力学参数、可视化模型、碰撞检测模型等。 可以从我们的附件中下载 当然,你的源文件现在在Pro-E中,这个问题不大,可以用IGS或者STEP等格式转换成SolidWorks可以打开的格式(装配体的相对位置还在,但装配关系会丢掉)。之后就可以继续操作了。 这个真的简单易用,你安装好SolidWorks后,再安装这个插件,重新打开SW,你就会发现里面多了一个叫做SW2URDF的插件,勾选启用之。 如上图操作之后就可以进入这个插件的界面: 如上图所示,你可以设置每个连杆、关节名称、对应的模型文件、属性、旋转轴、参考坐标系(可以采用自己预先定义的坐标系,也可以自动生成)等。 当你设置好所有连杆后,点击Preview and Export,便会自动生成各坐标轴(如果没有自己预先指定的话) 之后会弹出让你具体设置连杆与关节参数的界面: 结束之后,便会生成一个package,包含launch文件,每个连杆STL文件,URDF文件,纹理(没用过)。 这个package是可以直接在ROS中运行的。效果如图: (我好像少设置了一个关节) 二)进阶篇/强迫症篇 上面初级篇可能存在几个问题:
首先,要了解URDF文件的书写格式: 以上几个是我平时会用到的URDF内容。其实很简单,只需要按照html的tag来写每部分的内容即可。包括相应模型文件的位置等。 之后就可以开始动手写了。这个难度不大,我就直接说如何解决上面提到的几个问题吧:
我尝试过无数种方法后,最终确定的一条有效方法如下:
例如,我写的这个SDA5F机器人的模型文件,两条臂采用的是同一个xacro文件。
可视化模型:尽量精细、漂亮,最好与实际机器人尺寸相同; 碰撞模型:尽量精简、可以适当大于机器人尺寸。 所以,在自己写URDF的时候可以充分利用这一特性。
这时候有两种做法: a) 在blender中将所有连杆的坐标系设置成同向(所有关节0°时),这样你在URDF中装配的时候就没有pi了; b) 采用xacro可参数化的特点,定义一个常数变量pi=3.14159265359(甚至更高精度都可以),这样既精简又可靠。 最后,秀一波我做的SDA5F模型: 欢迎各位加入我们的机器人探讨QQ群: 奋斗的机器人: 317366356 |
招标网平台地图|Archiver|手机版|机械设计招标网 ( 京ICP备17072296号-4 )
GMT+8, 2024-12-22 21:11
Powered by Discuz! X3.5
© 2001-2024 Discuz! Team.