1.安装Ubuntu

官网下载镜像,这里选择长期维护版本14.04,官方下载地址:

https://www.ubuntu.com/download/alternative-downloads

用软碟通ISO做一个Ubuntu镜像,软碟通中国网址:

https://cn.ultraiso.net/

制作Ubuntu镜像的步骤百度经验有参考,网址:

https://jingyan.baidu.com/article/d5c4b52be79960da560dc59f.html

安装完成后,可以做一下Ubuntu系统简化处理,安装输入法以及卸载不常用的软件,让系统更简洁。参考网址:

https://blog.csdn.net/batman_0331/article/details/43638813

2.安装ROS

这里选择indigo版本,ROS indigo和 Ubuntu 14.04 都是LTS(长期维护版本),并且ROS indigo是专门为 Ubuntu14.04 量身定做。并且dashgo的软件包也是推荐这俩版本的结合。

在dash搜索里面搜索software updater配置Ubuntu软件仓库以及选择速度快的服务器。

配置 ROS 的 apt 源

ROS的apt源有官方源、国内 USTC 源或新加坡源可供选择, 选择其一就可以了,建议使用国内 USTC 源或新加坡源,安装速度会快很多。

方式一:官方源

$ 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://pool.sks-keyservers.net --recv-key 0xB01FA116
  $ sudo apt-get update

方式二:国内 USTC 源 URL :http://mirrors.ustc.edu.cn/ros/

$ sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'$ sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 0xB01FA116$ sudo apt-get update

安装ROS软件包

$ sudo apt-get install ros-indigo-desktop-full$ sudo apt-get install python-rosinstall

配置环境变量

$ sudo rosdep init$ rosdep update$ echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc$ source ~/.bashrc

测试ROS安装是否成功

在终端输入 roscore ,输出如下所示,表示环境配置成功,ros正常运行。

  Ubuntu@Ubuntu:~$ roscore... logging to /home/opt/ros/log/45d93ed8-a23a-11e6-99b1-4437e63de0fc/roslaunch-ubuntu-3460.logChecking log directory for disk usage. This may take awhile.Press Ctrl-C to interruptDone checking log file disk usage. Usage is <1GB.started roslaunch server http://ubuntu:35377/ros_comm version 1.11.20SUMMARY
========PARAMETERS* /rosdistro: indigo* /rosversion: 1.11.20NODESauto-starting new master
process[master]: started with pid [3472]
ROS_MASTER_URI=http://eaibot:11311/setting /run_id to 45d93ed8-a23a-11e6-99b1-4437e63de0fc
process[rosout-1]: started with pid [3485]
started core service [/rosout]

3.安装DASHGO软件包

因为底盘是选择的EAI底盘,可以参考创客智造里面的安装方式,但是我们的激光选择不同,参考网址:

https://www.ncnynl.com/archives/201709/1968.html

安装ROS依赖包

$ sudo apt-get install ros-indigo-serial ros-indigo-turtlebot-rviz-launchers ros-indigo-move-base-msgs libghc-sdl-image-dev libsdl-image1.2-dev ros-indigo-navigation ros-indigo-slam-gmapping ros-indigo-teb-local-planner

创建文件夹

$ mkdir -p  ~/dashgo_ws/src$ cd ~/dashgo_ws/src

下载 Dashgo SLAM 版本

     $ git clone https://github.com/EAIBOT/dashgo.git$ cd dashgo$ git checkout slam_02

注意这里是切换到slam_02分支,对应的是他们自带的F4激光,对LMS100激光也可以用。

4.下载LMS100激光驱动(网口版本)

deb包安装

sudo apt-get install ros-indigo-lms1xx

源码安装

$ mkdir -p  ~/dashgo_ws/src
$ cd   ~/dashgo_ws/src
$ git clone https://github.com/ncnynl/LMS1xx.git

修改激光IP

在激光配置软件(SICK官方有提供)上查询激光IP,将笔记本IP和激光改成同一网段,参考网址:

http://blog.csdn.net/u013453604/article/details/50725833

Ubuntu的IP
    在Ubuntu下“编辑连接”——“以太网”——“添加”创建一个名为lmsxxx的有线连接。
    手动设定子网掩码为255.255.255.0,手动设定IP为:192.168.0.2~192.168.0.254都行。
    这样此IP与LMSxxx设备IP就处于同一网段了。

编译:

$ cd  ~/turtlebot_ws
$ catkin_make

另外,在建图之前应确保底盘编码器输出(Odom),激光扫描图像,TF关系调试。

编码器输出(Odom)可在底盘进行精度测试的时候确定即可,直线校正与360度原地转弯矫正,具体矫正方式在底盘使用说明上有,这里不再赘述。

激光调试,激光雷达通过网线连接到ubuntu电脑,新终端,执行

$ roscore

新终端,执行

$ rosrun lms1xx LMS1xx_node _host:=192.168.0.1

新终端,执行

$ rosrun rviz rviz

左击ADD-->by topic-->选择LaserScan
这时会发现status error,再将FixedFrame后面的值改为laser即可,效果:

参考:https://www.ncnynl.com/archives/201703/1432.html

TF调试可以通过rqt工具调整:

分析你的TF tree结构应保持一致。

5.代码

因为激光驱动是移植到dashgo软件包里面的所以注意frame_ID要保持一致,将laser修改为laser_frame这些细节要注意。

将bring_nav 文件夹里面的launch文件里面的原激光启动文件屏蔽,添加LMS1xx节点下的launch文件,注意LMS100激光的IP地址。

