基于OpenMV的自动巡线无人机研究

2021-07-22 07:07刘轩宇李浩阳胡子琨
电子测试 2021年12期
关键词:飞控循迹巡线

刘轩宇,李浩阳,胡子琨

(北京信息科技大学,北京,100089)

0 引言

1 硬件设计

四旋翼无人机是一架由遥控站管理、不搭载操作人员的一种动力空中飞行器,四旋翼无人机系统一般包括地面系统、支撑和外观系统、飞行控制系统、动力系统、任务载荷。

动力系统:电动机;电子调速器;电调连接板;桨叶;电池。

支撑和外观系统:支撑和外观系统是指无人机的承载平台,无人机上所有设备都是用机架承载起来飞上天上的,无人机的机架好坏,很大程度上决定了这部无人机的使用寿命。现在常见的无人机,机架的组成大同小异,主要由中心板、力臂、脚架组成。

飞控系统:四旋翼飞行器的控制系统分为两个部分:飞行控制和无刷直流电机调速系统。

飞行控制系统通过IMU惯性测量单位(陀螺传感器和加速度传感器组成),用于监测飞行姿态,通过无线通讯模块与地面遥感通讯。

4个无刷直流电机调速系统总线与飞行控制器通信,通过4个无刷直流电机的转速来改变飞行姿态,整个系统采用低压电池供电。四旋翼飞行器是通过调节四个电机转速来改变旋翼转速,实现升力的变化,从而控制飞行器的姿态和位置,是一种六自由度的垂直升降机。

地面系统:典型的地面站由一个或多个操作控制分站组成,主要实现对飞行器的控制、任务控制、载荷操作、载荷数据分析和系统维护等。

(1)系统控制站:在线监视系统的具体参数,包括飞行期间飞行器的健康状况、显示飞行数据和告警信息。

由表3可知,当反应时间达到3 h时酶解基本完全,此时的提取率最高。反应时间过长,可能导致水解蛋白质变性分解,当反应时间达到3 h时最佳。

(2)飞行器操作控制站:它提供良好的人机界面来控制无人机飞行,其组成包括命令控制台、飞行参数显示、无人机轨道显示和一个可选的载荷视频显示。

(3)任务载荷控制站:用于控制无人机所携带的传感器,它由-个或几个视频监视仪和视频记录仪组成。

(4)数据分发系统:用于分析和解释从无人机获得的图像。

(5)数据链路地面终端:包括发送上行链路信号的天线和发射机,捕获下行链路信号的天线和接收机数据链应用于不同的UAV系统,实现以下主要功能:用于给飞行器发送命令和有效载荷;接收来自飞行器的状态信息及有效载荷数据。

(6)中央处理单元:包括一台或多台计算机, 主要功能:获得并处理从UAV来的实时数据;显示处理;确认任务规划并上传给UAV;电子地图处理:数据分发;飞行前分析;系统诊断。

本项目的自动巡线无人机主要以飞行控制模块,OpenMV模块,动力模块以及接收机构成。当无人机巡线飞行时,OpenMV模块中的摄像头会将采集到的图像进行分析,判断循迹线的位置,并通过相应的串口通信把相应飞行指令传输给飞控模块。飞控模块接收到指令后,向动力模块输出PWM值,控制电机速度,改变无人机的当前飞行姿态,完成纠偏过程。整体结构示意如图1。

图1 无人机总计结构

1.1 巡线模块

巡线模块采用OpenMV开发板。OpenMV是一款低功耗,小巧灵活,低成本的单片机摄像头,旨在搭建一种简单,便捷的单目机器视觉模块。其核心为STM32H743VI ARM Cortex M7 处理器,480 MHz ,1MB RAM,2 MB flash. 所有的 I/O引脚输出 3.3V 并且 5V 耐受。其搭载可拆卸的摄像头模块系统,可选择不同的感光元件模组。

1.2 飞控模块

