(四)turtlebot3控制机器人在实际环境下建图

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ktigerhero3/article/details/80722482

本文实现两个功能,实际控制机器人及在实际环境下建图
实际控制机器人有两种方式,一种是在树莓派上安装和运行键盘操作程序.另外一种是在电脑上运行键盘操作程序
以下TurtleBot3 SBC 代表树莓派,
Remote PC 代表远程电脑
首先在树莓派上使用键盘控制机器人运动,步骤如下

1控制机器人运动

1.1Remote PC ssh连接到树莓派

树莓派ip地址为:192.168.233.131

ssh jll@192.168.233.131

Remote PCip地址为:192.168.233.111

1.2树莓派上启动roscore,并配置ip地址

以树莓派作为roscore的主机,如下配置

Remote PC 的~./bashrc中加入

export TURTLEBOT3_MODEL=burger
export ROS_MASTER_URI=http://192.168.233.131:11311
export ROS_HOSTNAME=192.168.233.131

树莓派的~./bashrc中加入

export TURTLEBOT3_MODEL=burger
export ROS_MASTER_URI=http://192.168.233.131:11311
export ROS_IP=192.168.233.111

然后都source .bashrc

1.3Remote PC显示turtlebot3状态(包括显示机器人和激光状态等)

roslaunch turtlebot3_bringup turtlebot3_model.launch

1.4树莓派上启动turtlebot3

roslaunch turtlebot3_bringup turtlebot3_robot.launch

1.5树莓派上启动键盘操作程序

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

2实际环境下建图

按照以下步骤进行建图

2.1[Remote PC]上启动turtlebot3_slam包

roslaunch turtlebot3_slam turtlebot3_slam.launch

2.2树莓派上启动turtlebot3

roslaunch turtlebot3_bringup turtlebot3_robot.launch

2.3树莓派上启动键盘操作程序

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

启动后效果如图
这里写图片描述

2.4保存地图

启动后保存地图

rosrun map_server map_saver -f ~/map

生成map.pgm和map.yaml
用于导航用
通过控制机器人运动后保持的地图如下
这里写图片描述

3实际环境下的导航

有地图后就要用导航算法进行导航,关闭slam节点
打开导航包导航节点

roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml

初始时如图
这里写图片描述

有此时需要设置初始位置,点击2D Pose Estimate按钮,并拖动地图上的方向来设置地图上的大致位置

如图这里写图片描述

初始话好后就可以导航了,点击2D Nav Goal按钮,并拖动设置方向,如图
这里写图片描述

猜你喜欢

转载自blog.csdn.net/ktigerhero3/article/details/80722482