植保飞行器的设计与实现研究

时间:2023-04-13 09:00:14 关键词: 植保飞行器 openmv 姿态解算 串级pid

摘要:目的探究四旋翼飞行器在飞行中实现一键起飞、平稳飞行和准确降落等。方法基于openmv进行飞控视觉识别和陀螺仪MPU6050姿态角度解算。控制系统采用全闭环控制,通过前视和下视摄像头完成视觉识别,速度为主高度为辅的调节方式控制飞行器。

植保飞行器的设计与实现研究

近年来,计算机科学与传感器技术的飞速发展,无人机得到广泛应用。以无人机作为载体的遥感技术在实现农业现代化、精准化、信息化等方面有着重要的作用。植保飞行器作业作为兴起的新式农业植保形式,可以实现农田时事精确的监测、管理及分析。植保飞行器的作业灵活、突击能力强、成本低,有效地提高了植保作业的工作效率[1]。此外,植保飞行器的应用推广能够降低农业成本,提升农作物种植质量,有效保护生态环境,符合农业发展的需求。四旋翼植保飞行器在我国发展迅速,具有体积小、操作简单、安全性高、机动性好等优点,操作人员可以实现非直接接触实现远离作业现场进行操作[2]。因此,小型四旋翼植保飞行器的研究具有重要的意义。课题组设计了一款基于四旋翼飞行器的模拟植保飞行器,能够实现一键起飞、稳定飞行、定点定高悬停、精准降落于起降点等基本功能,对指定的田块完成播撒作业。

1理论分析

1.1结构设计

设计的模拟植保飞行器主要由飞行控制模块、视觉识别模块、超声波模块、姿态解算模块、稳压模块等部分组成,飞行器的结构如图1所示。主控模块采用MSP432P401R芯片,利用其支持低功耗应用,提升CPU速度等高性能进行多方通信和姿态控制,视觉识别模块采用openmv摄像头,对播撒区域进行识别,准确判断飞行器所处的位置,完成机器视觉识别。姿态解算模块经过主控芯片处理采集的数据,用优化串级PID控制算法对数据进行处理,使飞行器的飞行更加稳定。空间定位模块采用“激光模块+气压计定高”,解算空间位置。

1.2姿态解算

飞行器的姿态是其飞行稳定的基础,姿态结算的精度直接关系到姿态控制的稳定性[3]。设计飞行器的姿态解算模块采用姿态传感器MPU6050,这是一款六轴传感器,包括三轴加速度和三轴角速度,融合了磁力计。MPU6050无法直接输出角度,但在飞行器的飞行控制过程中,需要用到角度信息。获取MPU6050模块输出的角速度和加速度的原始数据,控制器对其进行姿态融合,MPU6050自带数字运动处理器,可以将原始数据直接转换为四元数输出,解算得到角度输出。通过上述解算得到角度以及加速度和角速度信息,采用卡尔曼滤波[4-9]对其进行滤波处理,保证姿态估计的准确性。

1.3串级PID控制

本设计采用X型结构的四旋翼飞行器,机头位于两个相邻机臂对称轴的方向,在运动中有六个自由度(质心的三个移动自由度和绕质心的三个旋转自由度),能够通过控制电机的转速来控制调整机桨的转速,控制飞行器的飞行,完成垂直运动、侧向运动、前后运动及俯仰运动等[1],具有飞行所需平衡力矩小、飞行稳定且灵活、体积小、电机耦合紧密等优点。四旋翼飞行器在飞行过程中容易受到自身震动、气流、空气阻力等因素的影响,因此,姿态的控制影响其飞行稳定。飞行控制采用串级PID控制结构[10-14],控制模型如图2所示。遥控器的舵量转换为输出角度的期望值,与当前姿态解算单元测量的飞行器当前角度值共同构成了外环PID的输入值和测量值,通过外环PID控制器,得到目标姿态输出,输出值和陀螺仪的角速度构成了内环PID的输入值和测量值,通过内环PID控制器得到三轴(偏航,俯仰,翻滚)的期望速度,通过三轴独立的PID控制器实现四个电机的转速。

