TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf ·...

32
北京智能佳科技有限公司 www.bjrobot.com 010-82488500 1 TurtleBot3 burger (汉堡)ROS 平台 用户使用手册 本:0.2.3 修订日期:2017/12/27 者:北京智能佳科技有限公司

Transcript of TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf ·...

Page 1: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 1

TurtleBot3 burger(汉堡)ROS 平台

用户使用手册

版 本:0.2.3

修订日期:2017/12/27

作 者:北京智能佳科技有限公司

Page 2: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 2

修订历史记录

版本 时间 说明

0.2.1 2017/12/06 增加 burger 机器人网络配置说明

0.2.2 2017/12/06 增加 burger 仿真功能的说明

0.2.3 2017/12/27 更名为《TurtleBot3 burger(汉堡)ROS 平台

用户使用手册》

Page 3: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 3

目录

汉堡(树莓派)系统安装 ........................................................................... 7

1.镜像(.img)下载: .............................................................................................. 7

2.制作 Linux 启动盘(SD 卡) ................................................................................. 9

3.系统安装 ................................................................................................................10

4.网络配置 ................................................................................................................11

Ubuntu16.04 系统镜像制作 ...................................................................... 12

在笔记本上安装 Ubuntu 系统(Ubuntu16.04) ...................................... 15

ROS 安装 .................................................................................................... 16

1.版本选择 ................................................................................................................16

2.软件中心配置 ........................................................................................................16

3.添加源 ....................................................................................................................17

4.安装 ROS .................................................................................................................17

5.初始化 ROS ............................................................................................................17

6.测试 ROS .................................................................................................................17

OpenCR 软件配置 ...................................................................................... 20

1.编译器设置 ...........................................................................................................20

2.安装 Arduino IDE................................................................................................20

3.运行 Arduino ........................................................................................................20

4.从 Boards Manager 安装 OpenCR1.0 包 ...........................................................21

5.端口设置 ...............................................................................................................23

开始使用 .................................................................................................... 24

1.启动 Turtlebot3 ......................................................................................................24

2.启动 Turtlebot-burger ...........................................................................................24

3.运行 RViz ................................................................................................................24

远程控制 .................................................................................................... 26

1.说明.........................................................................................................................26

2.方法.........................................................................................................................26

3.结果.........................................................................................................................26

SLAM........................................................................................................... 27

1.说明.........................................................................................................................27

2 通过远程操作创建地图 .......................................................................................27

Page 4: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 4

3.将地图保存到文件................................................................................................27

导航 ............................................................................................................ 28

1.说明.........................................................................................................................28

2.准备.........................................................................................................................28

3.开始导航 ................................................................................................................28

仿真 ............................................................................................................ 30

1.安装 TurtleBot3 Simulation ...................................................................................30

2.启动仿真 ................................................................................................................30

3.Gazebo 仿真 ...........................................................................................................31

Page 5: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 5

重要信息

注意:在安装机器人之前必须先看电子文档,如果由于不看文档

造成接线出现问题一律不再报修范围内;智能佳不对用户因疏忽或误

用产品而导致的任何损失或损害负责。

请在开始之前请仔细阅读电子使用说明文档。

1.严格按照说明手册以及官方网站的网页教程操作;

教程网址 1: http://www.rosrobot.cn/

教程网址 2:http://emanual.robotis.com/docs/en/platform/turtlebot3/overview/

2.在接线的时候要断电操作,要反复确认,确保接线(电源线)正确,

电源正负正确,因接线问题造成机器人损害不在报修范围内。

3. 只能使用套件中包含的电池和充电器。电池一个月最少要充电一

次,长时间搁置导致电池过放而不能正常使用也不再报修范围内。

4.当机器人运行时,理清线路,谨防无意间拖拽机器人造成机器人损

坏。

5.请勿将机器人放置在靠近水源,热源或火源的地方。

