ROS开发之如何使用RPLidar A1二维激光雷达?

news2024/11/25 10:02:59

文章目录

  • 0.引言
  • 1.创建工作空间
  • 2.获取rplidar_ros包并编译
  • 3.检查雷达端口
  • 4.启动launch显示雷达扫描结果

0.引言

  笔者研究课题涉及多传感器融合,除了前期对ROS工具的学习,还需要用雷达获取数据,进行点云处理。虽然激光雷达已经应用很广泛,但在一些专门的测量领域还需要改进设备才能应用,结合消费级的二维激光雷达和其他传感器建立对象的三维模型,并进行变形分析。本文介绍雷达的使用,RPLIDAR是低成本的二维雷达解决方案,由SlamTec公司的RoboPeak团队开发,本次学习采用RPLidar A1型号激光雷达,它能扫描360°,6米半径的范围它适合用于构建地图,SLAM,和建立3D模型,其固定方案如下如:
  在这里插入图片描述
  

1.创建工作空间

mkdir -p ~/turtlebot_ws/src
cd ~/turtlebot_ws/src
catkin_init_workspace

  在这里插入图片描述
  

2.获取rplidar_ros包并编译

cd ~/turtlebot_ws/src
//下载rplidar_ros包
git clone [https://github.com/ncnynl/rplidar_ros.git](https://github.com/ncnynl/rplidar_ros.git)
cd ~/turtlebot_ws
catkin_make
或
catkin_make_isolated
source devel/setup.bash
或
source devel_isolated/setup.bash

  在这里插入图片描述
  
  注:有时因网络原因,可能下载不了ros包,可以换手机wifi尝试,若wifi也无法下载,可以根据地址:https://github.com/ncnynl/rplidar_ros.git,手动下载,并将功能包放入src目录下。本文使用手动下载。
  在这里插入图片描述
  

3.检查雷达端口

ls -l /dev |grep ttyUSB
sudo chmod 666 /dev/ttyUSB0

  在这里插入图片描述
  

4.启动launch显示雷达扫描结果

cd ~/turtlebot_ws
source devel/setup.bash
或
source devel_isolated/setup.bash
roslaunch rplidar_ros view_rplidar.launch

  在这里插入图片描述
  
  
参考资料:
[1] Eric_奋斗. [ROS学习笔记]ROS中使用激光雷达(RPLIDAR); 2018-01-23 [accessed 2023-04-11].
[2] Irving.Gao. ROS——树莓派4B使用思岚A1激光雷达和乐视深度相机; 2021-02-24 [accessed 2023-04-11].
[3] Eric_奋斗. [ROS学习笔记]ROS中使用激光雷达(RPLIDAR); 2018-01-23 [accessed 2023-04-11].
[4] nomil9. 树莓派&ROS:驱动EAI的激光雷达YDLIDAR-X4; 2018-12-03 [accessed 2023-04-11].
[5] Eric_奋斗. ROS学习笔记——先锋机器人P3-DX 的连接与控制; 2018-01-22 [accessed 2023-04-11].
[6] 星辰和大海都需要门票. rplidar的安装与使用; 2020-08-04 [accessed 2023-04-11].
[7] zkk9527. Rplidar 报错提示:Error, operation time out. RESULT_OPERATION_TIMEOUT!; 2020-10-20 [accessed 2023-04-11].
[8] 五月-Amber. 解决:minicom: can not open /dev/USB0:没有那个文件或目录; 2018-09-24 [accessed 2023-04-11].
[9] WisdomXLH. RPlidar(一)——雷达试用; 2018-06-02 [accessed 2023-04-11].
[10] 银时大魔王. 激光雷达初体验 - Ubuntu 18.04 + 思岚科技 RPLIDAR A1M8 + hector_slam 建图; 2020-09-11 [accessed 2023-04-11].
[11] 俊俊岑. 思岚rplidar A1激光点云数据读取; 2019-10-16 [accessed 2023-04-11].
[12] dori_z. ros中rviz查看激光雷达数据 hokuyo; 2019-08-22 [accessed 2023-04-11].
[13] TensorME. RVIZ中的fixed frame选项以及“For frame [XX]: Fixed Frame [map] does not exist”; 2019-01-20 [accessed 2023-04-11].

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/425969.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

快速构建目标检测coco格式数据集

目标检测coco格式数据集coco数据集快速构建总结coco数据集 首先搞清楚coco格式数据集的组成。在data数据下、分为train、val以及annotations三个文件夹。(image是我未划分训练集和测试集的图像存储文件夹) 1.train文件夹:用来存放作为训练的图…

一个PostgreSql cli的工具

GitHub - xuejiazhi/pgii: pgii is a PostgreSql cli tool. PostgreSql is developed in CMD or Golang and can be compiled for multiple platforms pgii 是一个PostgreSql cli的工具,对PostgreSql 在CMD或者,采用Golang进行开发,可以多平台下面编译使用: 跨平台…

C/C++|物联网开发入门+项目实战|嵌入式C语言高级|C语言常用关键字及运算符操作-学习笔记(8)

文章目录2-2: C语言常用关键字及运算符操作关键字参考: 麦子学院-嵌入式C语言高级2-2: C语言常用关键字及运算符操作 [重点] 掌握C语言的常用关键宇及其应用场景,使用技巧 关键字 编译器:预先定义了一定意义的字符串,32个。 s…

RHCE3

综合练习:请给openlab搭建web网站 ​ 网站需求: ​ 1.基于域名[www.openlab.com](http://www.openlab.com)可以访问网站内容为 welcome to openlab!!! ​ 2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站,基于[www.…

对Spring循环依赖的一些理解

什么是循环依赖 类A有个字段需要注入类B,类B有个字段需要注入类C,类C有个字段需要注入类A,它们之间的依赖关系形成了一个循环。 Spring初始化完一个对象之后会把实例放入单例池(singletonObjects)中,也就是…

【FFT】快速傅里叶变换

开个新坑, 快速傅里叶变换在现在世界的各个领域都发挥重要作用。 包括音视频压缩、5G、WIFI、卷积、航空、雷达、核武等等 为什么使用快速傅里叶变换 快速傅里叶变换计算复杂度仅为O(nlogn) 而原傅里叶变换是O(n^2) 什么是快速傅里叶变换 是指对傅里叶变换中的重…

蓝桥杯嵌入式第十一届客观题解析

文章目录 前言一、题目1二、题目2三、题目3四、题目4五、题目5六、题目6七、题目7八、题目8九、题目9十、题目10总结前言 本篇文章将为大家带来蓝桥杯嵌入式省赛第11届客观题的解析。 一、题目1 积分电路的作用是对输入信号进行积分,因此在输入一个矩形波时,输出波形将是输…

租车管理系统【GUI/Swing+MySQL】(Java课设)

系统类型 Swing窗口类型Mysql数据库存储数据 使用范围 适合作为Java课设!!! 部署环境 jdk1.8Mysql8.0Idea或eclipsejdbc 运行效果 本系统源码地址:https://download.csdn.net/download/qq_50954361/87682508 更多系统资源库…

【MySQL】索引优化与查询优化(重点:索引失效的11种情况)

【大家好,我是爱干饭的猿,本文重点介绍MySQL的内连接、外连接、索引失效的11种情况、关联查询优化、子查询优化、排序优化、GROUP BY优化、优化分页查询、覆盖索引、索引条件下推和其它查询优化策略的一些问题。 后续会继续分享MySQL和其他重要知识点总…

Springboot基础学习之(二十一):Swagger基础学习(swagger信息介绍,配置扫描接口和开关,分组和接口注释)

什么是Swagger? Swagger2是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful 风格的Web 服务 使用Swagger你只需要按照它的规范去定义接口及接口相关的信息。再通过Swagger衍生出来的一系列项目和工具,就可以做到生成各种格式的接口…

Flutter 滚动组件ListView,GridView,Sliver以及滚动监听

前言 身是菩提树 心是明镜台 时时勤拂拭 模式染尘埃 这玩意不难,就是东西多。。。 1 看一下继承关系 class GridView extends BoxScrollView abstract class BoxScrollView extends ScrollView abstract class ScrollView extends StatelessWidget 2 下面是scr…

set和map

set和map关联式容器键值对树状结构关联式容器set介绍使用multiset介绍使用map介绍使用multimap介绍使用底层容器AVL树概念操作节点定义插入旋转红黑树(RBTree)概念节点的设计迭代器的设计结构插入红黑树模拟实现set与map模拟实现map模拟实现set关联式容器…

【Java 数据结构】单向链表和双向链表的实现 (LinkedList)

🎉🎉🎉点进来你就是我的人了 博主主页:🙈🙈🙈戳一戳,欢迎大佬指点!人生格言:当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔🦾&am…

android studio 页面布局(2)

<?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto"xmlns:tools"http://schemas.android.com/too…

【数据挖掘与商务智能决策】第九章 随机森林模型

9.1.3 随机森林模型的代码实现 和决策树模型一样&#xff0c;随机森林模型既可以做分类分析&#xff0c;也可以做回归分析。 分别对应的模型为随机森林分类模型&#xff08;RandomForestClassifier&#xff09;及随机森林回归模型&#xff08;RandomForestRegressor&#xff…

Vue.js 2.0 组件

什么是组件&#xff1f; 组件&#xff08;Component&#xff09;是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素&#xff0c;封装可重用的代码。在较高层面上&#xff0c;组件是自定义元素&#xff0c; Vue.js 的编译器为它添加特殊功能。在有些情况下&#xff0c;组件也…

《花雕学AI》19:比较ChatGPT与新Bing在文章润色方面的应用优势与测试案例

引言&#xff1a; 文章润色是指对已经写好的文章进行修改、优化或完善的过程&#xff0c;以提高文章的质量和效果。文章润色涉及到多方面的内容&#xff0c;如语言表达、逻辑结构、文献引用、格式规范等。文章润色对于提升写作水平、提高论文发表率、增加学术影响力等都有重要意…

JavaScript【趣味】做一个网页版2048

文章目录&#x1f31f;前言&#x1f31f;先看效果&#xff08;粉丝特权哈哈&#xff09;&#x1f31f;代码实现&#x1f31f;页面布局 【index.html】&#x1f31f;样式文件【2048.css】&#x1f31f;index.html 里用到的JS文件&#x1f31f;jquery.min.js&#x1f31f;util.js…

300元左右的蓝牙耳机哪个好?300左右音质最好的蓝牙耳机

无线耳机是人们日常生活中必不可少的设备&#xff0c;无论是听音乐化石看电影都能获得身临其境的感觉&#xff0c;由于科技真在发展中&#xff0c;不断地的发生变化&#xff0c;百元价位就可以感受到不错的音色&#xff0c;下面小编整理了几款300左右音质表现不错的蓝牙耳机。 …

Linux 、Android将在汽车舞台上开战

导读在 CES 2017 上&#xff0c;AGL 宣布&#xff0c;Mercedes-Benz 的母公司 Daimler 正式加入。这是第十家汽车制造商加入 AGL&#xff0c;也是第一家德国公司加入 AGL。AGL&#xff08;Automotive Grade Linux&#xff09;&#xff0c;是 Linux 基金会的一个相互协作的开源组…