本文基于Turtlebot3中已经安装好基本的运行环境,PC端已经安装好ROS环境。
Turtlebot3共有Burger、Waffle和Waffle Pi三种型号。
1、将Turtlebot3与PC连接到同一个子网下,PC端即可用ssh robot@xxx.xxx.xxx.xxx命令来连接机器人,“robot”为机器人端的用户名。
2、在机器人端执行(在执行过ssh命令的终端执行命令即可控制机器人端,可同时连接多个终端):
sudo vim ~/.bashrc
加入以下内容:
export ROS_MASTER_URI=http://PC端的IP地址:11311
export ROS_HOSTNAME=机器人端的IP地址
在PC端执行:
sudo vim ~/.bashrc
加入以下内容:
export ROS_MASTER_URI=http://`hostname -I | awk '{print $1}'`:11311
export ROS_HOSTNAME=`hostname -I | awk '{print $1}'`
这样PC就可以与机器人进行通信了。
在机器人端执行以下命令以打开机器人的基本功能:
roslaunch turtlebot3_bringup turtlebot3_robot.launch
在PC端执行以下命令使PC进入ROS系统:
roscore
此时在PC端执行以下命令可以查看机器人发布的topic(机器人与PC通过topic来进行通信,PC端订阅不同的topic来实现不同的功能),如果正常的话,PC端将看到许多topic。
rostopic list
此时在PC端执行以下命令设置机器人的型号:
export TURTLEBOT3_MODEL=burger
#此处的burger根据机器人型号因人而异。
接着执行以下命令便可使用PC来控制机器人进行移动:
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
出现以下内容说明已经成功在PC端打开机器人的遥控器(wxad四个键分别代表前后左右,按一下可以使机器人在某个方向获得持续的速度,按多次或长按可以加大速度,s可以使机器人停止移动):
该文章主要帮助基本环境已经完善的朋友学习控制Turtlebot3移动,其中有很多不足。