自动驾驶系列(七)使用turtlebot3仿真slam建图
TurtleBot3是TurtleBot系列中的第三代产品,它在二代的基础之上做了一些改进,并开发了一些新功能,以补充其前身缺乏的功能和满足用户的需求。TurtleBot3采用机器人智能驱动器Dynamixel驱动,是一款小型的、可编程的、基于ROS的高性价比移动机器人,可用于教育、研究和产品原型制造。
一、Turtlebot3安装
git指令有时候受网络影响提示失败,需要多试几次。
cd ~/catkin_ws/src
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/catkin_ws
rosdep install --from-paths src -i -y
catkin_make
执行rosdep intall 时报错:
更换指令:
rosdep install --from-paths src --ignore-src --rosdistro=melodic -y -i -r
安装成功:
source环境变量。
echo "source ~/catkin_ws/devel/setup.bash " >> ~/.bashrc
source ~/.bashrc
根据所选用的TB3机器人是Burger还是Waffle,将其作为环境变量加入~/.bashrc文件,以方便后续使用。否则每次运行程序都需要先输入“export TURTLEBOT3_MODEL=burger”或者“export TURTLEBOT3_MODEL=waffle”。
echo "export TURTLEBOT3_MODEL=burger" >> ~/.bashrc
source ~/.bashrc
检查环境变量设置是否成功:
env | grep TURTLEBOT3
执行结果:
二、运行仿真turtlebot3_fake.launch
roslaunch turtlebot3_fake turtlebot3_fake.launch
报错:
rviz
解决:
#重启终端
catkin_make
roslaunch turtlebot3_fake turtlebot3_fake.launch
节点关系查看:rqt_graph
三、运行仿真 turtlebot3_world.launch
roslaunch turtlebot3_gazebo turtlebot3_world.launch
报错,查信息是虚拟机的原因:
解决:关闭GPU,重启ubuntu:
export SVGA_VGPU10=0
重新运行launch文件:
roslaunch turtlebot3_gazebo turtlebot3_world.launch
gazbo运行成功,但仍然有报错:
解决:将~/.ignition/fuel/config.yaml中的 https://api.ignitionfuel.org 改为 https://api.ignitionrobotics.org即可。
gedit ~/.ignition/fuel/config.yaml
文件内容换成以下:
---
# The list of servers.
servers:-name: osrfurl: https://api.ignitionrobotics.org# -# name: another_server# url: https://myserver# Where are the assets stored in disk.
# cache:
# path: /tmp/ignition/fuel
最终运行结果:
四、turtlebot3在模型中的运动
新终端,启动gazebo节点
roslaunch turtlebot3_gazebo turtlebot3_world.launch
新终端,启动键盘节点
roslaunch turtlebot3_gazebo turtlebot3_house.launch
新终端,启动仿真节点
roslaunch turtlebot3_gazebo turtlebot3_simulation.launch
新终端,启动rviz
roslaunch turtlebot3_gazebo turtlebot3_gazebo_rviz.launch
执行后,可以看到在gazebo仿真环境中,仿真小车在环境中走动:
可以在RVIZ看到点云数据和小车的运动:
五、仿真slam建图
步骤一:新终端,打开gazebo仿真
roslaunch turtlebot3_gazebo turtlebot3_world.launch
步骤二:新终端,启动slam程序
roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
第一次有报错,按提示,安装gmapping工具,重新运行roslaunch
sudo apt-get install ros-melodic-gmapping
运行结果可以看到slam扫到的点云数据
步骤三: 新终端,打开键盘控制,使用键盘控制小车运动
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
步骤四:新终端,保存地图
rosrun map_server map_saver -f ~/map
自动驾驶系列(七)使用turtlebot3仿真slam建图相关推荐
- SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航——2.google-cartographer机器人SLAM建图...
SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航--2.google-cartographer机器人SLAM建图 摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在 ...
- SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航——1.在机器人上使用传感器...
SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航--1.在机器人上使用传感器 摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在前面的学习铺垫后,终于迎来了最大乐趣 ...
- SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航——3.ros-navigation机器人自主避障导航...
SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航--3.ros-navigation机器人自主避障导航 摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在前面的学习 ...
- SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航——4.多目标点导航及任务调度...
SLAM导航机器人零基础实战系列:(六)SLAM建图与自主避障导航--4.多目标点导航及任务调度 摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在前面的学习铺垫后,终于迎来了最大乐 ...
- 基于turtlebot3实现SLAM建图及自主导航仿真
来源丨古月居 turtlebot3简介 TurtleBot3是一个小型,低成本,完全可编程,基于ROS的移动机器人.它旨在用于教育,研究,产品原型和爱好应用的目的. TurtleBot3的目标是大幅降 ...
- ROS探索篇(三)基于turtlebot3实现SLAM建图及自主导航仿真
0.turtlebot3简介 TurtleBot3是一个小型,低成本,完全可编程,基于ROS的移动机器人.它旨在用于教育,研究,产品原型和爱好应用的目的.TurtleBot3的目标是大幅降低平台的尺寸 ...
- ndtmapping建图_自动驾驶系列:激光雷达建图和定位(NDT)
该系列主要为对前期工作进行梳理,以后所进行的工作也会部分在此记录. 使用NDT(正态分布变换)进行点云建图和定位 前言 定位模块是自动驾驶最核心的模块之一,定位又包括全局定位和局部定位,对于自动驾驶, ...
- 从零搭建一台基于ROS的自动驾驶车-----3.激光Slam建图
系列文章目录 北科天绘 16线3维激光雷达开发教程 基于Rplidar二维雷达使用Hector_SLAM算法在ROS中建图 Nvidia Jetson Nano学习笔记–串口通信 Nvidia Jet ...
- 人工智能之自动驾驶系列(一):概要
人工智能之自动驾驶系列(一):概要 蓬生麻中 http://blog.csdn.net/wangdaiyin/article/details/77403592 版权声明:本文系个人经多处资料学习.吸收 ...
最新文章
- mybatis使用if判断参数是否为空
- 第四十六章:SpringBoot RabbitMQ完成消息延迟消费
- 2.15_graph_图
- ubuntu创建wifi热点(android可识别)亲测可用
- Bolt界面引擎中XLUE布局XML文件节点属性配置详解
- Java 简单TCP文件传输
- 学习记录-FDD大规模MIMO系统的稀疏信道估计技术研究
- java replaceLast
- php implode key,PHP implode()用法及代碼示例
- linux网络测速qerf,kehu.one在线网速测试,网站测速工具,测网速,网站访问速度测试-boce.com...
- Queen Collisions(分行列模拟)
- android 项目练习:自己的词典app——生词本(一)
- matlab怎样编程形成软件_Matlab编程笔记之GUI程序转exe
- 分辨率与观赏距离和屏幕尺寸的关系
- 360笔试题2019年4月24日(彩球分篮子问题 )
- 手把手教你写第一个C语言程序
- 入局二手奢侈品赛道,考拉海购想象力几何?
- 华软2016校内选拔赛
- Vector BLF格式转ASC格式软件 QT+C++编写
- 小刀学习flink 之入门 hello word