修改TF在RIVZ里面打开TF可以看到laser的变换修改括号里面的五个值使他们符合自己激光的安装位置。

6.执行

可执行里面的gmapping launch文件,打开rviz以及开启键盘控制即可。

$ roslaunch dashgo_nav gmapping_demo.launch
$ roslaunch turtlebot_rviz_launchers view_navigation.launch
$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

7.地图保存

$ roscd dashgo_nav/maps$ rosrun map_server map_saver -f my_map

附建图图像:

第一次写博客,如有问题请联系我:ribuluodeqishi@outlook.com,谢谢~

EAI dashgo底盘(不带陀螺仪版本)+SICK激光(选择LMS100)的ROS建图导航基础相关推荐

  1. EAI Dashgo D1环境搭建/键盘控制/rplidar a1 a2建图导航详细教程

    昨天同学让我帮他看一下EAI Dashgo D1怎么用,因为好像按官方教程还是有一些问题,甚至连键盘控制都不能,查看了一下官方说明,再安装发现的确有一些地方需要注意,尤其对于小白来说这个教程还是有点不 ...

  2. 工作笔记05:imu、底盘车轮、单激光雷达外参校准(基于hdl_graph_slam建图和定位)

    目录 1. imu 校准 1.1 IMU型号 1.2 坐标定义 1.2.1 大地坐标系(WGS84) 1.2.2 当地地理坐标系(ENU) 1.2.3 传感器坐标轴定义 1.3 传感器内参校准 1.4 ...

  3. C# WinForm开发系列之c# 通过.net自带的chart控件绘制饼图,柱形图和折线图的基础使用和扩展

    一.需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成饼图. 2.生成的饼图有详细文字的说明. 1.设置chart1的属性Legends中默认的Legend1的Enable为false: ...

  4. mac自带php7降级,MAC更新自带php版本到7.0

    说一下我最近更新mac自带php版本的经历,我是按照网上的教程更新的,主要参考的是这篇博客http://blog.csdn.net/takunha/article/details/52484769,通 ...

  5. [Linux] 不带JRE版本的LumaQQ安装方法

    [Linux] 不带JRE版本的LumaQQ安装方法 不带JRE版本的LumaQQ安装方法 Posted by luma on 一, 06/21/2004 - 19:14 这个版本没有带JRE,其安装 ...

  6. mac升级php7,MAC更新自带php版本到7.0

    说一下我最近更新mac自带php版本的经历,我是按照网上的教程更新的,主要参考的是这篇博客http://blog.csdn.net/takunha/article/details/52484769,通 ...

  7. ubuntu20.04自带python版本_替换 ubuntu 自带的python版本

    首先在这里下载你想用的各个版本的python,我用的是2.7.11: https://www.python.org/ftp/python/ 还是老样子:  ./configure  -->  m ...

  8. anaconda3 tensorflow安装踩坑记(WIN10+tensorflow带gpu版本)

    我看的网课讲解的视频用的是带gpu版本的tensorflow1.4.0,使用pip install tensorflow-gpu==1.4.0,但是如果想直接用之前那个命令的话要使用anaconda老 ...

  9. SuperPoint学习训练纪录 无训练版与带训练版本(一)

    superpoint   论文原文,先过一遍论文. superpoint   官方源代码,基于 pytorch 的,不过遗憾的是训练代码和相应的渲染的训练数据没提供. superpoint   大佬复 ...

最新文章

  1. Python比对指定目录下的Excel数据(附源码)
  2. 【实战】数据可视化系统后端开发环境搭建
  3. HandlerThread:带消息循环(Looper)的线程
  4. CorelDraw技巧|设计师要了解数位板怎么用
  5. java private 对象_[Java笔记]类的所有构造器都是private权限,就一定没有办法实例化它的对象了么?...
  6. 2021年衢州高考的成绩查询,2021年衢州高考状元是谁分数多少分,历年衢州高考状元名单...
  7. 【sql那些事】时间处理的一揽子事
  8. iPhone13 系列售价曝光:没有涨价;曝华为P50系列7月29日发布;丁磊称专业比学校更重要:你同意吗?|极客头条...
  9. 合作的进化 6-10
  10. Java连接数据库代码
  11. 排队系统拥塞控制的位置
  12. python gtk_python 创建gtk应用程序
  13. 比较好用的自定义软键盘
  14. ChinaMode评选:2010最受瞩目的45个初创公司/产品
  15. linux windows 共享 smbd 部署
  16. 阿里云80 端口别阿里云盾占用
  17. selenium——爬取qq空间说说
  18. 创业时代的七堂必修课
  19. javaweb复习笔记总结
  20. 大公司的高薪 OR 创业公司的期权,更加看中大公司的高薪?

热门文章

  1. VMWare虚拟机 centos时间与本地时间不一致的问题
  2. 数据结构课程设计-家谱
  3. 李宏毅深度学习--《Unsupervised Learning》+《PCA》+《Matrix Factorization》
  4. 周末python培训机构
  5. 2022-2027年中国空港物流行业发展前景及投资战略咨询报告
  6. 什么软件可以测试iphone6s芯片,如何鉴别iPhone 6S/6S Plus芯片来源编号 图解查询方法步骤...
  7. 做了几个Firefox的主题
  8. 最强OLAP分析引擎-Clickhouse快速精通-上
  9. 微信小程序 - webview 的使用
  10. 了解Android中的Preference结构的设计与实现