1.3.1PID控制源码

//速度环PID测量值由陀螺仪给出PIDGroup[PID_Roll_Spd].measured=fb_gy-ro_lpf[0];PIDGroup[PID_Pitch_Spd].measured=fb_gy-ro_lpf[1];PIDGroup[PID_Yaw_Spd].measured=fb_gy-ro_lpf[2];//位置环PID测量值由解算的姿态给出PIDGroup[PID_Pitch_Pos].measured=g_Attitude.pitch;PIDGroup[PID_Roll_Pos].measured=g_Attitude.roll;PIDGroup[PID_Yaw_Pos].measured=g_Attitude.yaw。

1.3.2PID调试

外环控制输出角度,内环控制角速度且直接作用于电机,一般直接调试内环PID。PID调试时,保证输出不振荡的情况下,通过增大比例增益P,减小积分时间常数Ti,增大微分时间常数Td的调试原则进行。调试时,使用默认PID参数,观察飞行器系统的振荡情况,若飞行器晃动越来越大,考虑P过大。若出现晃动但会趋于稳定,考虑可能是D或者I过大。对PID参数修改之后进行试飞。一般地,取PID的系数在振荡范围的70%P、150%Ti、30%Td为目标值。

1.4飞行高度的控制

飞行器的高度控制是保证其飞行稳定的基础。飞行器的目标高度与当前高度的差值作为高度差,当飞行器当前高度低于目标高度时,高度差为正,飞行器加速。当飞行器当前高度超过目标高度时,高度差为负,飞行器减速。单一的高度控制,飞行器的飞行方向与高度差的正负有关,速度恒定,到达目标高度时候会出现飞机无法及时减速刹停,在目标高度附件反复升降。通过单一的速度控制高度,飞行器出现向上的速度时,控制器输出负值,抵制飞行器的加速;飞行器出现向下的速度时,控制器输出正值,上升回来。要实现高度的调节和稳定的定高,必须在飞行器达到目标高度之前,通过速度控制实现飞行器的“刹车”。飞行高度控制的基本思路:目标控制器输出向上的速度v0时,定高的速度控制器输出方向相反的速度v1,抵制加速;反正亦然,并且随着高度差的减小,v1逐渐增大,直到v0和v1的合速度v为0。由于高度测量的精度较低,飞行器距离目标高度有一定距离时,速度变化过于微小就无法检测。此时将高度差作为微调加到合速度v里进行计算。合速度v为0,由于存在高度差,输出实际飞行器的定高速度不为0,直到高度差和合速度v速度都为0时,定高速度才输出为0,实现刹车。速度作为动态快速响应,高度作为微调校正,即速度为主,高度为辅,作为微调的高度差的输出不能大于速度控制器的输出。

1.5定点降落

在飞行器定点降落的实现过程中,标定飞行器的坐标,即前后为X轴,左右为Y轴,通过openmv识别降落图标,输出openmv摄像头视野中的(x,y)坐标。飞行降落测试中,飞行器在飞行到降落点后开启识别程序,openmv开始识别并进行坐标矫正,将初始坐标(x,y)、目标坐标(x)0,y0、计算目标点(x)0−x,y0−y输入飞行控制程序中,通过循环控制,直到(x)0−x和(y)0−y均小于误差时,飞行器开始降落,最终完成定点降落。

2飞行控制实现

飞行控制的框架示意图如图3所示,遥控器获取舵量信息并输入到控制器,传感器将加速度、气压计、陀螺仪等姿态值输入到串级PID单元中进行调节,控制器根据PID单元传回的解算结果,得到电机的期望值,经过驱动电路转换,作用于电机。飞行器的控制流程如图4所示。飞行器通过系统上电进行硬件自检测,初始化寄存器以及内核驱动后对BSP层级COSIIX系统进行初始化,完成后,初始化相关外设如参数初始化、GPIO初始化、传感器初始化及通信接口。接着进行系统任务调度,处理包括数据采集处理、姿态控制、位置控制、飞行校验、飞行编码等任务程序保证飞行器飞行的稳定性,并能运行任务代码灵巧地完成特定的播撒任务。

