SKU:RB-13K285 EAI X4激光雷达测距模块

来自ALSROBOT WiKi
2019年8月30日 (五) 11:48Arduino77讨论 | 贡献的版本

跳转至: 导航搜索
X4.png

目录

产品概述

YDLIDAR X4(以下简称:X4)的开发套件是为了方便用户对X4进行性能评估和早期快速开发所提供的配套工具。通过X4的开发套件,并配合配套的评估软件,便可以在PC上观测到X4对所在环境扫描的点云数据或在SDK上进行开发。

RPLIDAR开发套件清单

X41.png

YDLIDAR X4开发套件说明

X42.png

WINDOWS下的使用操作

  1. 设备连接

在windows下对X4进行评估和开发时,需要将X4和PC互连,其具体过程如下:

X43.png

先将转接板和X4接好,再将USB线接到转接板和PC的USB端口上,注意USB线的Micro接口接USB转接板的USB_DATA,且X4上电后进入空闲模式,电机不转。
部分开发平台或PC的USB接口的驱动电流偏弱,X4需要接入+5V的辅助供电,否则雷达工作会出现异常。

X44.png

RPLIDAR 模组

RPLIDAR开发套装中包含了标准版本的RPLIDAR模组(A1M1—R1)。同时模组内集成了可以使用逻辑电平(3.3V)驱动的电机控制器。开发者可以使用该电机驱动器使用PWM信号对电机转速进行控制,而从控制RPLIDAR扫描频率或者在必要时刻关闭电机节能。

驱动安装

在windows下对X4进行评估和开发时,需要安装USB转接板的串口驱动。本套件的USB转接板采用CP2102芯片实现串口(UART)至USB信号的转换。其驱动程序可以在我司官网下载,或者从Silicon Labs的官方网站中下载:

X45.png
X46.png

设备管理会弹出com口

X47.png

使用评估软件

X48.png

确认后,客户端的页面如下:

X49.png
X50.png
X51.png
X52.png
X53.png
X54.png
X55.png
X56.png
X57.png

LINUX下基于ROS的使用操作

Linux发行版本有很多,本文仅以Ubuntu16.04、Kinetic版本ROS为例。

X58.png
X59.png
X60.png
X61.png
X62.png
X63.png
X64.png


注意事项

X65.png

常见问题整理

