目前市场上扫地机器人的路径规划都是由超声波、红外等传感器测量得到当前的位置再结合算法规划出理想路径。由于传感器精度等问题,无法定位出精确的位置,导致机器人出现运动轨迹混乱等问题。

基于光流传感器的机器人可以解决传统扫地机器人运动轨迹混乱的问题。基于光流传感器定位技术的路径规划式寻路系统清扫覆盖率大,工作效率高,采用了类似光电鼠标定位与移动位移测量方式,结合激光测距传感器对当前扫地机器人的位置及运动方向进行监测,并根据监测得到的位置与位移方向、速度等信息,搭载摄像头、电子罗盘、超声波模块、激光测距仪这几个传感器来实时监测机器人的工作环境的变化。核心处理器对各个传感器传回的数据进行分析,以此来实现基本无碰撞的扫地过程,并对扫地机器人的运动路径进行规划,实现扫地机器人对应用环境的全方位清洁。

1光流

光流是一种简单实用的图像运动的表达方式,通常定义为一个图像序列中的图像亮度模式的表观运动,即空间物体表面上的点的运动速度在视觉传感器的成像平面上的表达。

1.1光流法检测运动物体的基本原理

给图像中的每一个像素点赋予一个速度矢量,这就形成了一个图像运动场,在运动的一个特定时刻,图像上的点与三维物体上的点一一对应,这种对应关系可由投影关系得到,根据各个像素点的速度矢量特征,可以对图像进行动态分析。如果图像中没有运动物体,则光流矢量在整个图像区域是连续变化的。当图像中有运动物体时,目标和图像背景存在相对运动,运动物体所形成的速度矢量必然与邻域背景速度矢量不同,从而检测出运动物体及位置[1]。

1.2光流传感器

光流传感器(如图1所示)自带图像处理,原理是光源发光被地面反射回接收器,因为地板表面的形貌是不同的,所以接收器收到的时间间隔很短的两帧图像是有差别的,处理器通过算法由前后几帧图像的差别解算出机器人移动的距离、方向和速度。

搭载了光流传感器的扫地机器人与传统的碰撞式的扫地机器人最大的区别就在于其定位方式不同。传统的扫地机器人的定位能力仅依靠超声波或者红外测距模块来实现一些粗糙的定位。而搭载了光流传感器的扫地机器人的工作原理与生活中常用的光电鼠标类似。如图2所示,机器人底部会有一个发光二极管,通过该发光二极管照亮机器人的底部表面。然后通过机器人底部表面反射回一部分光线,经过一组光学透镜,传输到一个光感应器件(微成像器)内成像。这样,当机器人移动时,其移动轨迹便会被记录为一组高速拍摄的连贯图像。再利用机器人内的一块DSP芯片对每张图像进行处理,以判断机器人移动的方向以及位移,从而得到机器人x、y方向的移动数据。最后通过SPI传给MCU。MCU对这些数据进行处理,来获取机器人的运动路径[2]。

2路径规划算法

2.1栅格地图法概述

Elfes、Moravec 等研究人员在1985年共同设计出了栅格地图法。所谓的栅格地图法就是把一个环境区域等分为空间一样的小方格,然后依据每个小方格中是否有障碍物将所研究的环境分为障碍区域和非障碍区域,这样就建立出了环境地图。因为每个方格中是否存在障碍物都是直接与研究环境中的区域一一对应的,因此根据清洁机器人所配备的传感器系统探测到的信息即可轻易获取环境中每个方格是否为障碍物区域。传感器系统将这些信息反馈到清洁机器人控制中枢,控制中枢再根据接收到的信息及时调节机器人运行方向,从而达到避障效果。

2.2基于栅格法的清洁机器人路径规划方案

使用栅格法构建环境地图就是将环境区域等分为若干个小矩形单元格,将每个小单元格作3种不同类别的标记,主要分为有障碍和无障碍以及已清扫3类单元格区域。这样,环境区域就被一系列的矩阵栅格表示出来了,环境地图构建成形,而整个环境地图也被一个个的小单元格离散化,依据环境栅格地图与实际环境区域之间的映射关系结合环境地图的离散化实现了实际环境区域的离散化。在环境栅格地图中,其中一部分或者全部被障碍所占用的单元格都称为障碍栅格,完完全全没有被障碍物占据的单元格称为无障碍栅格,而无障碍栅格又可以依据清洁机器人是否运行过分为待清洁栅格和已覆盖栅格。