6.冬天容易产生静电,在接触控制板时一定先去除静电,如果由于静

电作用造成损坏也不在报修范围之内。

7.文档中或官方网站教程中未提及的做法,要提前询问相关技术人员,

谨慎操作。

Page 6: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 6

安装注意事项

上电前一定要反复确认正负极是否正确,如果接反,树莓派板子

就报废了。这个不在报修范围内,请谨慎操作!

2.连接 wifi操作步骤:

1):输入以下命令:

cd /etc/wpa_supplicant/

ls

wpa_passphrase 你的 wifi 名字 你的 wifi 密码 >wpa_supplicant.conf

ls

解释:

切换到/etc/wpa_supplicant/目录下

ls 查看当前文件夹下的文件

写入 wifi 配置文件

ls 再次查看目录,发现已经增加 wpa_suppliact.conf 文件

2):重启

3)点击右上角的 wifi 连接,点击 wifi,输入密码,回车即可。

Page 7: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 7

汉堡(树莓派)系统安装

1.镜像(.img)下载:

就 burger 而言,树莓派需安装 Linux 操作系统,其中,SD 卡(默认 8G)是

作为启动磁盘。

安装系统版本:Ubuntu MATE(笔者安装:Ubuntu MATE 16.04.2)

下载地址:https://ubuntu-mate.org/download/

如图:1.打开下载链接:https://ubuntu-mate.org/download/

Page 8: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 8

Page 9: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 9

2.制作 Linux 启动盘(SD 卡)

准备:制作工具 Win32DiskImager

安装:

1. 解压上述下载的操作系统镜像压缩文件,得到 img 镜像文件。

2. .将 SD 使用卡托或者读卡器后,连上电脑。

3. 解压并运行 win32diskimager 工具。

4. 在软件中选择系统镜像(img 文件),“Device”下选择 SD 的盘符,然后选择

“Write”,期间出现对话框选择是。

5.等待写入进程,安装过程可能有些慢,根据你 SD 卡的速度而定的。等到出现

对话框 write successful 就说明成功了。

这样,Linux 系统启动盘就做好了。

6.将 SD 卡插入树莓派 3 的 SD 卡槽内。

7.树莓派主板上电,即可进入系统安装。

Page 10: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 10

3.系统安装

1. 设置系统使用的语言,选择简体(中文)。

2. 设置 WiFi,可以在后面设置也是一样的。

选择您要连接的 wifi,输入相应的密码,这样在后期的系统安装过程中会利

用网络的资源。

3. 设置时区。

选择一个时区,用鼠标在地图上点击一个位置就可以。

4. 等待之前的设置完成。

5.选择键盘布局,点击,继续。

6.创建用户名和密码,并牢记(后面会用到)。

7. 系统的安装占用了很多的空间,如果需要添加更多的功能需要增加 TF 卡的容

量。后面尝试添加一些应用。

温馨提示:系统安装完毕,大概就剩下 3.9G。安装完 ROS 之后,大概会剩下 1.2G,

内存且用且珍惜。

Page 11: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 11

4.网络配置

为了实现 Turblebot3 和电脑,Turblebot3 之间的相互通信,需要获取远程 PC

和 Turblebot3 的 IP 地址。

Page 12: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 12

Ubuntu16.04 系统镜像制作

准备:UltraISO 软件(如果只是为了制作启动优盘,可以使用未注册版本。)

镜像:Ubuntu16.04.03-desktop-adm64.iso

U 盘:8G 以上(包含 8G)

打开 UltraISO

UltraISO 主界面如下:

打开 ISO 文件

选择菜单文件>>打开,弹出打开 ISO 文件对话框

Page 13: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 13

选择镜像文件并单击打开按钮,打开 ISO 文件

写入硬盘镜像

选择菜单文件>>打开,弹出写入硬盘镜像对话框

选择硬盘驱动器和写入方式,然后点击写入按钮,等待完成即可。

Page 14: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 14

