首发于古月居
古月私房课 | ROS机械臂开发中的主角MoveIt!

古月私房课 | ROS机械臂开发中的主角MoveIt!

~欢迎关注~
微信公众号:古月居
新浪微博:古月春旭
知乎专栏:古月居
原文链接:古月私房课 | ROS机械臂开发中的主角MoveIt!

大家好,这里是《ROS机械臂开发:从入门到实战》的第四讲——ROS机械臂开发中的主角MoveIt!,我是主讲人胡春旭。

本讲我们将从以下两个部分进行讲解。

首先我们来认识下ROS机械臂开发中的绝对主角——MoveIt!

ROS最早因PR2机器人而生,MoveIt!也是同样的出身,由PR2机器人中机械臂部分的软件集成而来。

MoveIt!目前已经支持众多传统工业机器人、协作机器人、人形机器人。

应用如此广泛的MoveIt!并不是一个简单的功能包,而是由一系列功能包组成的集成化开发平台。

传统工业机器人应用中,我们需要通过示教器确定机器人运动中的所有路径点,拖动施教并不能颠覆这种模式,这也是MoveIt!要解决的核心问题:已知当前状态和目标状态,如何自动完成运动规划。

针对运动规划这一核心问题,MoveIt!主要提供三大核心功能:运动学、路径规划、碰撞检测。

开发者可以通过程序接口或者上位机完成指令的发布,Moveit!中的核心节点move_group完成各功能算法的集成,并输出规划完成的运动轨迹。

MoveIt!的开发分成四个步骤,首先我们需要按照上讲的内容创建机器人模型,然后通过工具完成模型的配置,接下来添加关节上的控制器插件,最后才是顶层运动控制的实现。

URDF模型的创建上讲已经详细讲解过了,本讲第二部分主要介绍如何通过MoveIt!的可视化工具完成模型的配置。

Setup Assistant可视化工具可以通过rosun命令启动,之后按照界面左边列表的步骤依次完成配置,部分步骤可以跳过。

第一步需要将配置的URDF模型导入工具,然后在第二步中生成自碰撞检测矩阵。

第三步的规划组是最重要的配置过程,需要将机械臂的运行学求解链设置清楚,不然机械臂很可能动不起来。

第四步可以预定义一些位姿,方便后续编程调用。

最后两步设置作者信息,就可以导出配置功能包了,放置在工作空间当中,并完成编译。

为验证配置是否正确,我们可以运行自动生成的demo演示,使用如下命令启动后,就可以在界面中拖动设置机器人位姿并控制运动啦。

点击“Plan”进行规划,点击“Execute”机械臂开始按照规划轨迹运动。

以上就是本讲的内容概要,详细配置过程和操作视频请见课程视频。

更多精彩,欢迎大家关注“古月居”。


更多内容欢迎关注:
微信公众号:古月居 (guyue_home)
新浪微博:古月春旭
知乎专栏:古月居
或访问古月居网站

古月居 - 怕什么真理无穷,进一寸有一寸的欢喜www.guyuehome.com

发布于 2019-04-01

文章被以下专栏收录