ROS安装PR2

2024-01-01 15:28:01

一、PR2介绍

PR2是Willow Garage公司设计的机器人平台,也是目前科研领域经常用到的机器人之一。PR2有两条手臂,每条手臂七个关节,手臂末端是一个可以张合的夹爪;PR2依靠底部的四个轮子移动,在头部、胸部、肘部、夹爪上分别安装有高分辨率摄像头、激光测距仪、惯性测量单元、触觉传感器等丰富的传感设备。在PR2的底部有两台八核电脑作为机器人各硬件的控制和通信中枢,并且都安装了Ubuntu和ROS系统。ROS原本是Willow Garage为复杂的PR2机器人平台设计的软件框架,依靠强大的ROS,PR2可以独立完成多种复杂的任务,例如PR2可以自己开门、找到插头给自己充电、打开冰箱取出啤酒、打简单的台球等等。只不过PR2价格高昂,而且能力还达不到商业应用的要求,如今主要用于学术研究。可见,PR2是ROS中元老级的机器人平台,所有软件代码依托于ROS,并且全部在ROS社区中开放源代码,为我们学习、应用ROS提供了丰富的资源。

二、PR2安装

ROS Indigo版本

sudo apt-get install ros-indigo-pr2-*

ROS kinetic版本

sudo apt-get install ros-kinetic-pr2-*

ROS melodic版本

sudo apt-get install ros-melodic-pr2-*

三、Gazebo中的PR2

使用如下命令启动gazebo仿真环境,并使用pr2.launch将机器人加载到gazebo中:

roslaunch gazebo_ros empty_world.launch
roslaunchpr2_gazebo pr2.launch

也可以使用pr2_gazebo功能包中的pr2_empty_world.launch一次性启动gazebo并加载机器人模型:

roslaunch pr2_gazebo pr2_empty_world.launch

目前PR2机器人还处于静止状态,可以运行键盘控制节点,控制PR2运动

roslaunch pr2_teleop teleop_keyboard.launch

启动键盘控制节点,控制机械臂:

roslaunch pr2_teleop_general pr2_teleop_general_keyboard.launch

说到机械臂运动,就不得不提到MoveIt!,PR2机器人的机械臂也可以通过MoveIt!控制。在安装完成的PR2功能包中,已经包含了PR2手臂的MoveIt!配置功能包,可以直接启动demo示例:

roslaunch pr2_moveit_config demo.launch

除此之外,我们也可以使用如下命令,通过MoveIt!控制gazebo仿真器中的PR2:

roslaunch pr2_gazebopr2_empty_world.launch
roslaunch pr2_moveit_config move_group.launch
roslaunch pr2_moveit_config moveit_rviz.launch

在PR2仿真环境中,我们已经获取到所有传感器的数据,并且可以控制PR2移动,接下来尝试使用PR2实现SLAM,这里以gmapping为例,创建一个启动gmapping节点的启动文件pr2_build_map.launch:

<launch>
   <node name="gmapping_node"pkg="gmapping"type="slam_gmapping" respawn="false" >
       <remap to="base_scan" from="scan"/>
       <paramname="odom_frame" value="odom_combined" />
   </node>
</launch>

然后在该文件所在的路径下直接运行以下命令:

roslaunch pr2_build_map.launch

文章来源:https://blog.csdn.net/qq_58060770/article/details/135324667
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。