肿瘤康复网,内容丰富有趣,生活中的好帮手!
肿瘤康复网 > 基于光流传感器定位和导航的自主飞行无人机

基于光流传感器定位和导航的自主飞行无人机

时间:2020-05-22 04:44:48

相关推荐

基于光流传感器定位和导航的自主飞行无人机

An Autonomous UAV with an Optical Flow Sensor for Positioning and Navigation

注:翻译水平有限,错误之处,敬请指正!

原文链接:/pdfs/45731.pdf

1.简介

得益于传感器、执行机构、处理器等技术的进步以及相关成本的减少,结合这部分的优点,使得半自动和全自动的多旋翼飞行器的建造成为可能。由于对自主系统存在不同的定义,这里理解为能够在没有任何外部设备的情况下能够完全独立运行其所有功能的系统。相比于使用GPS或光学跟踪摄像机定位的系统,称为半自主系统更合适,因为其需要依赖外部设备或信号。而自主系统能够在未知和没有GPS的环境下运行,例如室内、洞穴、隧道或者其它没有精确GPS信号可用的地方。已有的实现自主系统的不同方法有使用超声波、红外、激光雷达、立体摄像机或者微软的Kinetic相机。每一种都有自己的缺点,比如可靠性、价格、重量和大小。对于可靠性来说,多传感器系统才是主流,而且基于摄相机的系统会得益于更轻的重量、更便宜的价格和更小的体积。

尽管使用视觉定位的自主导航已经存在,但并不适合我们的系统,因为我们需要低成本、快速、精确、可靠以及简单的解决方案。由于未知的系统行为,复杂方案受限于高运算量和实现负担以及较高的失败风险。基于视觉的SLAM(实时定位与地图构建)算法已经实现,但是高运算量负担由一块外部CPU来完成,不符合我们对自主系统的定义。对于光流计算同样如此,因为复杂的设计和高运算量负担,需要在外部计算机上运行。因此,这篇论文介绍一种简单而快速的方案,只使用光流的原理来实现自主导航飞行器的定位。这种方法能够很容易和其它方案融合,并且适用于任何可扩展的系统。这篇论文详细解释了这种方法对自主飞行的实现及其优缺点。

基于光流的无人机避障方法已经被论述过了,但仅限于仿真。与之相反的是,这篇论文展示了来自真实室内环境下自主飞行的可靠实验数据,并且经过独立光学跟踪系统的评估。

2.光流定点

光流计算最常用的方法是差分,匹配,基于能量和基于相位。匹配和基于相位的方法有较高的运算负担,由于Lucas and Kanade差分算法的广泛使用及其展现出的可接受运算量和不错表现,决定将这种方法整合到不同的硬件,与ADNS3080光流传感器进行比较。

2.1 Lucas-Kanada算法

Lucas-Kanada[17]假设两帧图片之间的变化很小并且是恒定的,这意味着变换在邻域M内有效,并且是X-Y平面的平行移动,不考虑Z轴的旋转和变换。比较两个迭代图片,推导出以下最小二乘优化解决方案[20]:

(1)

这里的Px(i,j),Py(i,j)和Pt(i,j)是点P(i,j)分别对x、y和t的偏导数,u、v是求得的x和y轴上的光流值。

2.2 Srinivasan算法

这种优化可以通过应用Srinivasan算法[19]来实现,简化为比较图1中领域M为1的像素之间的亮度,将当前有效像素Pt与前一时刻像素Pt-1进行比较,并且在左右相邻像素P2和P1以及上下相邻像素P4和P3内进行缩放。使用公式(2)就可以计算出光流值。

(2)

等式(2)的推导也可以在参考文献[20]中找到,但是另一种推导是,可以将等式(1)中相对于x,y和t的偏导数简单替换为各自的差值,如公式(3)所示。

(3)

图1. 中间黄色标记的表示像素Pt或Pt-1,相邻像素用红色标记

