购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 用于机器人建模的ROS软件包

ROS提供了一些很好的软件包,可以用来构建3D机器人模型。在本节中,我们将讨论一些常用于构建和建模机器人的重要ROS软件包。

urdf是机器人建模最重要的ROS软件包。这个软件包包含一个用于 统一机器人描述格式 Unified Robot Description Format URDF )的C++解析器,它是一个表示机器人模型的XML文件。它还有一些其他的组件。

●urdf_parser_plugin:这个软件包实现了写入URDF数据结构的方法。

●urdfdom_headers:这个组件提供了使用urdf解析器的核心数据结构头文件。

●collada_parser:这个软件包通过解析一个Collada文件来填充数据结构。

●urdfdom:这个组件通过解析URDF文件来填充数据结构。

我们可以使用URDF来定义机器人模型、传感器和工作环境,使用URDF解析器对其进行解析。我们只能使用URDF描述一个类似树状连杆结构的机器人,也就是说,机器人会有刚性连杆,并通过关节连接。我们无法用URDF表达柔性连杆。URDF由特殊的XML标签构成,我们可以使用解析器程序解析这些XML标签以进行进一步处理。在后面的部分我们会使用URDF进行建模。

●joint_state_publisher:这个工具在使用URDF设计机器人模型时非常有用。它包含一个名为joint_state_publisher的节点,可以读取机器人模型描述,查找所有关节,并将关节值发布到所有非固定关节。每个关节的值也有不同的来源。我们将在接下来的章节中更详细地讨论这个软件包及其使用情况。

●joint_state_publisher_gui:这个工具与joint_state_publisher软件包非常相似。它提供了与joint_state_publisher包相同的功能,除此之外,还实现了一组滑块,用户可以使用它与每个机器人关节交互,使用RViz可视化输出。在这种情况下,关节值的来源是滑块GUI。在设计URDF时,用户可以使用该工具验证每个关节的旋转和平移。

●kdl_parser:这个软件包包含一个解析器工具,用于从机器人的URDF模型中构建一个 运动学和动力学库(KDL) 树。KDL是一个用于解决运动学和动力学问题的库。

●robot_state_publisher:该软件包可以读取当前机器人的关节状态,并发布由URDF构建的运动学树中每个机器人连杆的3D姿态。机器人的3D姿态以ROS tf(transform)的形式发布。tf发布了机器人各坐标系(也叫参考系)之间的关系。

●xacro:xacro是XML Macros的缩写,可理解为URDF加上若干插件。xacro包含的插件可以让URDF变得更简短、可读性更好,并且可以用于构建复杂的机器人描述。利用ROS相应的工具,可以在需要的时候将xacro转换为URDF。我们将在以后的章节学习xacro及其用法。

现在,我们已经定义了机器人3D建模相关包的列表,下面准备使用URDF文件格式解析我们的第一个模型。 i7dMCURbnQT8kpynudhFQaW7jV1OO/jzNy4Yc3L22dDMGPCtDAooYCoYfSygTjfN

点击中间区域
呼出菜单
上一章
目录
下一章
×