1、什么是激光雷达
答:激光雷达是以发射激光束探测目标的位置、速度等特征量的雷达系统。从工作原理上讲,与微波雷达没有根本的区别:向目标发射探测信号(激光束),然后将接收到的从目标反射回来的信号(目标回波)与发射信号进行比较,作适当处理后,就可获得目标的有关信息
参考:激光雷达百度百科
激光雷达可以进行360°的扫描,因此可以将周边最近6米以内的最近的物体到模块本身的距离测量出来。
也可以理解为激光雷达就是一圈的激光测距仪。
2、激光雷达能干什么
答:激光雷达可以进行360°的二维距离探测,SLAM,3D扫描与模型构建,障碍物检测,多点触摸等
3、激光雷达有什么缺点
答:由于采用激光进行探测,所以无法正确反射激光的都会导致数据不准确,镜面,透明玻璃,水等会导致数据偏离。所以如果有这种环境的地方,需要考虑用其他传感器进行补充。
4、激光雷达有在 processing,Arduino, Raspberry or pcDuino上的样例代码吗? 答:激光雷达有提供SDK,把SDK中的linux代码在Raspberry or pcDuino 上编译即可。processing可以直接获取激光雷达的串口数据,根据SDK中提供的数据格式进行各种处理。Arduino下的驱动可以在以下网址找到。
激光雷达在Arduino下的驱动程序
激光雷达Arduino平台的使用说明
激光雷达使用效果演示
5、arduino是否可以用Robopeak的激光雷达做slam
答:arduino可以用robopeak的激光雷达作为传感器,但是由于激光雷达的数据量较大(115.2kbps),以arduino的能力来说无法完成slam的处理,因此建议采用更高级一些的控制器来进行处理,例如树莓派,pcduino,cubeboard等。但作为360的传感器是完全可以使用的。
6、是否可以采用智能手机来作为激光雷达的数据处理。
答:是的,可以通过手机来进行激光雷达的数据处理。由于Robopeak提供的激光雷达采用串口通信,如果你有一定的编程基础,可以参考Robopeak开源的sdk将激光雷达数据进行采集和处理。采集的方式可以直连或者通过其他无线的方式进行。
7、为什么我测量300mm的距离 给显示290mm左右,测量800mm的距离 给显示812mm 分辨率和精度有什么区别
答:分辨率是对距离的解析程度。在近距离情况下,由于传感器激光出射角是在偏离中心位置的,所以你观测的距离和传感器观测到的实际数据有一定偏差的。
近距离下你会发现有1cm左右的偏差。这倒不是说传感器不准。
8、如何进行激光雷达的标定
答:基本的思路如下
在已知距离Y用不透光平板挡住,读取传感器读数X,然后用软件进行数据拟合。
二次拟合的公式可以是:
Y = A*x^2 + B*x + C
其中,X是传感器读数,Y是真实数据。你先通过采集点的过程,用(X,Y)序列拟合这个函数,求出A B C三个系数。
以后,软件采集到传感器读数了,代入到上述公式的x中,就求出标定后的距离值了
10、想询问下电机旋转一圈能采集多少个点的数据?我使用arduino,我观察到,每圈大概有10到20点的数据被采集到,这正常吗?
答:采样量能够根据以下的公式来获得:
number of samples = SAMPLE_RATE / rotation_frequency.
SAMPLE_RATE是有数据手册提供的常数,这个数据一般为2000,是当前的旋转速度。
距离来说,如果当前的转速是5.5hz(或者说是330rpm)那采样的数据应该是在2000/5.5=363.6左右。
你可以用我们提供的SDK中的图像采集工具进行检查。
对于arduino来说,你会发现取样数据会小于预期的数据,这是因为AVR的处理器能力确实没有办法做到这个处理能力。
对2000/秒的数据量来说,处理器必须在每个500毫秒内处理完这些数据。但是对于16Mhz的处理器来说,这远远不足以处理每个接收到的数据节点。进来的数据就会被抛弃了。
11、我在用SDK里面提供的ultra_simple.exe测试时记录下了角度制,并制成图标发现在记录角度时会重复的出现偏差/峰值(并不是单调递增的)。为什么会出现这样的表现? 有什么解决方法的建议呢?
答: 这种情况是正常的。这是由于激光点并不是由原点发射(这是由于激光雷达的光学特性)出来的。
如果你希望你的角度数据在图表中已单调递增的形式出现,请使用我们SDK中的ascendScanData() 函数。这个函数会重新调整数据的顺序。在我们ROS节点驱动中使用这个函数来仿真,以便让数据看起来像传统的扫描仪(激光由中心发射)。你可以参考我们托管在github的代码
由于我们是基于三角定位法的激光测距仪,所以激光点并不是由传感器中心发出的。所以指向被测物体的角度并不是探测器的中心角度。发射角度和指向面有一定的夹角。由于角度偏移量取决于被检测出的目标物体的距离的变化,虽然我们的传感器保持采取在一个固定的时间周期的测量(传感器的旋转部件的角度增量是恒定的),所检测到的目标点的角度增量可能仍是不同的。如果当前检测到的物体的距离比前面的对象更远,当前角度值可以小于前一个。此外,如果当前的样本数据是无效的(没有对象检测),就没有办法来获得实际的角度值,编码器的原始角度值将被使用。
12、请问我怎么获得这个激光雷达的资料
答:可以和客服直接联系询问索要或者和robopeak联系哦。[www.slamtec.com robopeak官方网站]
13、使用这个激光雷达,推荐多少位的单片机?
答:32位,主频100Mhz以上,内存20k以上

操作建议

1.预热与最佳工作时间
由于测距核心在工作中将产生热量,建议在RPLIDAR工作(开启扫描模式、扫描电机开始运转)2分钟后使用,此时测距精度将达到最佳水平。
2.环境温度
当环境温度与常温差距过大时会影响测距系统的精度,并可能对扫描系统的结构产生损害。请避免在高温(大于40摄氏度)以及低温(小于-10摄氏度)的条件中使用。
3.环境光照
RPLIDAR的理想工作环境为室内,室内环境光照(包括无光照)不会对RPLIDAR工作产生影响。但请避免使用强光源直接照射RPLIDAR的视觉系统。
如果需要在室外使用,请避免RPLIDAR的视觉系统直接面对太阳照射,这将会可能导致视觉系统的感光芯片出现永久性损伤,从而使测距失效。
RPLIDAR标准版本在室外强烈太阳光反射条件下的测距范围将缩短。

视频演示

Ji guang lei da01.png


















产品相关推荐

Erweima.png

产品购买地址

EAI X4激光雷达测距模块

周边产品推荐

原装进口 iSense 3D扫描仪 ipad 专用 3D systems 手持式扫描仪
手持3D扫描仪 Sense 3D scanner 美国3D Systems人像扫描静物扫描

相关问题解答

RPLIDAR 激光雷达扫描测距仪开发套件 360度全方位扫描 6米测距简介

相关学习资料

激光扫描测距系统使用手册与说明书下载网址
RPLIDAR现已支持ROS和Arduino
奥松机器人技术论坛