Srinivasan[19]也提出了一个将旋转考虑在内的解决方案,但对于我们的简单实现来说,目前的基于2D位置变化的解决方案是足够的。

该算法的一个优点是它可以很容易地用一个循环将所有像素点遍历,而且,2×2矩阵的运算没有困难,因此该算法能做到实时执行。参考文献[21]展示了LK算法的升级版,并且在参考文献[22]中给出了该算法实现的开源代码。

3.光流传感器

3.1 实现(光流)

我们的目标是将光流传感器对着地面,计算高度为1m的四旋翼飞行器的相对位置。为了将这个传感器加到我们的自主四旋翼来实现导航,我们探讨了不同的方法。由于视觉系统的高数据量和速率,以及四轴飞行器上有限的存储空间和计算能力,选择正确的相机传感器并不简单。

3.2 传感器比较

OV7670是一个VGA(彩色)相机芯片,分辨率为640x480。使用STM32F4开发板来处理数据,由8位并行数据总线与传感器相连来读取图片,SCCB(类似于I²C的接口)仅用于向相机发送配置命令。由于微处理器有限的内存,使用QVGA代替VGA格式,这个也是相机支持的。同样因为微处理器有限的内存(192kb RAM),一个分辨率为320×240的QVGA图片,只有其中64×64个像素的子窗口被处理,实现了每秒30帧的速率。

ADNS-3080是一款光电鼠标传感器,可用于带SPI接口的分线板,作为具备两个自由度的现成光流传感器。该传感器分辨率为30×30像素,帧速率达到6400fps。为了更短的快门速度和在不良照明条件下获得更好的结果,帧速率被设置为2000fps。该传感器最大的缺点是软件并不开源,因此,它的功能也是未知、不兼容和不可扩展的。而且,灰尘和污垢是一个大问题。镜头是可更换的,并且它被切换到f = 16mm的焦距,以便更好地聚焦在距离约1m的物体上。

3.3评估(光流)

似乎只有OV7670和ADNS3080符合我们的要求,因此,我们对这两个传感器做了更进一步的评估。两个传感器都在一个方向以不同的速度来回移动20cm,结果如图2和图3所示。两个传感器都能够检测到运动及其方向,此外,图表清晰地表明,帧速率为30fps的OV7670移动的像素距离与速度有关,而ADNS-3080则没有这一现象。

图2. 帧速率为30fps的OV7670以不同的速度来回移动

图3. 帧速率为2000fps的ADNS-3080以不同的速度来回移动

3.4 结论(光流)

所实现的差分法假设两个图像之间的变化不高于一个像素,因此,只依据帧速率的速度是可测量的。这对于OV7670来说意味着每秒30个像素的平移是完全可检测的,这也解释了OV7670糟糕的表现,因为ADNS-3080有着6400fps的帧速率。

鉴于ADNS-3080表现出的良好性能,我们采用它来实现无人机的自主导航。

4.实现(自主飞行无人机)

4.1. 系统实现

四旋翼飞行器的硬件实现如图4所示,对红外、超声、气压计以及惯性传感器的数据进行融合来预测高度,详见参考文献[28].

整合了光流测量的位置估计已经实施,ADNS-3080使用的参数为2000fps、30×30分辨率、400CPI已及自动快门速度,这些都是传感器的默认参数,在正常光照条件下,更高的帧速率对光流输出效果没有明显提升。

图4. 硬件设计

光流输出结果需要根据高度来标定,为了找到正确的缩放因子Fs,传感器在1m高度向同一方向多次水平移动2m,转换后的结果以光学跟踪系统PPT X4[29]的真实值作为参考,如图5所示。

图5.缩放因子 Fs 校准

计算得到的缩放因子Fs为259.51,可以将传感器输出的像素值转化为真实移动距离。

图6. 系统核心设计

4.2 控制系统设计

每一个自由度都应用了经典PID控制器,这将6DOF系统累加到6个级联PID控制器[图6]。高度估计和高度设定是高度控制环的输入,高度控制确定四个电机的总电压,并以这种方式调节系统的升力。电压的四分之一对应一个8位值,并且根据姿态控制的输出将总电压分配给四个电动机。