假设整个环境区域的长、宽分别是L、D,而方形小单元格边长是A,那么栅格数目是L×D/A2,环境区域E可以用下面的集合来表示: E={Gij|Gij=0,1,2;i,j为正整数} 其中Gij代表栅格,i代表方形单元格的行数,j代表方格的列数,Gij=2是指该位置栅格为障碍栅格,Gij=1是指该位置栅格为已覆盖栅格,Gij=0 是指该位置栅格是待清洁栅格。栅格地图法极其便于建立以及维护,且构建的环境地图中的每一个栅格都与实际环境区域相对应[3]。

2.3光流定位在栅格法中的应用

光流定位能实时反应物体的运动状态,得出物体的二维位移。如图3所示,假定一个栅格的正方形边长为a(a>扫地机器人的直径b),将室内划分成一个个的栅格。

那么可以以扫地机器人的充电位置所在的墙角为起点的第一个栅格G00,可以知道G00为无障碍栅格。机器人先检测这个墙角四周的环境,接着以充电处为原点建立直角坐标系,设定二维平面运动的正方向,再确定初始运动方向为x轴正方向。机器人沿x轴方向探索,记录室内x轴所占的栅格数,不足一个栅格也记一个,在图3的路线为G00→G50,G50为不完整栅格。碰壁之后,机器人会向y轴上一个栅格,接着沿x轴负方向运动,整个探索过程是地毯式的搜索。遇到障碍物时,机器人会在原先地毯式搜索的基础上绕行,在图3的路线为G50→G51→G50→G40→G41→G40→G30→G31。机器人会在不碰到障碍的前提下把室内的环境尽可能的探索,建立一个关于室内栅格的数组,记录室内的地形。机器人在后面的清扫中可以实时修改这个数组的数据,规划出合理的清扫路线。

对于栅格大小,理论上太大太小都有弊端,所以栅格正方形的边长应略大于机器人的直径,以方便算法的运行,也尽可能减小盲区。在遇到障碍时尽量靠边走,在不干扰原先运行轨迹的前提下,尽可能减小清扫盲区。

2.4机器人路径规划系统

系统框图如图4所示,光流传感器安装在机器人的底部,获得的运动数据可以通过SPI传给MCU。同时,激光测距传感器实时全方位地检测工作的周围环境,一旦发现障碍物的距离低于预设值,就发送信号给MCU,MCU立即改变左右电机的转速,实现避障。

3结论

实践证明,该方案构成的系统功能基本得到了实现,初步成型如图5所示,光流传感器位于机器人底部。

经过实际测试,机器人在偏差允许的范围内基本完成了算法规划的路径,在LCD上打点显示如图6所示。

参考文献

[1] 陈震.图像序列光流计算技术及其应用[M].北京:电子工业出版社,2012.

[2] 董颖.基于光流场的视频运动检测[D].济南:山东大学,2008.

[3] 张建龙.清洁机器人避障控制及路径规划[D].武汉:武汉科技大学,2015.

