首页 论坛 技术交流专区 MEMS/传感器 用于服务机器人或无人机的低成本激光导航传感器设计

发帖 回复

[资料] 用于服务机器人或无人机的低成本激光导航传感器设计
2054 查看
16 回复
 楼主 | 发布于 2018-06-19 | 只看楼主
分享到:

用于服务机器人或无人机的低成本激光导航传感器设计

作者:游名

技术QQ群:123768874)


相关文章:

小米扫地机器人拆解(18-4-18更新激光雷达资料部分)

http://club.digiic.com/Forum/PostDetail/p-556.html

 

  摘要——许多室内机器人或无人机系统,使用激光测距传感器作为他们的主要导航传感器,用来画图、定位和避障。这种系统的成本和耗电都是个问题,这对于低成本高效率的场合而言,是个障碍。本文,描述了一个结构紧凑的平面激光测距传感器。它跟现有的激光器扫描仪相比,有以下特点:6m达到3cm的精度,10Hz的接收频率,在360°的全角扫描下1°的分辨率。本文描述:使用了智能硬件和定制的机械结构,能够把成本控制在150人民币以下。

 

I.引言

  对于移动的机器人或无人机而言,最常见的任务之一是在环境中绘制地图并进行导航。为了完成这项任务,需要用一种高效的方式感知周围的环境,通过测距来发现障碍物,并绘制出针对吸尘和传递这种任务的地图。

   虽然已经存在很多可用的传感器,但是激光导航传感器是室内外机器人或无无人机中广泛应用的。主要原因在于数据的实用性:激光导航传感器返回的距离是在自己视野范围的距离,不同于一般的视觉传感器。一般的视觉传感器在进行测距前,需要进行复杂且易错的处理。也不像别的距离传感器,诸如声呐或红外线传感器。激光导航传感器有很好的角度和距离分辨率,实时行为(每秒能够测量数百个点或是数千个点),以及很低的假阳性(检测出,实际不存在)率和假阴性率(存在,但是没有检测出)。通过使用LDS扫描仪来画图和定位的高效算法是存在的[5][8]。

   虽然LDS设备在机器人领域是很普遍的,但是他们的高成本,使得他们无法出现在诸如扫地机器人这样消费机器人中。Electrolux Trilobite是少有的清洁机器人,它们根据声呐进行绘图[13]。使用LDS技术的瓶颈在于成本。两种最常见的设备—SICK LMS 200 [1]和 Hokuyo URG-04LX [1],比最简单的清洁机器人的成本高了一个数量级。

  本文,描述了一个结构紧凑、低成本的LDS: 低成本激光导航传感器。它在性能上跟标准的LDS设备一样,不过成本上只是它们的一小部分。图1-1列出了低成本激光导航传感器内部的原型。它有下面的特点:

1.人眼安全(类 I 或 II)

2.在标准的室内光照条件以及某些室外条件下工作

3.平面上的360°全角扫描

4.扫描范围0.2m到6m

5.高分辨率:距离上,6m<3cm的错误率;角度上,360°<1°的分辨率

6.每秒读4000次(达到10Hz)

7.小巧、低功耗(<2W)

8.标准的可商用配件

9.低成本:150人民币

  这些特点使得低成本激光导航传感器适合进行消费机器人或无人机的发展,并且为高性能低成本的移动机器人或无人机提供了可能性。到目前为止,把低成本激光导航传感器用在消费级机器人或无人机上。要想实现上面的标准,需要在设计、算法以及集成上,进行创新。

关键元素是:

  •一个结构紧凑的、刚性点光束的三角测距模块。这个模块集成了激光、成像仪和电子器械。我们使用了低成本的CMOS成像仪以及DSP用来进行亚像素插值,可以在4KHz的频率下,5cm的基线的情况下,获得很好的分辨率。


1-1 低成本激光导航传感器平均宽度是8cm.圆形载体,有激光模块,以及镜头


本帖有更多资源,需 登录 才可以下载,没有帐号?立即 注册

(0 ) (0 )
回复 举报

楼主 | 回复于 2018-06-19 沙发

对低成本激光导航传感器进行深入理解之后,发现对于数字图像感知器,在小基线的情况下,实现高精度是可能的。

•实现360°视角的模块转动。低成本激光导航传感器不是通过使用反光镜,而是通过旋转光学仪器来操纵光束,并能够使光束绕一个圈。

现有的别的设备都满足不了我们的需要。我们简要回顾了一些相互矛盾的使用三角测距的激光导航传感器技术。

结构性的线性设备。这些设备使用了一种轻量型的条形激光器以及一个偏移照相机,来把范围判定为一系列的点集。因为发射的激光是沿直线传播的,所以很难实现准确的排列,尤其在有自然光和深色物体存在的情况下。例如,在[7]的系统里,有最大的3m范围和105°视角,并且需要50cm的基线来实现很好排列精度。