3测试

播撒作业区示意图如图5所示,浅色部分是非播撒区域,深色部分是待“播撒农药”的区域,分为多个50cm×50cm的区域,以全覆盖的飞行方式完成播撒作业。黑底白字的“+”字是飞行器起降点标识,播撒作业起点区块,用“A”标识。整个作业过程中实现播撒区域不漏撒、不重复播撒。设计的植保飞行器播撒具体飞行路线如图6所示,可以完成指定田块的播撒任务。如图7所示,飞行器在“+”字起降点垂直起飞,升空至巡航高度150±10cm,按照飞行路线完成图中所有绿色区块的全覆盖播撒,图8为飞行器正在完成播撒作业。飞行器在飞行过程中能够识别杆中套有的黑白色条码,并利用扫描出的数字进行闪烁,如图8(b)所示。以起降点“+”的中心为圆心,扫描出的数字乘以10cm为半径,在该圆周上平稳降落。经多次测试,飞行器在完成飞行播撒之后能够稳定准确降落在起降点,图9为完成一次测试飞行之后的降落位置,飞行器几何中心与起降点中心的偏差不大于±7cm。表1为飞行器的三次飞行测试数据,均满足测试要求。

4结论

设计的植保飞行器能够实现一键快速起飞,定点定高悬停,精准降落于起降点等基本功能,利用优化串级PID算法实现了飞行器运动速度和转向的稳定控制,能够完成对指定田块的撒播要求,具有一定的工程参考价值。今后将进一步对飞行器路径规划及续航时间等问题进行研究。

参考文献

[1]曹光乔,李亦白,南风,等.植保无人机飞控系统与航线规划研究进展分析[J].农业机械学报,2020,51(8):1-16.

[2]黄枭.基于STM32F427的植保无人机的设计与实现[D].绵阳:西南科技大学,2016.

[3]刘康安,张伟伟,肖永超,等.基于自适应无迹卡尔曼滤波的四旋翼无人机姿态解算[J].电光与控制,2022,29(7):126-131.

[4]于洋,李杰,余松,等.基于卡尔曼滤波的电磁流量计信号处理[J/OL].电子测量与仪器学报:1-9[2022-11-08].

[5]储开斌,赵爽,冯成涛.基于Mahony-EKF的无人机姿态解算算法[J].电子测量与仪器学报,2020(12):12-18.

[6]卢艳军,陈雨荻,张晓东,等.基于扩展Kalman滤波的姿态信息融合方法研究[J].仪器仪表学报,2020,41(9):281-288.

[7]符秀辉,赵茂鑫,周文俊.基于互补滤波算法的移动机器人姿态检测[J].测控技术,2015,34(6):31-33.

[8]万晓凤,康利平,余运俊,等.互补滤波算法在四旋翼飞行器姿态解算中的应用[J].测控技术,2015,34(2):8-11.

[9]石宇芃,马宏军,陈豹.基于四元数的四旋翼无人机扩展卡尔曼滤波算法[J].控制工程,2021,28(11):2131-2135.

[10]杨旭,曹立佳,刘洋.基于自耦PID控制的四旋翼无人机姿态控制[J].兵器装备工程学报,2021,42(10):170-175.

[11]郭婕,金海,沈昕格.基于神经网络PID算法的四旋翼无人机优化控制[J].电子科技,2021,34(10):51-55.

[12]禤家裕,裴海龙.串级PID的无人机自主起降系统设计[J].自动化与仪表,2010,25(10):28-33.

[13]范庆妮.小型无人直升机农药雾化系统的研究[D].南京:南京林业大学,2011.

[14]张镭,李浩.四旋翼飞行器模糊PID姿态控制[J].计算机仿真,2014,31(8):73-77.

作者:翟丽红 罗继阳 岳志 王怀彤 单位:太原工业学院电子工程系 北方自动控制技术研究所