光流位置估计的值是x轴、y轴方向控制器的输入,x轴或y轴控制器的第二个输入分别是位置x或y的设置点,可以远程更改。结合可变的高度,使得在三维空间里的自主飞行成为可能。光流估计值与设定值相减得到的误差作为x轴和y轴两个位置PID控制器的输入,位置控制器的输出作为roll、pitch方向姿态控制器的期望值。

5.评估(自主飞行无人机)

5.1 静态位置保持

在这个实验中,四轴飞行器被手动启动,然后切换到位置保持模式。位置控制器只使用光流传感器,而光学跟踪系统用来对系统进行评估。四轴飞行器悬停在离地1m高度的空中持续了6分钟,它的位置信息在整个飞行过程中被记录下来[图8-9],对于光学跟踪和测距(光流),与中心位置的标准偏差约为0.1m,双向标准偏差约为0.16m,这意味着95%的时间轴距(螺旋桨端部到端部)为64cm的四轴飞行器在96cm(64 + 2×16)直径的圆内。

图8. 位置保持:测距(光流) 图9.位置保持:光学跟踪

比较图8和图9,可以发现一个小的差异,似乎与yaw方向的偏移有关。从图10两张实验开始时和365s后的图片中,可以清晰地看到,在实验过程中,四轴飞行器在yaw方向偏移了13°。

图10. 位置保持开始(左图)和365s之后(右图)

这个现象是陀螺仪积分造成的漂移,由于系统没有使用磁力计对yaw进行补偿,yaw方向的旋转会引起光流计算错误,导致飞行器飞向附近的一个错误位置。

5.2 动态控制

为了研究系统的控制行为,进行了一个实验,其中四轴飞行器必须对阶跃响应做出反应。四轴飞行器在位置保持模式下,起点为Po=(x=0,y=0),远程设定的目标位置为P1=(x=2m,y=0),图11显示了系统的响应。

图11. 阶跃响应:从(0,0)到(2,0)

该图证明了控制器的稳定性,飞行器在3s(上升时间)内就到达了设定点,超调量大约为15%(约0.3m),稳定时间在7-9s内。

最终的位置误差大概为0.15m,造成误差的原因是,由于飞行器需要绕pitch方向旋转来实现x轴方向的移动,旋转导致了光流传感器错误的位置测量。这是最有可能的,因为图11显示了在85s时刻的偏移与两条曲线之间的差异很类似。在85s处,飞行器收到了新的命令并向pitch方向移动,从图中可以看到,pitch方向的旋转导致了光流的测量错误。

5.3 自主飞行

在这个实验中,四轴飞行器的飞行路径为Nikolaus小屋,这是一个小孩儿玩的游戏,小屋必须一笔画完而不能有重复,因此,每面墙只能画一次。四轴飞行器的飞行路径如图12所示,在控制软件的地图上,显示了Nikolaus小屋的绘图,四轴飞行器自主飞行实现了路径跟踪[图13]。这个图表明了已经提到的问题,比如yaw轴的漂移以及roll、pitch方向的旋转问题,这都导致了光流测量和光学跟踪系统之间的位置误差,不过,这个实验证实了这个系统的潜力,四轴飞行器是可以实现自主飞行的。

图12. 飞行计划 图13.自主飞行:光流(蓝),光学跟踪(绿),设定路径(红)

6.结论和展望

可以证明,用光流传感器实现自主飞行是可行的。

Yaw方向的漂移问题可以用磁力计来解决,通过将方向信息融合到光流的测量,来补偿yaw旋转的测量误差。此外,我们做了一个伺服电机驱动的两轴云台,根据飞行器的姿态进行调节,可以使光流传感器始终保持水平,而不会受到飞行器roll、pitch旋转的影响。

7.致谢

略。

8.参考文献