点扫描设备。有许多进行3D扫描的设备,它们能够很细致地([3], 2.1节)扫描到很多微小的物体。它们通常使用一个扫描镜来管理一个点激光束,并且重定向返回到光学接收器的的激光。这些设备不能被小型化,而且它们的成本和机械脆弱性都很高。

点模块。类似Revo设备,还有一些单点的模块,能够通过旋转实现大视角。典型设备就是敏锐的红外线传感器[9],它使用了一个位置敏感的设备(PSD)。这些设备测量了所有照射到它们表面上的光的质心。虽然调制技术可以用来抵消环境光的影响,PSD只有在激光光斑有很强的反射的条件下,才能有很好的效果。这一点,使得它们的使用范围缩到了1m甚至更小[10]

接下来,我们会讨论激光导航传感器的各个方面:点感知器的模块化,扫描机制,以及同步。

 

II. 单点的距离模块

激光导航传感器依赖于一个创新的激光点感知器模块。该模块的原理是三角测距—使用了一个激光点束和一个数字图像感知器,这两个模块由一个小的基线分隔开。这个模块融合了激光,感知器,光学组件以及一个小的、刚性计算包。它比现在的红外测距传感器稍微大一些(刚性的远红外设备[9]),但是在准确性以及速度上都好了很多。

 

A. 三角测距技术

所有的单点扫描传感器,诸如SICK以及Hokuyo设备,都使用了反射镜来扫描点传感器。这些设备是基于time-of-flight距离的传感器:他们计算光传播和反射的时间。替代技术是三角测距:通过反射光线的角度来测量距离。图II-1展现了三角测距的几何图。激光会产生一个小的点光,它从物体上反射回来并投影到照相机上。一个理想的pinhole相机是调整好的。这样激光光束跟某些射线是平行的。这些射线的特点是,从焦距的中心到达图像的边缘。这提供了一种测量从无限到qmin距离的方式。利用相似三角形的原理,垂直距离是

激光束的距离也取决于激光相对于图像轴的角度。


 

II-1 来源于相似三角形的三角测距;到物体的距离,是由激光光斑的角度给出的;图像中的x是两条线之间的距离—一条是平行于入射光的线,另一条是反射光的线。

(0 )
评论 (0) 举报

回复于 2018-06-20 2#

(0 )
评论 (0) 举报

回复于 2018-06-20 3#

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 4#

这些等式表明了图像距离和物体距离是一个双曲线关系。这种非线性的关系提出了测量更远距离所存在的问题-分辨率随着距离呈二次方

例如,如果1个像素的图像位移在1m中对应1cm的位移,那么在2m范围中就对应4cm的位移。

 

B.单点模块设计标准

最小距离(Eq. 1)和距离分辨率(Eq. 3)是互相矛盾的:小的fs乘积产生一个小的qmin,一个大的fs乘积产生一个好的距离分辨率。

fs的相对权重,是由图像传感器决定的。我们先讨论它。这个图像传感器应该有一个短的快门时间来更好地滤除环境光,并且有很多像素点来分辨x。我们选用一个全局快门的CMOS传感器。该传感器用752的分辨像素进行,并且有35μs的最小快门时间。每个像素是6μm。我们希望能够在0.1像素内分辨激光点。

利用这些参数,可以绘制出fs对于灵敏度以及小距离的影响图(Figure II-2)。如果小距离是20cm或是更小,fs应该是900或是更少。如果在6m的情况下,灵敏度是30mm或是更少,fs的乘积应该大于700。我们挑选800作为设备的最佳点。

II-2 最小距离和灵敏度跟fs是相关的;设计的标准是,使得最小距离小于20cm,灵敏度小于40mm;垂直线是最佳点。

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 5#

乘积fs=800可以用不同的方式来实现,但是倾向于使用一个紧凑的基线,同时保持焦距合理(大焦距需要长镜头)。我们选择了50mm的基线,16mm的焦距,这样的组合。

最后,我们定义光线和轴线的夹角为β:

Beta =arctan(f/(376*6μm)) ≈ 82°(4)

 

C.模块的校准

该装置的总误差是一个关于设备参数的函数,误差来源在于点分辨误差以及设备的校准。这里的校准,针对的是所有影响到理想操作的失调。因为我们用的是低成本的光学组件,设计就必须考虑到主要的不准确性。主要部分包括,激光指向角,透镜指向角,以及透镜失真。

•激光指向角。激光必须垂直指向该装置的基准平面,并且水平呈8°指向跟相机的主射线。低成本的激光模块,在6个最好的角度,有典型的指向精度。我们在机械上,使用激光模块以及一个垂直旋转装置来补偿指向角。

