仿真实验

Gazebo是一个功能十分强大的三维仿真软件,与ROS可以无缝连接进行机器人仿真。更多关于Gazebo的信息请参考Gazebo官网和ROS官网的Gazebo Wiki。本章讲解如何控制HandsFree的机器人模型在Gazebo的三维世界中进行移动。

在安装ROS的时候一般已经默认安装了Gazebo,ROS Indigo默认安装Gazebo2.0版本,ROS Kinetic默认安装Gazebo7.0版本。在如何配置环境章节已经安装了连接ROS与Gazebo的依赖包。
通过以下命令测试Gazebo是否能正常工作:

roslaunch gazebo_ros empty_world.launch

如果能正常启动Gazebo,并且可以成功加载一个空白的世界模型,那就表示Gazebo可以正常工作。
正常加载empty_world模型:
picture
此外,Gazebo对电脑显卡有一定要求,对Nvida显卡支持较好,对AMD的显卡支持较差,如果是AMD的显卡,复杂的世界模型一般加载不出来,例如下面的模型:

roslaunch gazebo_ros willowgarage_world.launch

一般AMD的显卡可以启动Gazebo,但是界面是黑屏状态,无法加载模型。由于本章节的演示所加载的模型较简单,故对本章节要进行的仿真演示没有影响。下面进入正文。

1 测试Gazebo

使用如下命令打开Gazebo并加载HandsFree的机器人模型:

roslaunch handsfree_gazebo gazebo_mini.launch

如果一切正常的话,可以在Gazebo的世界中看到HandsFree的Stone机器人模型。
picture

2 遥控机器人

打开一个新的终端,并运行:

roslaunch handsfree_teleop keyboard_teleop.launch

操作方式和前几节一致。

3 自主导航测试

关闭掉遥控终端,运行自主导航节点

roslaunch handsfree_gazebo move_base_amcl_mini.launch

然后就可以按照前几节讲的自主导航在RVIZ上发送目标点。

results matching ""

    No results matching ""