机器人操作系统ROS目前最受关注的两个模块是导航(Navigation)和机械臂控制(MoveIt!)。
其中,机械臂控制模块(后面简称MoveIt)可以让用户快速建立机械臂模型并实现机械臂的控制(包括建模、运动学求解、运动规划、避障等)。
后续我将分几篇博客分别介绍如何一步步使用MoveIt控制自己的机械臂,算是对以前的学习内容的记录和分享。
关于MoveIt最全面的讲解可以参考MoveIt官方网站,推荐大家多参考官方文档和例程,这里的博文系列权当简介和入门。
如果用几个特点来概括MoveIt,主要有:
1.它是属于ROS系统的一部分,用于控制多关节机械臂;
2.提供了一系列成熟的插件和工具,可以实现机械臂控制的快速配置;
3.封装了大量API,方便用户在MoveIt模块上进行二次开发,进而做出更多有意思的应用。
这里借用官方经典图例做简单说明,如下如:
上图可以看出:
1.MoveIt 的核心节点(node)为move_group,外围的几个部分分别为:ROS Param Server, Robot
Controllers, Robot 3D Sensors, User Interface, Robot Sensors,其中:
ROS Param Server:这部分载入的是用户定义的模型文件(xacro或urdf)和一些配置文件。(重要)
Robot Controllers:
这部分可以看做是和真正的机器人部分(硬件控制接口)打交道的部分,即运动规划的数据由此发给机器人驱动部分,后续会详细讲解。(重要)
Robot 3D Sensors: 这部分作用是载入RGB-D相机或激光雷达等获得的点云数据用于机械手的抓取或避障等。
User Interface:这部分是用户接口,MoveIt提供一系列的API供用户完成自定义的功能,这里主要。(重要)
Robot Sensors:这部分是接收机械臂的传感器数据,然后预估出机器人的状态并发布。
全部0条评论
快来发表一下你的评论吧 !