•透镜指向角。图II-1表明,激光束以及透镜的主射线在同一个平面内。实际情况往往不会这样。相反,我们在寻找水平的扫描线,能够对所有距离的激光束都适用。我们使用了在中心线以上和以下的5条扫描线。如果成像仪相对于激光和焦点平面的旋转不是特别大的话,这些线足够用来进行理想的平均。

•透镜失真。对于低成本的16mm透镜而言,即使进行了单一波长的优化,边缘区域还是至少会有百分之几的失真。这足以在远距离读取中,造成大的误差,并且必须得到补偿。

我们使用了两步的校准程序来处理镜头失真。首先,我们使用下面的程序,来填充一个1/x的曲线。

•把激光点图像,定位为亚像素精度的图像(II.D)

II-3  1/x的校准曲线。原始图像上的值是激光点的质心,有1/32像素的内插值

•对于已知距离的读取点,用它们来填充Eq. 1的曲线,对于远距离的读书,加权更大。有两个参数可供选择:fs的乘积,利用像素错位来计算x。

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 6#

1/x填充图表II-3中的曲线的区域。虽然数据似乎在曲线上排列地很好,但是在远距离的陡坡意味着小偏差会导致大的校准错误(公式 3)。图II-4表明错误的来源只是1/x在不同距离的曲线填充。距离的敏感性以及失真造成的错误像素的数量,会随着距离的增加而增大(趋向于图像的边缘)。请注意,1m内的校正误差少于2mm。

II-4 校准错误时距离的函数;远距离的错误,是很敏感的。

为了减少校正误差,我们使用了一个偏差表。该偏差表是针对1m及其更远距离的离散错误值的。我们也在这些真实读数之间进行了插值。这一技术能够有效的减少远距离的校准错误。远距离的校准错误是跟像素定位的噪声有关的(参照II.F)。

只有在设备保持一定的热应力以及机械冲击力的条件下,校准才有效。透镜、成像仪、激光和激光光学的物理联系必须是刚性的,并且应该有低的热形变。任何能够导致激光点偏离超过1微米的底盘相对运动,可能导致远距离的错误。尤其是在更远处,错误更严重。罪魁祸首激光和成像仪的相对旋转,这种相对旋转是由热力扩张或联结它们的机械底盘元素的移动所造成的

II-5列出了LDS单点模块的方案设计。底盘是铝合金的,镜头是玻璃的,镜头调整是由螺丝旋进旋出完成的。两个镜头都可以用螺丝和胶来进行锁定。

D.激光点的定位

为了降低远距离的错误,激光点的图像必须本地化为亚像素精度。我们使用了一个简单的质心算法来进行本地化。首先,这些行在10像素的水平带中进行集中的。然后对产生的线图,求微分和平滑处理。这样就可以通过使用最大值来发现点的中心。

最后,质心的计算

II-1给出了计算质心的典型结果。在近距离处,图像的宽度是数以万计的像素,并且可以容忍大的标准差。在远距离,图像变得只有几个像素宽,并且样本影响也很重要的。2m和4m处的异常读数,可能是点逐渐趋近于像素边界所造成的。在发现激光点的中心,这是众所周知的 [4]。我们打算深入研究匹配过滤方法,来进行更好的亚像素本地化[8][12]。即使使用了质心方法,本地化的结果还是在0.2像素或是更好,对于远距离结果可能更好。

II-1 不同距离的点定位标准差。

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 7#

E.环境光的去除

大多数环境中,图像的激光点会受到环境光的干扰。两种去除干扰的技术是时域滤波和波长滤波[7]。

我们挑选一种可见红色光波(650 nm)作为激光,因为它能产生人眼安全级别的稍微高一些的激光输出,并且有更好的成像效果,并且相对于远红外波长更易于调试和校准。20 nm带宽的过滤器就能够减少环境光。

时域滤波当激光通过时,会使用了成像仪的全局快门来曝光。通过使用短脉冲,激光能够在保持人眼安全的条件下,增加能量。对于人眼安全的ANSI Z136.1-2000标准[2]而言,激光并不允许这么多短脉冲能量。因此,会有一个环境光滤除(倾向于短脉冲)和成像仪响应(倾向于长脉冲和更高的总能量)的折中。图II-6指出了每种脉冲所允许的最大曝光值,以及脉冲能量,对应脉冲宽度。

II-6最大脉冲能量和所允许的最长曝光。我们所选择的脉冲宽度由竖线列出

在最短快门时间35μs的条件下,脉冲能量可能超过5mW,这有助于克服环境光的干扰。脉冲时间越长脉冲能量越少,大体上可用的反射能量也会增加。同时,也能够发现深色物体。垂直线表明,在我们所选择的脉冲宽度下,这些值在60μs。