光流传感器 定位精度_【论文精选】基于光流定位的自动路径规划清扫机器人...相关推荐

  1. 光流传感器 定位精度_基于光流传感器的移动机器人定位方法

    基于光流传感器的移动机器人定位方法 李世云 ; 关乐 ; 褚金奎 [摘 要] 详细介绍了光流传感器移动机器人定位系统的运动学原理 , 给出了理论模 型推导 ; 基于理论模型 , 搭建了基于光流传感器实 ...

  2. 光流传感器 定位精度_基于多传感器的无人机定位和避障技术研究

    摘要: 随着无人机技术的快速发展,无人机已逐渐走进人们的生活和工作.现有常规的无人机仍依赖于专业人员的操纵,无人机技术存在着环境感知能力.自主飞行能力不足等问题.为进一步提高无人机的环境感知能力并扩展 ...

  3. 光流传感器 定位精度_光流传感器其它方面的应用

    光流传感器可以通过在一定的时间内拍摄两张不同的照片.进而计算出物体运动的速度.光流是一种简单实用的图像运动表达方式.通常定义为一个图像序列中的图像亮度模式的表观运动. 光流法检测运动物体的基本原理是: ...

  4. 光流传感器 定位精度_光流定位原理是什么??【转】

    光流传感器通过IAS以一定速率连续采集物体表面图像,再由DSP对所产生的图像数字矩阵进行分析.由于相邻的两幅图像总会存在相同的特征通过对比这些特征点的位置变化信息,便可以判断出物体表面特征的平均运动, ...

  5. 光流传感器 定位精度_光流传感器

    学号:16020188037      姓名:崔岸婧 转载自:https://blog.csdn.net/mao_hui_fei/article/details/85342528 [嵌牛导读]:对光流 ...

  6. 光流传感器 定位精度_光流定位原理是什么??

    在无人机上光流定位通常是借助于无人机底部的一个摄像头采集图像数据,然后采用光流算法计算两帧图像的位移,进而实现对无人机的定位,这种定位手段配合GPS可以在室外实现对无人机的精准控制,并且在市内没有GP ...

  7. 基于dijsktra算法的最短路径求解_基于dijkstra算法的AGV路径规划(含C++代码)

    文字&代码来源: @Wasabi喵喵喵 基于dijkstra算法的AGV路径规划 dijkstra算法的路径规划 经典Dijkstra算法是一种贪心算法,根据路径长度递增次序找到最短路径,通常 ...

  8. 基于强化学习的智能机器人路径规划算法研究(附代码)

    目录 一.摘要 二.路径规划技术的研究进展 1.研究现状 2.算法分类 2.1 全局路径规划算法 2.2 局部路径规划算法 三.本文采用的路径规划算法--强化学习 1. 概念 2. 与其他机器学习方式 ...

  9. matlab遗传算法无人机问题,基于改进遗传算法的无人机路径规划

    [1] 杨陆强, 果霖, 朱加繁, 等. 我国农用无人机发展概况与展望[J]. 农机化研究,2017,39(8):6-11.(YANG L Q,GUO L, ZHU J F, et al. The d ...

最新文章

  1. y430p linux无线网卡,centOS7.5安装BCM43142无线网卡驱动(如,联想Y430P)
  2. 修改单个viewcontroller的状态栏字体颜色
  3. OpenCV支持向量机SVM简介
  4. CodeForces - 1453D Checkpoints(概率+构造)
  5. aix磁盘挂载到linux,AIX下文件系统挂载点相互调换方案
  6. 一些网站github等无法连接服务器的解决办法
  7. linux之history使用技巧
  8. JavaScript中的.trim()无法在IE中运行
  9. Linux内核多线程(二)
  10. python适合创业吗-python创业
  11. 双向链表(double linked list)
  12. 四川计算机职称考试报名时间2015年,2015年四川省计算机职称考试各城市报名时间...
  13. 十年互联网 十个风云人物
  14. 【2018提高测试】飘雪圣域 【连通性+可持久化线段树 / 离线+权值线段树】 (详解)
  15. GooglePlay应用上架流程
  16. 世界上最具价值的10家公司!
  17. excel表格拆分为多个工作表的操作方法
  18. 抖音 文本转换html,html抖音效果CSS
  19. 简历中使用STAR法则
  20. win10关闭自动更新(针对已经关闭windows update项,但系统仍自动更新的问题)

热门文章

  1. iOS应用将支持在Mac上运行腾讯视频,QQ会员,网易云,统统五折,官方直冲
  2. Activity 的介绍和使用(一)
  3. 在flake8源文件中修改最大字符长度
  4. R语言使用epiDisplay包的pyramid函数可视化金字塔图、使用cex.bar.value参数自定义金字塔图中条形的数值标签的大小
  5. sin值(0到90度)
  6. 关于Importerror:Filepath looks like a hdf5 file but h5py is not available 解决
  7. vue 项目启动时,警告“No parser and no filepath given”如何解决?
  8. 联通2g信号显示无服务器,换新手机吧!联通关闭2G3G信号 手机显示无信号竟然是这个原因!...
  9. JEECMS源代码节本结构及相关技术总结:
  10. java callable接口_Java Callable接口实现细节详解