至此,Ubuntu16.04 系统盘完成!!!

Page 15: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 15

在笔记本上安装Ubuntu系统(Ubuntu16.04)

1.插入 Ubuntu16.04 启动 U 盘,重启笔记本电脑(64 位),开机后,按 F12 键(联

想笔记本,其他的可以查询 U 盘启动快捷键),进入 Ubuntu 安装界面,选择第

二个选项:安装 Ubuntu。

2.进入准备安装 Ubuntu 界面后将“安装 Ubuntu 时下载更新”、“为图形或无线硬

件…..”前面打上对勾。

3.进入安装类型界面,选择“其他类型”,点击“继续”

点击“创建新分区表”

继续

选择产生的空闲分区

点击的“+”创建 4 个主要的基础分区

创建/分区:

>5G 主分区 空间起始位置 Ext4 日志文件系统 /

创建 swap 分区:

2048MB 逻辑分区 空间起始位置 交换空间

创建 boot 分区:

200MB 逻辑分区 空间起始位置 Ext4 日志文件系统 /boot

创建 home 分区:

剩余的空间 逻辑分区 空间起始位置 Ext4 日志文件系统 /home

还可创建自己的其他分区如/123 分区 只要设置为逻辑分区、空间起始位置、Ext4

日志文件系统

4.修改“安装启动引导器的设备”

选择/boot 分区(/dev/sda6)

点击“现在安装”

继续

选择时区

继续

选择键盘布局(使用默认)

继续

5. 创建用户(计算机名日后可改)

密码要复杂

密码为登录密码请务必牢记

继续

6. 开始安装

等待…………

7.安装完成后重启。

8.Ubuntu 系统安装完成。

镜像源:http://mirror.pnl.gov/releases/xenial/

Page 16: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 16

ROS 安装

1.版本选择

ROS 是运行在 Linux 之上的,所以首先您的电脑和机器人(汉堡/华夫饼)首

先得有 Linux 环境,之前的 ubuntu 系统的安装都是为此做准备的。Ubuntu 是对

ROS 支持最好的。

Ubuntu 和 ROS 都是存在不同的版本,而且 ROS 各个版本之间互不兼容,

所以每一个 ROS 版本都对应着一个或两个对应的 Ubuntu 版本。

ROS 发布日期 ROS 版本 对应 Ubutnu 版本

2016.3 ROS Kinetic Kame Ubuntu 16.04 (Xenial) /

Ubuntu 15.10 (Wily)

2015.3 ROS Jade Turtle Ubuntu 15.04 (Wily) /

Ubuntu LTS 14.04 (Trusty)

2014.7 ROS Indigo Igloo Ubuntu 14.04 (Trusty)

注:ubuntu14.04 版本装 Kinetic 版本是装不上去的,indigo 同理。

最终选择 Ros 版本:ROS Kinetic Kame

2.软件中心配置

首先打开软件和更新对话框,具体可以在 Ubuntu 最左上角的搜索按钮中搜

索。打开后按照下图进行配置(确保你的 "restricted" , "universe, " 和

"multiverse."前是打上勾的):

配置完成后就可以关闭该窗口了。

Page 17: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 17

3.添加源

打开一个控制台(Ctrl + Alt + T), 输入如下指令:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" >

/etc/apt/sources.list.d/ros-latest.list'

设置秘钥:

sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116

4.安装 ROS

首先确保系统软件处于最新版。

sudo apt-get update

安装 ROS kinetic 全功能版。指令如下:

sudo apt-get install ros-kinetic-desktop-full

等待若干分钟,网络要给力。

安装完成后,可以用下面的命令来查看可使用的包:到现在,虽然是安装完了,

但是还不能用 ROS 哦!

5.初始化 ROS

首先呢,需要先初始化 rosdep,具体如下:

sudo rosdep init

rosdep update

然后初始化环境变量:

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