激光导航传感器可以在室外条件下工作,甚至可以在直射光条件下工作。在海平面光照条件下650 nm能量大约是1.3x 10的-3次mW/mm的平方/nm,所以20nm的过滤器能提供.026mW/mm的平方。激光点的直径大约是3mm。所以从这个点发出的能量大约是0.17 mW/mm的平方,一个因素7的影响大于直射光。阳光的存在不会影响定位的标准差。不过,当成像仪正对灯泡或是太阳时,激光导航传感器也不会工作。

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 8#

F.电子学

处理图像以获得远距离的读数包括以下几步:

1. 发射激光和曝光图片。

2. 读出成像仪的行。

3. 处理这些行,来判定激光点的质心。

4. 计算相应质心的距离。

5. 格式化并传播测量。

II-7 主要电子构建的程序框图

II-7的程序框图列出了主要的电子构件。CMOS成像仪还整合了时序和控制,并且只需要一个帧脉冲就能够开始曝光,并能够顺序读取10行的数据;同样的脉冲能够启动激光输出。处理机——DSP,把图像数据直接弄到内存中,在那里完成发现质心以及距离映射。唯一的外存,是一个小的串行闪存,它用来存储DSP程序和校准数据。

所有的主要组件安装在一个小的印刷电路板上,并附加到了透镜模块上(参照图II-5)。这个模块在正常操作下,耗电量小于1W。曝光操作和读数操作是顺序进行,然而处理操作跟这些操作是并行的。速度的主要限制在于读出10行数据所耗费的时间。通过使用基于成像仪的分箱技术,能够在0.25 ms时间内(即每秒4000个距离点),执行曝光-处理-读数这个循环。

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 9#

G.性能

我们用两种方式来测评LDS单点模块:

1. 使用白色目标,新的校验模块的错误和距离(大于90%的反射情况)

2. 10%的反射情况下的错误和距离

II-8列出了反射情况在10%和90%情况下的激光点定位错误。这些错误是随机的,错误来源是试图把图像中的激光点定位到亚像素精度上。这些像素错误,通过使用填充后的1/x曲线转换为距离错误。

90%的反射情况下,每3m的错误在3mm以下。3m情况下,三角测距的敏感度是78mm/pixel。所以定位错误小于0.05像素。随着距离的增加,敏感性也产生了更高的错误率。4m情况下的错误是个异常,这是我们算法本身造成的。

 一个有趣的现象是,在0.5m以下,错误并不能降低很多。这是因为,这时激光点的外观尺寸会增大,同时更多的像素点在cloaser距离上也变饱和了。因此很难准确地定位。

我们也生成了10%的反射结果 (基本上是黑的)。更远距离的错误率是很高的,这也显示出了定位中的不确定性。

为了进行对比,我们也列出了1/x曲线的校错误。在1m及以上,镜头失真的补偿对性能是很重要的。即使使用一个小的基线,Revo模块在6m范围内,错误率也很低。

(0 )
评论 (0) 举报

楼主 | 回复于 2018-06-20 10#

III扫描和同步

为了扩大单点距离传感器的视场,必须进行扫描。三角测距传感器的标配,是使用反光镜来倾斜光束来使反射光返回到图像感知器上。这种安排是庞大的并且很难进行校验,而且需要反光镜、成像仪和透镜的精确定位。很难实现完整的扫描—一般情况下是180°或是更少。

相反,激光导航传感器模块很小,并且具有机械扫描的刚性。在现有设备中,该模块在一个平面内进行旋转,并产生高达10Hz的全平面扫描。这一独特的机械安排,省去了高昂的反光镜和顺序排列的问题,使得激光导航传感器能够靠谱地运行,同时维持了低成本。别的排列也是可以的。例如,可以通过将测量模块从一个点变为一系列的点或是一个激光线来实现全3D扫描。

 

A. 旋转扫描

激光导航传感器模块安装在一个轴承上,并且绕着透镜和成像仪之间的轴线进行旋(参照图I-1)。模块旋转时,会发射激光,并且以1°的分辨率来读数。10Hz的旋转频率下,能达到3600读数/秒,低于4000读数/秒的最大频率。

透镜模块的供能部分,是旋转中心的一个双线环。115Kbaud的短程无线电调制模块,足够对每个读数发送一个2-byte的数据。

旋转扫描的机理,在III-1中进行了描述。激光偏离了旋转的中心;相对于固定的坐标系统(原点是旋转的中心),扫描物体的位置是x, y。x, y由下面的公式得出

这里,距离b由一条通过旋转中心并且与成像仪平面平行的线进行测量。(在图III-1中)

(0 )
评论 (0) 举报
发表回复
0/3000





举报

请选择举报类别

  • 广告垃圾
  • 违规内容
  • 恶意灌水
  • 重复发帖

全部板块

返回顶部