目标

在ROS上调试使用Hokuyo激光雷达传感器

配置情况

    电脑使用Ubuntu 14.04版本,ROS为 Indigo,激光雷达为Hokuyo(型号UST-10LX,网口型接口)  

如果使用的是USB类插头的,可以按照ROS网站上提供的教程:

http://wiki.ros.org/hokuyo_node/Tutorials/UsingTheHokuyoNode 

以下介绍的是激光雷达在ROS上的配置:

    首先拿到激光雷达要看其是什么接口类型的,一般分USB型和网口型,两种配置方法不一样,USB型的可以参照上面的教程配置使用,网口型就是下面介绍的方法。为什么要配置呢?直接插上去用不可以吗?答案是不可以的,类似我们日常使用的电脑,当你插上U盘时候,电脑首先会对U盘安装驱动,因为没有驱动使用不了U盘。所以类似的,配置过程就是电脑识别激光雷达,获取其数据的过程。当激光雷达上电时候,它就开始转动,开始获取数据了。

拿到的UST-10LX激光雷达有两个头,一个是电源接口,自己换上接口插到turtlebot上使用19V电源供电(因为turtlebot2正常供电范围是12V-24V,另外按照红正黑负的原则选择接口,插到turtlebot之前使用万用表直流档检测正负接口,切记不要接反);另一个是网线插口,插到你的电脑网口出处。

这时候电源接好了,插上了turtlebot的19V电源处,激光雷达开始转动(会发出声音),网口插口也插上了电脑那,那接下来怎么使用它?

看到网口我们想到的是IP地址,对,其实就是网口类插口与电脑之间使用的是IP地址通讯。那重要的一件事是,知道你的激光雷达的初始IP地址,如果忘记了,使用可以查看IP地址的软件去找出你的激光雷达的IP地址。当知道激光雷达的IP地址后事情就很容易解决了,我使用的激光雷达地址为192.168.1.181(每个人的IP不一样的,这个是自己设置的)。查阅资料显示Hokuyo激光雷达的固定IP地址为“192.168.1.10”(出厂设置为“192.168.0.10”)具体为多少,需要自己去查看相关资料。

有了激光雷达的IP地址,那电脑怎么与它进行通讯?

那就要设置电脑的IP频段,前面3个与其相同,即电脑的IP设置为192.168.1.XXX(随便你设置,但是不要和雷达的IP地址一样),掩码设置都是255.255.255.0。那接下来的问题就是怎么设置电脑的静态IP地址了,有两种方法,下面分别介绍。

1、修改ubuntu系统上管理IP地址的文件,添加一个静态IP地址,位置在/etc/network/interfaces

sudo gedit /etc/network/interfaces

运行命令显示以下窗口

在iface lo inet loopback下面添加下面代码

auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.20
netmask 255.255.255.0

address即添加的电脑静态IP地址,netmask为掩码

2、直接在显示网络那里配置

在网络图标那右键选择Edit Connections

在Ethernet(即以太网)点击Add专门为激光雷达配置一个连接,然后点击IPv4设置地址,在Address添加上面设置的IP地址

至此两种配置电脑静态IP地址方法介绍完了,只要选用其中一种即可,下面就是测试:

ping 192.168.1.181

当你激光雷达IP地址没错时,即可获取到上面的数据。接下来设置在ROS上获取激光雷达的数据,ROS上获取数据主要靠调用节点来获取,那首先要安装网口类激光雷达的节点包

sudo apt-get install ros-indigo-urg-node

然后将激光雷达接在电脑上,执行以下命令:

roscore
rosrun urg_node urg_node _ip_address:=192.168.1.10

当显示上面情况时,即可以在ROS上获取激光雷达数据。另外可以使用以下命令查看激光雷达检测到的数据:

rostopic echo /scan

在rviz中查看激光数据:

#依次运行下面命令
roscore
rosrun urg_node urg_node _ip_address:=192.168.1.181
rosrun rviz rviz

点击左下角的Add按钮,依次添加LaserScan和话题/scan下的LaserScan,然后在左边Displays下修改Fix Frame值为laser