上面两句非常非常非常重要,很多小伙伴在日常的开发过程中,有的找不到

Package, 找不到 node, 很多情况下都是没有添加 source。

6.测试 ROS

首先,启动 ROS 环境

roscore

看看显示 started core service [/rosout] 了没有?如果没问题,恭喜你,你成功

了。

Page 18: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 18

安装 Turtlebot3 ROS 包

1.安装 Turtlebot3 依赖包

在 Ubuntu 终端界面输入命令:

sudo apt-get install ros-kinetic-joy ros-kinetic-teleop-twist-joy ros-kinetic-teleop-twist-keyboard r

os-kinetic-laser-proc ros-kinetic-rgbd-launch ros-kinetic-depthimage-to-laserscan ros-kinetic-rosseri

al-arduino ros-kinetic-rosserial-python ros-kinetic-rosserial-server ros-kinetic-rosserial-client ros-ki

netic-rosserial-msgs ros-kinetic-amcl ros-kinetic-map-server ros-kinetic-move-base ros-kinetic-urdf

ros-kinetic-xacro ros-kinetic-compressed-image-transport ros-kinetic-rqt-image-view ros-kinetic-g

mapping ros-kinetic-navigation

2.创建 ROS 工作目录

cd ~

sudo mkdir catkin_ws

cd catkin_ws

sudo mkdir src

3.下载依赖包

cd ~/catkin_ws/src/

git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git

git clone https://github.com/ROBOTIS-GIT/turtlebot3.git

4.编译

cd ~/catkin_ws && catkin_make

5.网络配置

ROS 需要 IP 地址在 turtlebot 和远程 PC 之间进行通信

分别在 turtlebot 和 PC,执行如下命令获得对应的 IP 地址:

ifconfig

修改.bashrc

gedit ~/.bashrc

TURTLEBOT 配置如下:

ROS_MASTER_URI = http://IP_OF_PC:11311

ROS_HOSTNAME = IP_OF_TURTLEBOT

注意:IP_OF_PC 指的是远程 PC 的 IP 地址,IP_OF_TURTLEBOT 指的是机器人的 IP

远程 PC 配置如下:

ROS_MASTER_URI = http://IP_OF_PC:11311

ROS_HOSTNAME = IP_OF_PC

ROS_MASTER 运行在远程 PC 上。(在远程 PC 上执行 roscore)

让环境生效:

Page 19: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 19

source ~/.bashrc

Page 20: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 20

OpenCR 软件配置

1.编译器设置

由于 OpenCR 库是为 32 位平台构建的,64 位 PC 需要用于 Arduino IDE的 32

位编译器相关内容,需要执行如下命令:

sudo apt-get install libncurses5-dev:i386

2.安装 Arduino IDE

OpenCR 需 Arduino IDE 1.16.0 及之后的版本

可以从官方的 arduino 主页下载最新版本,

地址:https://www.arduino.cc/en/Main/Software

将下载的文件解压缩到所需的文件夹比如用户的根目录下 tools,并从终端

执行安装文件。如下:

mkdir ~/tools

wget https://www.arduino.cc/download_handler.php?f=/arduino-1.8.3-linux64.t

ar.xz

cd ~/tools/arduino-1.16.0

./install.sh

增加路径到环境中:

vim ~/.bashrc

export PATH=$PATH:$HOME/tools/arduino-1.16.0

source ~/.bashrc

3.运行 Arduino

在 linux 下,新终端执行:

arduino

或直接运行

~/tools/arduino-1.16.0/arduino

Page 21: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 21

4.从 Boards Manager 安装 OpenCR1.0 包

1) 增加 Boards Manager

运行 IDE,点击 File → Preferences, 复制如下内容到 Additional Boards Manager

URLs:

https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/arduino/opencr_release/package_ope

ncr_index.json

如图:

2) 通过 Boards Manager 安装 OpenCR 软件包

点击 Tools → Board → Boards Manager.

