博客地址:https://www.cnblogs.com/zylyehuo/

基于[移动机器人运动规划及运动仿真],详见之前的博客

移动机器人运动规划及运动仿真 - zylyehuo - 博客园

参考链接

Autolabor-ROS机器人入门课程《ROS理论与实践》

环境配置

ubuntu 18.04

成果图

编写 launch 文件

mycar_ws/src/nav_demo/launch/nav01_slam_plus.launch

<launch>
<!-- 仿真环境下,将该参数设置为true -->
<param name="use_sim_time" value="true"/>
<!-- gmapping -->
<node pkg="gmapping" type="slam_gmapping" name="slam_gmapping" output="screen">
<!-- 设置雷达话题 -->
<remap from="scan" to="scan"/> <!-- 关键参数:坐标系 -->
<param name="base_frame" value="base_footprint"/><!--底盘坐标系-->
<param name="map_frame" value="map"/>
<param name="odom_frame" value="odom"/> <!--里程计坐标系--> <param name="map_update_interval" value="5.0"/>
<param name="maxUrange" value="16.0"/>
<param name="sigma" value="0.05"/>
<param name="kernelSize" value="1"/>
<param name="lstep" value="0.05"/>
<param name="astep" value="0.05"/>
<param name="iterations" value="5"/>
<param name="lsigma" value="0.075"/>
<param name="ogain" value="3.0"/>
<param name="lskip" value="0"/>
<param name="srr" value="0.1"/>
<param name="srt" value="0.2"/>
<param name="str" value="0.1"/>
<param name="stt" value="0.2"/>
<param name="linearUpdate" value="1.0"/>
<param name="angularUpdate" value="0.5"/>
<param name="temporalUpdate" value="3.0"/>
<param name="resampleThreshold" value="0.5"/>
<param name="particles" value="30"/>
<param name="xmin" value="-50.0"/>
<param name="ymin" value="-50.0"/>
<param name="xmax" value="50.0"/>
<param name="ymax" value="50.0"/>
<param name="delta" value="0.05"/>
<param name="llsamplerange" value="0.01"/>
<param name="llsamplestep" value="0.01"/>
<param name="lasamplerange" value="0.005"/>
<param name="lasamplestep" value="0.005"/> </node> <node pkg="joint_state_publisher" name="joint_state_publisher" type="joint_state_publisher" />
<node pkg="robot_state_publisher" name="robot_state_publisher" type="robot_state_publisher" /> <node pkg="rviz" type="rviz" name="rviz" args="-d $(find nav_demo)/config/nav_test.rviz"/> </launch>

mycar_ws/src/nav_demo/launch/nav07_slam_auto.launch

<!-- 集成SLAM与导航,实现机器人自主移动的地图 -->
<launch> <!-- 启动SLAM节点 -->
<include file="$(find nav_demo)/launch/nav01_slam_plus.launch" /> <!-- 运行move_base节点 -->
<include file="$(find nav_demo)/launch/nav05_path.launch" /> </launch>

编译+启动 gazebo 仿真环境

source ./devel/setup.bash 

roslaunch mycar environment.launch

编译+启动 rviz

source ./devel/setup.bash 

roslaunch nav_demo nav06_test.launch

配置 rviz

运行测试

