Moveit!学习

安装

sudo apt install ros-melodic-moveit

使用 Solidworks 设计完成机械臂后

分组完成后,建立坐标原点与坐标系,使用插件导出urdf模型。

这个功能包可以直接编译,也提供了一个可视化的演示。

生成配置文件

使用 Moveit! Setup Assistant 工具

rosrun moveit_setup_assistant moveit_setup_assistant 

Start

对于自己设置的机械臂,需要创建一个新的功能包。

选择urdf文件,load以后可以在右侧小窗口看到

Self-Collisions

碰撞检测采样点,默认的10000个就行,点击Generate Collision Matrix

Virtual Joints

虚拟关节,这里用不到

如果把机械臂固定到底盘上会用到,这是个固定在世界上的机械臂不需要配置

Planning Groups

很重要的一个步骤,添加规划组,可以分为两个部分,夹爪和下面的几个轴,可以分开来。

5个轴的纯机械臂的部分,使用机械臂的控制方法,正运动学逆运动学,做控制。

夹爪就是个简单的运动,不需要复杂的算法。

先添加纯机械臂的,点击Add Group

5个joint把6个link连接到一起,链条结构,配置link的链条,点击Add Kin. Chain

Robot Pose

把姿态用字符串保存起来,方便调用

End Effectors

终端夹具

Passive Joints

在运动规划时候不需要考虑的关节运动

ROS Control

Simulation

自动生成的功能包

launch 里有很多生成的文件,config文件夹里是配置文件。

srdf也是用来描述机器人信息的。

fake_controller是自动生成的控制器,可以在demo里实现对机械臂的可视化,仿真还要自己去配置gazebo的控制器。

使用这个生成的简单控制器测试配置是否正确

启动后,moveit提供了一个在rivz的可视化的界面,加障碍物,设置运动规划库之类的都可以用鼠标操作,还是很好看的。

这个demo没问题说明配置没啥问题了。

接入Gazebo仿真

在机械臂仿真时,需要配置一个关节轨迹控制器,接收Moveit规划出来的轨迹,把轨迹通过这个控制器控制到每个机器人的关节,从而达到运动目标。

接收moveit规划出来的轨迹,

Joint Trajectory Controller

关于控制器的描述,在yaml文件里,

Last updated