图示:

在文本框中键入 OpenCR 以查找包。找到 OpenCR by ROBOTIS 后,点击 Install.

图示:

Page 22: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 22

安装后,将显示“INSTALLED”

OpenCR Board 列在 Tools → Board 中。

图示:

Page 23: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 23

5.端口设置

此步骤显示程序上传的端口设置。

OpenCR 应通过 USB 端口连接到 PC 和 OpenCR 板。

选择 Tools → Port → /dev/ttyACM0.

图示:

Page 24: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 24

开始使用

这一节我们来讲 Turtlebot3 如何启动和使用

1.启动 Turtlebot3

[远程主机(笔记本电脑)]运行 roscore

笔记本电脑打开终端(ctrl+Alt+T),获取 root 权限,输入 roscore,如果显示 started

core service [/rosout] ,则说明 roscore 打开成功。

roscore

2.启动 Turtlebot-burger

[Turtlebot3 之树莓派 3]启动 launch 文件

roslaunch turtlebot3_bringup turtlebot3_robot.launch

这是开启机器人所有设备,也可以单独开启,分步操作。

roslaunch turtlebot3_bringup turtlebot3_lidar.launch

roslaunch turtlebot3_bringup turtlebot3_core.launch

如果终端显示 lost sync with device 错误信息,则说明 TurtleBot3 的传感器设备必

须未完全与树莓派相连接。

3.运行 RViz

[远程主机(笔记本电脑)]运行 RViz

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_bringup turtlebot3_model.launch

RViz(The ROS Visualization Tool): 机器人操作系统 3D 可视化工具。

它的作用就是:一个虚拟世界,用来模拟机器人在现实世界的运行效果。简

单的说它就是 ROS 的一个模拟器软件。一个显示机器人实体的工具。

运行效果如图所示:

Page 25: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 25

ROS 下的图形化模拟环境 RViz

Page 26: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 26

远程控制

这一节我们来讲远程控制 Turtlebot3 的方法

1.说明

此方法是在远程 PC(笔记本电脑)操作的,而不是在树莓派(机器人)上操

作的。在树莓派(机器人)上操作此步骤是无用的。

其他几种无线设备(例如 PS3,XBOX 360,ROBOTIS RC100 等)也可以控制。

下面以远程笔记本的键盘控制为例:

2.方法

[远程主机(笔记本电脑)]运行远程操作

roslaunch turtlebot3_bringup turtlebot3_teleop_key.launch

3.结果

[远程主机(笔记本电脑)] 如果文件成功启动,终端将显示以下内容。

Control Your Turtlebot3!

---------------------------

Moving around:

w

a s d

x

w/x : increase/decrease linear velocity

a/d : increase/decrease angular velocity

space key, s : force stop

CTRL-C to quit

接下来就可以通过笔记本电脑上的 w/x/a/d/s 来控制机器人的前、后、左、右、

停动作了。

按键说明:w/x:增加/减少线速度(前后)

a/d:增加/减少角速度(左右)

空格/s:急停按键

Page 27: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 27

SLAM

这一节我们来讲 Turtlebot3 的 SLAM

1.说明

SLAM(The Simultaneous Localization and Mapping) 同步定位与地图构建:希望机

器人从未知环境的未知地点出发,在运动过程中通过重复观测到的地图特征(比

如,墙角,柱子等)定位自身位置和姿态,再根据自身位置增量式的构建地图,

从而达到同时定位和地图构建的目的。(维基百科)

2 通过远程操作创建地图

[远程主机(笔记本电脑)] 打开终端,然后运行 SLAM 启动文件。

针对 burger:

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_slam turtlebot3_slam.launch

[远程主机(笔记本电脑)] 启动 RViz 可视化模型

rosrun rviz rviz -d `rospack find turtlebot3_slam`/rviz/turtlebot3_slam.rviz

[远程主机(笔记本电脑)] 启动键盘操作

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