[1] Nonami K., Autonomous Flying Robots, Springer,ISBN-10: 4431538550,

[2] Microdrones GmbH,

[3] ArduCopter, /p/arducopter

[4] HiSystems GmbH, www.mikrokopter.de

[5] Mellinger D. et al., Trajectory Generation and Control for Precise Aggressive Maneuvers with Quadrotors,The International Journal of Robotics Research, Vol.31 No. 5,

[6] Gageik N., Mueller T., Montenegro S., Obstacle Detection and Collision Avoidance Using Ultrasonic Distance Sensors for an Autonomous Quadrocopter,UAVveek

[7] Grzonka S. et al., A Fully Autonomous Indoor Quadrotor, IEEE Transactions on Robotics, Vol. 28 No. 1, February

[8] Gronzka S., Mapping, State Estimation, and Navigation for Quadrotors and Human-Worn Sensor Systems, PhD Thesis, Uni Freiburg,

[9] Lange S., Sünderhauf N. Neubert P., Drews S.,Protzel P., Autonomous Corridor Flight of a UAV Using a Low-Cost and Light-Weight RGB-D Camera,Advances in Autonomous Mini Robots, ISBN: 978-3-642-27481-7,

[10] Ding W. et al., Adding Optical Flow into GPS/INS Integration for UAV navigation, International Global Navigation Satellite Systems Society, IGNSS

[11] Wang J. et al., Integration of GPS/INS/VISION Sensor to Navigate Unmanned Aerial Vehicle, The International Archives of Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol.XXXVII Part B1, Beijing

[12] Blösch M. et al., Vision Based MAV Navigation in Unknown and Unstructured Environments,Robotics and Automation (ICRA), IEEE International Conference, 21-28,

[13] Corke P., An Inertial and Visual Sensing System for a Small Autonomous Helicopter, Journal of Robotic Systems, Vol. 21, No. 2, 43-51,

[14] Kendoul F. et al., Optical-flow based vision system for autonomous 3D localization and control of small aerial vehicles, Robotics and Autonomous Systems,

Elsevier,

[15] Herisse B. et al., Hovering flight and vertical landing control of a VTOL Unmanned Aerial Vehicle using Optical Flow, IEEE International Conference on

Intelligent Robots and Systems,

[16] Zing S. et al., MAV Navigation through Indoor Corridors Using Optical Flow, IEEE International Conference on Robotics and Automation,

[17] Lucas, B. and Kanade, T. An iterative image registration technique with an application to stereo vision. In Proceedings of the International Joint Conference on Artificial Intelligence, 674–679, 1981

[18] Barron et al., Performance of Optical Flow Techniques, International Journal of Computer Vision, Vol. 12, No. 1, 43-77, 1994

[19] Srinivasan M., An image-interpolation technique for the computation of optic flow and egomotion,Biological Cybernetics, Springer-Verlag, 1994

[20] Strohmeier M., Implementierung und Evaluierung einer Positionsregelung unter Verwendung des optischen Flusses, Würzburg, BA Thesis,

[21] Rav-Acha A., Peleg S., Lucas-Kanade without iterative Warping, International Conference on Image Processing, IEEE, 1097-1100,

[22] Centeye Inc., /

[23] µCAM Serial JPEG Camera Module, Data Sheet, 4D Systems, .au

[24] CMUcam: Open Source Programmable Embedded Color Vision Sensors,

[25] OV7670/OV7171 CMOS VGA (640x480) Camera Chip, Implementation Guide, OmniVision,/

[26] ADNS-3080 High-Performance Optical Mouse Sensor, Data Sheet, Avago Technologies,

[27] STM32 F4 DISCOVERY, Data Brief, September ,STMicroelectronics,

[28] Gageik N., Rothe J., Montenegro S., Data Fusion Principles for Height Control and Autonomous Landing of a Quadrocopter, UAVveek,

[29] WorldViz,

[30] Qt Project,

如果觉得《基于光流传感器定位和导航的自主飞行无人机》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。