基于机器人自主移动实现SLAM建图的更多相关文章

  1. SLAM+语音机器人DIY系列:(六)SLAM建图与自主避障导航——2.google-cartographer机器人SLAM建图

    摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在前面的学习铺垫后,终于迎来了最大乐趣的时刻,就是赋予我们的miiboo机器人能自由行走的生命.本章将围绕机器人SLAM建图.导航避障 ...

  2. cartographer环境建立以及建图测试(详细级)

  3. 机器人自主移动的秘密:实际应用中,SLAM究竟是如何实现的?(二)

    博客转载自:https://www.leiphone.com/news/201612/FRzmoEI8Iud6CmT2.html 雷锋网(公众号:雷锋网)按:本文作者SLAMTEC(思岚科技公号sla ...

  4. 基于ros2 dashing的建图导航探索

    基于ros2 dashing的建图导航探索 1. 环境准备 安装ros2 dashing, 参考链接: https://index.ros.org/doc/ros2/Installation/Dash ...

  5. 机器人自主移动的秘密,从SLAM技术说起(一)

    博客转载自:https://www.leiphone.com/news/201609/c35bn1M9kgVaCCef.html 雷锋网(公众号:雷锋网)按:本文作者SLAMTEC(思岚科技公号sla ...

  6. 除了ROS ,机器人自主定位导航还能怎么做?

    博客转载自:https://www.leiphone.com/news/201609/10QD7yp7JFV9H9Ni.html 雷锋网(公众号:雷锋网)按:本文作者科技剪刀手,思岚科技技术顾问. 随 ...

  7. 从零开始一起学习SLAM | 理解图优化,一步步带你看懂g2o代码

    首发于公众号:计算机视觉life 旗下知识星球「从零开始学习SLAM」 这可能是最清晰讲解g2o代码框架的文章 理解图优化,一步步带你看懂g2o框架 小白:师兄师兄,最近我在看SLAM的优化算法,有种 ...

  8. 使用hector-slam和Kinect V1建图

    一.建图实际操作 下载源码测试源码,depthimage_to_laserscan,参考https://blog.csdn.net/u010925447/article/details/5649468 ...

  9. ROS 八叉树地图构建 - 使用 octomap_server 建图过程总结!

    构建语义地图时,最开始用的是 octomap_server,后面换成了 semantic_slam: octomap_generator,不过还是整理下之前的学习笔记. 一.增量构建八叉树地图步骤 为 ...

  10. TurtleBot3 Waffle (tx2版华夫)(9)建图-gmapping建图(A2雷达)

    9.1. 说明 这一节我们来讲 Turtlebot3 的 SLAMSLAM(The Simultaneous Localization and Mapping) 同步定位与地图构建: 希望机器人从未知 ...

随机推荐

  1. opengauss集群安装报错

    DB_VERSION:opengauss 3.0.3 1.[GAUSS-51632] [GAUSS-51632] : Failed to do gs_sshexkey.Error: Please en ...

  2. Github学生认证具体步骤

    具体步骤展示 一.进入相关的申请地址 地址在此:https://education.github.com/pack/ 二.选中右上方的Student,然后选择第二个选项 在我们已经注册号Github账 ...

  3. Solon2 自定义 slf4j 日志添加器

    本案需要引入已适配的 slf4j 日志框架(solon.logging.simple 或 logback-solon-plugin 或 log4j-solon-plugin). 1.自定义添加器入门 ...

  4. C语言 ini 文件读写【Iniparser库】

    一.概述 iniparser是针对INI文件的解析器.ini文件则是一些系统或者软件的配置文件.iniparser库的API可以对ini文件(配置文件)进行解析.设置.删除等操作. 常见的 ini 读 ...

  5. MySQL相关知识点思维导图整理

    MySQL相关知识点思维导图整理 Xmind思维导图下载地址: 蓝奏云:https://shuihan.lanzoui.com/iXZw7frkn5a

  6. 图与网络分析—R实现(二)

    图与网络 网络在各种实际背景问题中以各种各样的形式存在.交通.电子和通讯网络遍及我们日常生活的各个方面,网络规划也广泛用于解决不同领域中的各种问题,如生产.分配.项目计划.厂址选择.资源管理和财务策划 ...

  7. 使用VScode进行Python开发

    一.Microsoft Store中安装:terminal 二.PowerShell中执行: [win10新版或者win11使用: 单个命令安装运行 WSL 所需的一切内容(需要重启计算机):wsl ...

  8. 面向接口编程实践之aspnetcoreapi的抽象

    最为一名越过菜鸟之后的开发,需要做接口开发.下面做一个纯粹的接口编程的实例demo,仅仅是一个webapi接口的抽象. 下面是代码接口,AbsEFWork是webapi,BaseEntityFrame ...

  9. AndroidApp加密数据明文抓取测试方法——hook方式

    0x00 前言 在做移动安全的app渗透或者说移动app的漏洞挖掘时,往往会碰到一种情况:好不容易绕过了app的反抓包机制,通过burp抓到了app传输的数据包,这时想对这部分数据做一些爆破.篡改之类 ...

  10. 简单记录下RestTemplate使用方法

    1.设置get方法 ResponseEntity<JSONObject> responseEntity= restTemplate.getForEntity(url,JSONObject. ...