3.将地图保存到文件

[远程主机(笔记本电脑)] 打开终端,然后运行地图保存节点

rosrun map_server map_saver -f ~/map

map.pgm 和 map.yaml 在 ~/ 目录里创建

Page 28: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 28

导航

这一节我们来讲 Turtlebot3 的导航功能

1.说明

导航技术的主要用途:使机器人进入期望的位置。

2.准备

已经启动 burger

已经建好地图

3.开始导航

[远程主机(笔记本电脑)] 启动导航文件

针对 burger:

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOM

E/map.yaml

[远程主机(笔记本电脑)]启动 RViz

rosrun rviz rviz -d `rospack find turtlebot3_navigation`/rviz/turtlebot3_na

v.rviz

[远程主机(笔记本电脑)] 在开始导航之前,TurtleBot3 需知道它的位置和姿态。

为了更新初始位置数据,可以按照以下步骤进行:

1). 点击 2D Pose Estimate 按键。

2). 通过单击并拖动地图上的方向来设置机器人在地图上的大致位置。

每个绿色箭头代表 TurtleBot3 的预期位置。 激光扫描仪将在地图上绘制线条,

如地图上的墙壁。 如果图形没有正确显示图形,请从上面的“2D Pose Estimate”

按钮重复定位 TurtleBot3。

如果图形没有显示线条,请重复上述过程。

[远程主机(笔记本电脑)] 当 TurtleBot3 已经定位,它将自动计划路径。

为了到达目标位置,需遵循以下做法:

点击 2D Nav Goal 按钮

点击地图上的一个特定点来设置一个目标位置,拖动光标到 TurtleBot3 应该

Page 29: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 29

面对的方向。

注意:如果无法创建目标位置的路径,则设置目标位置可能会失败。 如果

您希望在机器人到达目标位置之前停止机器人,请将 TurtleBot3 的当前位置设置

为目标位置。

Page 30: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 30

仿真

这一节我们来讲 Turtlebot3 的仿真实验

测试环境:Ubuntu 16.04 和 ROS Kinetic Kame.

注意:TurtleBot3 Simulation 依赖于 turtlebot3

步骤:

1.安装 TurtleBot3 Simulation

cd ~/catkin_ws/src/

git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git

cd ~/catkin_ws && catkin_make

2.启动仿真

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_fake turtlebot3_fake.launch

注意:TurtleBot3 仿真节点不依赖实体机器人,也可以在 rviz 里通过 teleop 节点

进行控制。

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

Page 31: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 31

3.Gazebo 仿真

第一次使用 gazebo 需要比较长的时间加载模型。

第一次使用 Turtlebot3 的 gazebo 仿真,需要把 Turtlebot3 的模型文件,复制

到 gazebo 的模型目录里

mkdir -p ~/.gazebo/models/

cp -r ~/catkin_ws/src/turtlebot3_simulations/turtlebot3_gazebo/worlds/turt

lebot3 ~/.gazebo/models/

设置模型参数,指定使用那种机器人型号:burger 或者 waffle

export TURTLEBOT3_MODEL=burger

启动世界地图,默认的空白地图环境中加载 Turtlebot3 机器人

roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch

效果:

启动更复杂些的地图

roslaunch turtlebot3_gazebo turtlebot3_world.launch

Page 32: TurtleBot3 burger(汉堡)ROS 平台 用户使用手册¹‹汉堡应用说明书V171226.pdf · 北京智能佳科技有限公司 1010-82488500 TurtleBot3 burger(汉堡)ROS平台

北京智能佳科技有限公司

www.bjrobot.com 010-82488500 32

用键盘控制 turtlebot3

roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

启动仿真

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_gazebo turtlebot3_simulation.launch

启动 RVIZ 可视化

export TURTLEBOT3_MODEL=burger

roslaunch turtlebot3_gazebo turtlebot3_gazebo_rviz.launch