学习使用turtlebot2——调试Hokuyo激光雷达(型号UST-10LX)的更多相关文章

  1. 学习使用turtlebot2——turtlebot2上使用Hokuyo激光雷达(型号UST-10LX)

    目标     在turtlebot2上添加Hokuyo激光雷达传感器,使用激光雷达调用gmapping进行建图. 配置情况     电脑使用Ubuntu 14.04版本,ROS为 Indigo,激光雷 ...

  2. 学习使用turtlebot2——安装ROS Indigo系统

    最近在学习使用turtlebot2,特此做一些学习记录. 安装ROS前要先决定自己电脑的Ubuntu(乌班图)系统.现在学习ROS常使用的Ubuntu系统有Ubuntu 16.04 和Ubuntu14 ...

  3. 转 Python3 错误和异常/ Python学习之错误调试和测试

    ########sample 0 https://www.cnblogs.com/Simon-xm/p/4073028.html except: #捕获所有异常 except: <异常名> ...

  4. BIND9源码学习笔记1---gdb调试篇

    学习bind9源码之前,首先要知道如何用gdb来调试bind.BIND9的源码我是先看代码弄懂它的架构,像什么event-drive,epoll等, 再去看它的业务流程.看业务流程的时候要追踪它的数据 ...

  5. linux学习之四---gdb调试

    在Linux应用程序开发中,最经常使用的调试器是gdb. 一.启动和退出gdb gdb调试的对象是可运行文件,而不是程序的源码.假设要使一个可运行文件能够被gdb调试,那么使用编译器gcc编译时须要增 ...

  6. React学习笔记--程序调试

    React学习笔记 二 程序调试   前面我们搭建好了React的基本开发环境,可以编写基本的React js程序了.但完成的开发环境肯定包含调试器,怎么调试用React编写的JS程序呢?有浏览器,比 ...

  7. Android JNI和NDK学习(04)--NDK调试方法(转)

    本文转自:http://www.cnblogs.com/skywang12345/archive/2013/05/23/3092812.html 本文主要介绍在ndk中添加log的方法.然后,我们就可 ...

  8. cocos2d-js 学习笔记 --安装调试(1)

    目前从国内来看,比较知名的,适合前端程序员使用的游戏框架,基本是 egret 和cocos2d-js;刚好两个框架都学习了下, egret的是最近兴起的一个框架主要使用TypeScript.js语言做 ...

  9. [Android学习笔记]Android调试

    Eclipse Debug 快捷键: [Ctrl + Shift + B]: 添加/取消断点 [F5]:进入方法中 [F6]:单步执行 [F7]:执行完毕此方法 [F8]:继续执行,直接跳到下一个断点 ...

随机推荐

  1. Lintcode---二叉树的层次遍历(原型)

    给出一棵二叉树,返回其节点值的层次遍历(逐层从左往右访问) 您在真实的面试中是否遇到过这个题? Yes 样例 给一棵二叉树 {3,9,20,#,#,15,7} : 3 / \ 9 20 / \ 15 ...

  2. php 获取客户端的浏览器信息

     就是访问的时候,通过服务端来判断用户是否为移动端,如果是的话就重定向(移动端的页面).事实上现在都是一套搞定的了. 但是还是记录一下吧.没准以后用的到   http://detectmobilebr ...

  3. unity, List namespace

    如果要使用List,需要using System.Collections.Generic;

  4. android 建数据库 SQLite 存储sd 卡或者内存

    android 创建数据库调用SQLiteOpenHelper,一般不直接操作SQLiteDatabase . 是通过SQLiteOpenHelper来获取 public class DBOpenHe ...

  5. Java Web框架play framework的下载与环境变量配置

    Web项目的开发有着众多的框架,近期刚刚接触了play. 对于一个Java开发者来说,play是一个不可多得的好框架.以下我简介下怎样下载play .以及play的环境变量配置方法. (1)登录pla ...

  6. 讲一下 Spring的事务传播特性

    1. PROPAGATION_REQUIRED:  如果存在一个事务,则支持当前事务.如果没有事务则开启 2. PROPAGATION_SUPPORTS:  如果存在一个事务,支持当前事务.如果没有事 ...

  7. hdu 1018 Big Number 数学结论

    Big Number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  8. root-me web server 20-30 writeup

    Remote File Inclusion-远程文件包含 Get the PHP source code. ctrl+u 进行RFI攻击需要同时具备三个条件(被攻击机器): allow_url_fop ...

  9. web.py 安装

    安装 安装web.py, 请先下载: http://webpy.org/static/web.py-0.37.tar.gz 或者获取最新的开发版: https://github.com/webpy/w ...

  10. hdu6060 RXD and dividing 贪心

    /** 题目:hdu6060 RXD and dividing 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6060 题意:贪心 给定一颗树,n个节点,编 ...