无人机飞控,即无人机飞行控制系统,器采用了STM32F765VI单片机,STM32F765VI 采用ARM Cortex-M7为内核,内置陀螺仪(用作飞行姿态的感知),加速几,地磁感应,气压传感器,超声波传感器,光流传感器,GPS模块,控制电路组成。无人机飞控保证了无人机的姿态控制及其正常飞行。

2 软件设计

2.1 图像处理

图像采集或传输过程会产生噪声干扰,为了保证我们处理时,图像的完好性、抑制干扰,以及增强某些对后续处理重要的图像特征,我们首先需要对图像进行预处理,进行灰度化处理与滤波噪音。接下来,基于我们确定的某种循迹线的颜色,在OpenMV IDE中的阈值编辑器设置相应的阈值,来判断像素是否在阈值threshold中,接着将图像中的像素设置为白色或黑色(如果检测到符合阈值,则设置为白色,非阈值中设置为黑色),这样,我们就得到了一张只有黑色背景和白色循迹线的图像。这一过程又叫做图像的二值化。图像二值化效果如图一所示。

2.2 寻线识别

当我们得到一幅二值化图像后,我们需要调用get_regression线性回归的函数,对图像内的所有阈值像素(白色部分)进行线性回归,线性回归后的效果就是将图像二值化分割为绿白两部分(绿色为循迹线,白色为无关区域),其中magnitude函数可以表示我们线性回归的效果,其值越大,表明线性回归的效果越好。其中绿色的回归线即为我们需要的line对象[2]。我们要利用这个得到的line对象来计算我们需用的两个pid,来判断无人机当前位置。

当我们得到经过线性回归得到line图像后,我们需要通过对其引导参数,判断无人机的位置。通过函数计算和坐标变换得到line对象角度的偏移和左右距离的偏离。接下来,设置两组pid,即rho_pid和theta_pid,将角度偏移距离传递theta_pid,左右距离的偏离传递rho_pid。我们用这两组pid识别当前位置,控制无人机运动。当无人机向循迹线左边方向偏离时,距离偏移减小,循迹线处在视野左方。此时我们可以通过pid的调整使无人机向右偏航。同理,当无人机向循迹线右边方向偏离时,距离偏移增大,循迹线处在视野左方。此时我们可以通过pid的调整使无人机向左偏航。

2.3 无人机飞行设置

当巡线模块将计算的pid数据传递飞控时,飞控需要将数据转化成电机的pwm值,通过控制四个电机转速差达到各种偏航动作。本项目 针对电力巡线,故不存在直角转弯情况,故将飞行分为以下3种(本项目无人机以“X模式飞行”)。

(1)当巡线模块正常识别到循迹线时,无人机开始向前直线飞行,此时电机M1,M2减速,M3,M4加速。

(2)向左偏离,当无人机位于识别线左方,则无人机已经向左偏离航线,此时应在原有直线飞行的前提下提高M2,M3转速,无人机向右偏航,直至循迹线处在巡线视野中。

(3)向右偏离,当无人机位于识别线右方,则无人机已经向左偏离航线,此时应在原有直线飞行的前提下(也可适当降低航速)提高M1,M4转速,无人机向右偏航,直至循迹线处在巡线视野中。

3 结束语

无人机视觉研究的关注度越来越高,吸引了大批科研工作者前来研究[3]。而OpenMV作为一款入门级别的机器视觉开发模块,其便捷性及便利性也被人认可。本文即通过OpenMV模块无人机连接,最终实现自主巡线飞行。

猜你喜欢
飞控循迹巡线
基于DFT算法的电力巡检无人机循迹检测系统设计
春光美巡线忙
出没风波里,踏浪去巡线
民用飞机飞控通电自检测安全性研究
机载飞控1553B总线转以太网总线设计
无人机在电力巡线中的应用模式研究
02 飞控技术与机场安保引关注
飞控系统故障告警实时监控软件的设计与实现
智能差分循迹小车设计
基于MC9S12XS128处理器的智能循迹小车分析研究