【睿尔曼-RealMan】睿尔曼超轻量仿人机械臂-ROS启动机械臂的Moveit
Forrest 2023-11-27
1. 机械臂ROS包介绍
2. 使用前环境准备
系统:Ubuntu 18.04或Ubuntu 20.04
ROS版本:melodic或noetic
其余软件:Moveit!已安装;Gazebo可用;ros_control插件可用
3. 源码的安装编译
新建名称为ws_rmrobot的工作空间,执行如下命令:
mkdir -p ~/ws_rmrobot/src
cd ~/ws_rmrobot/src/
然后将提供的rm_robot源码包拷贝到ws_rmrobot工作空间的src目录下或将源码包拷贝到自己创建的其他工作空间的src目录下:
图3-1 将rm_robot源码包拷贝到ws_rmrobot/src下
通过rosdep安装源码包依赖,执行以下命令(若为ROS Noetic版本则将命令中的melodic改为noetic):
rosdep install -y --from-paths . --ignore-src --rosdistro melodic -r
使用catkin工具配置工作空间并进行编译,执行如下命令:
cd ~/ws_rmrobot
catkin init
catkin build rm_msgs
catkin build
编译完成之后如下图所示:
图3-2 rm_robot源码包编译成功
4.在rviz中显示机械臂模型
4.1 机器人描述功能包
在rm_robot源码包中包含了rm_65_description功能包,其中有创建好的机器人模型和配置文件。
rm_65_description功能包中主要包含urdf、meshes、launch和config四个文件夹。
▶urdf:用于存放机器人模型的URDF或xacro文件。
▶meshes:用于放置URDF中引用的模型渲染文件。
▶launch:用于存放相关启动文件。
▶config:用于保存rviz的配置文件。
4.2在rviz中显示模型
在rm_65_description功能包launch文件夹中已经创建用于显示rm_65模型的launch文件rm_65_description/launch/display_rm65.launch。
打开终端进入工作空间执行以下命令运行该launch文件:
cd ~/ws_rmrobot
source devel/setup.bash
roslaunch rm_65_description display.launch
如果一切正常,可以在打开的rviz中看到如图4-1所示的机器人模型。
图4-1 在rviz中显示RM65-B机械臂模型
运行成功后,不仅启动了rviz,而且出现了一个名为“joint_state_publisher”的UI。这是因为我们在启动文件中启动了joint_state_publisher节点,该节点可以发布每个joint(除fixed类型)的状态,而且可以通过UI对joint进行控制。所以在控制界面中用鼠标滑动控制条,rviz中对应的机械臂关节就会转动。
如果rviz中未显示模型,则手动修改“Fixed Frame”为“base_link”,然后点击左侧下方的Add按钮在弹出的界面中找到“RobotModel”添加即可,如图4-2~4-3所示:
图4-2 修改FixedFrame为base_link
图4-3 rviz中添加RobotModel
5.启动MoveIt!
5.1 MoveIt!简介
在实现机械臂的自主抓取中机械臂的运动规划是其中最重要的一部分,其中包含运动学正逆解算、碰撞检测、环境感知和动作规划等。常见机械臂的运动规划大都采用的是ROS系统提供的MoveIt! 规划。
MoveIt! 是ROS系统中集合了与移动操作相关的组件包的运动规划库。它包含了运动规划中所需要的大部分功能,同时其提供友好的配置和调试界面便于完成机器人在ROS系统上的初始化及调试。
官方网站:MoveIt Motion Planning Framework,上边有MoveIt!的教程和API说明。
5.2安装MoveIt!
MoveIt!需要安装才能使用,如果未安装,请执行如下命令进行安装(若为ROS Noetic版本则将命令中的melodic改为noetic)。
sudo apt install ros-melodic-moveit
sudo apt install ros-melodic-moveit-*
5.3运行RM65-B机械臂的MoveIt!演示demo
在rm_robot源码包中包含了rm_65_moveit_config功能包,它是使用Setup Assistant工具根据机械臂URDF模型创建生成的一个MoveIt!配置的功能包,它包含了大部分MoveIt!启动所需的配置文件和启动文件,以及包含一个简单的演示demo。
打开终端进入工作空间执行以下命令运行RM65-B机械臂的MoveIt!演示demo:
cd ~/ws_rmrobot
source devel/setup.bash
roslaunch rm_65_moveit_config demo.launch
启动成功后,可以看到如图5-1所示的界面。
图5-1 MoveIt! demo的启动界面
5.3.1 拖动规划
拖动机械臂的前端,可以改变机械臂的姿态。然后在Planning标签页中点击“Plan & Execute”按钮,MoveIt!开始规划路径,并且控制机器人向目标位置移动,从右侧界面可以看到机器人运动的全部过程(见图5-2)。
图5-2 拖动规划的运动效果
5.3.2 选择目标姿态规划
在Planning标签页中点击Goal State的下拉列表可以选择机械臂的目标姿态,然后点击“Plan & Execute”按钮,MoveIt!开始规划路径,并且控制机器人向目标位置移动,从右侧界面可以看到机器人运动的全部过程(见图5-3)。
撰写评论