Moveit!学习
sudo apt install ros-melodic-moveit
使用 Solidworks 设计完成机械臂后
分组完成后,建立坐标原点与坐标系,使用插件导出urdf模型。
这个功能包可以直接编译,也提供了一个可视化的演示。
使用 Moveit! Setup Assistant 工具
rosrun moveit_setup_assistant moveit_setup_assistant
对于自己设置的机械臂,需要创建一个新的功能包。
选择urdf文件,load以后可以在右侧小窗口看到
Self-Collisions
碰撞检测采样点,默认的10000个就行,点击Generate Collision Matrix
虚拟关节,这里用不到
如果把机械臂固定到底盘上会用到,这是个固定在世界上的机械臂不需要配置
Planning Groups
很重要的一个步骤,添加规划组,可以分为两个部分,夹爪和下面的几个轴,可以分开来。
5个轴的纯机械臂的部分,使用机械臂的控制方法,正运动学逆运动学,做控制。
夹爪就是个简单的运动,不需要复杂的算法。
先添加纯机械臂的,点击Add Group
5个joint把6个link连接到一起,链条结构,配置link的链条,点击Add Kin. Chain
把姿态用字符串保存起来,方便调用
终端夹具
在运动规划时候不需要考虑的关节运动
launch 里有很多生成的文件,config文件夹里是配置文件。
srdf也是用来描述机器人信息的。
fake_controller是自动生成的控制器,可以在demo里实现对机械臂的可视化,仿真还要自己去配置gazebo的控制器。
使用这个生成的简单控制器测试配置是否正确
启动后,moveit提供了一个在rivz的可视化的界面,加障碍物,设置运动规划库之类的都可以用鼠标操作,还是很好看的。
这个demo没问题说明配置没啥问题了。
在机械臂仿真时,需要配置一个关节轨迹控制器,接收Moveit规划出来的轨迹,把轨迹通过这个控制器控制到每个机器人的关节,从而达到运动目标。
接收moveit规划出来的轨迹,
Joint Trajectory Controller
关于控制器的描述,在yaml文件里,