本发明涉及无人飞行器技术领域,具体涉及到四旋翼无人飞行器及其控制方法。
背景技术:
四旋翼无人飞行器是一种通过无线远程遥控设备加之自身传感器实现自主飞行的不载人飞行器,其有6个自由度,4个控制输入,由4个无刷直流电机驱动产生的差动力矩实现其俯仰运动和翻滚运动,产生的反扭力矩实现偏航运动,是非线性欠驱动系统。这类飞行器广泛应用于军事和民用领域。四旋翼无人飞行器相比固定翼无人飞行器,由于能垂直起降,起飞和着陆的要求较低,灵活性高,在复杂的地势下有更强的适应性。目前使用最多的控制方法是PID控制,其通过识别目标,然后探测现状与目标的差距,再用行动消除它。PID控制结构简单,控制技术成熟,鲁棒性较好。但是,在四旋翼无人飞行器飞行过程当中,控制器当中的参数难以自动地调整来适应外界变化,因而很难达到预定的目标,影响控制效果。
技术实现要素:
本发明旨在解决现有技术中存在的技术问题。
为此,本发明提供一种四旋翼无人飞行器(Quadrotor Unmanned Aerial Vehicle,QUAV)及其控制方法,其基于权值调整量附加“惯性项”的BP神经网络(Back-propagation Artificial Neural Network with Inertia Term,BPNNI)与PID控制(Proportional Integral Derivative Control,PID)相结合的控制方法来控制四旋翼无人飞行器,使得无人飞行器抗干扰能力得到加强,自身鲁棒性得到提高。
一种四旋翼无人飞行器,包括机体和主控制器模块,还包括分别与所述主控制器模块连接的导航模块、传感模块、通信模块和电机控制模块,其特征在于所述导航模块采用卫星导航系统对飞行器进行定位并向所述主控制器模块提供位置信息并导航,且在导航过程中修改和固化波特率;所述传感器模块包括分别与所述主控制模块连接的惯性测量单元、气压传感器、电子罗盘、和风速传感器,所述惯性测量单元用于检测飞行器的三轴线加速度、翻滚角速率、俯仰角速率、偏航角速率和航向信息,所述气压传感器用于检测飞行器的高度,所述电子罗盘用于测量飞行器的航向信息,所述风速传感器对飞行器所处的位置的风速进行监测;所述无线通信模块包括遥控器、PPM解码器和PPM接收机,所述PPM编码器与所述遥控器连接,遥控器的四个通道控制信号将通过PPM编码器编码后无线传递给所述PPM接收机,所述PPM接收机与所述主控制器模块连接;所述电机控制模块包括用于驱动飞行器四个旋翼的四个电机以及分别控制所述四个电机工作的电子调速器,所述电子调速器与所述主控制器模块连接以接收电机控制信号。
本发明提供的四旋翼无人飞行器中,主控制器模块是控制系统的核心部分,其作用是负责采集传感器模块检测到的三轴线加速度、翻滚角速率、俯仰角速率和偏航角速率等组成的姿态角速率、航向信息和风速并实时解算,再根据检测到的由遥控器发送并经PPM编码器编码后的飞行信息,结合权值调整量附加“惯性项”的BP神经网络与PID控制结合的飞行控制方案,计算实际的输出控制量以控制四个电机的转速,从而实现控制器当中的参数自动地调整来适应外界变化,达到理想的飞行控制效果,完成预定的目标。主控制器模块综合计算所述传感器模块与导航模块所反馈的实时飞行姿态信息和遥控器的控制信息后输出电机控制信号以控制电机控制模块,从而使得四旋翼无人飞行器能够自动适应外界环境的变化以调制飞行参数来达到预定的控制效果。
进一步的,四旋翼无人飞行器还包括水冷-风冷模块,所述水冷-风冷模块分别与所述主控制器模块和所述电机控制模块连接,以对所述主控制器模块和所述电机控制模块散热冷却,并同时接受所述主控制器模块的控制以实现对冷却功率的调节。
进一步的,所述主控制器模块和所述电机控制模块上分别设置有测温元件,所述测温元件与所述主控制器模块连接以实现温度采集,所述主控制器模块根据所采集到温度信息调节所述水冷-风冷模块的冷却功率。
进一步的,所述传感器模块包括与所述主控制模块连接的烟雾传感器,所述烟雾传感器布置在临近飞行器上的电路板附件以探测所述电路板出现故障产生的烟雾并将烟雾信息反馈至所述主控制器模块。
所述四旋翼无人飞行器的飞行控制方法,主要由所述主控制器模块来执行,具体包括以下步骤:
S10:建立四旋翼无人飞行器的动力学模型,无人飞行器的动力学方程为;
其中,设φ、θ、ψ分别为四旋翼无人飞行器的翻滚角、俯仰角和偏航角,l为其质心至旋翼中心的距离,Ix、Iy、Iz为惯性主距,Ωi为第i个旋翼转速,Fi为第i个旋翼产生的升力,旋翼产生的升力与旋翼传动速度平方成正比,IR为转动惯量,n1为其升力系数,n2为反扭矩系数;
为了把四旋翼无人飞行器的动力学方程转换成四个独立的控制通道,定义四旋翼飞行器的控制输入为
S20:设计基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法;
其中在步骤S10中由四旋翼无人飞行器的动力学方程转换成的四个独立的控制通道分别由控制器控制,且四个通道分别由高度BPNNIPID、翻滚BPNNIPID、俯仰BPNNIPID、偏航BPNNIPID组成,经过控制量的转换控制调节四个旋翼的转速来达到姿态控制,
S21:设BP神经网络有3层,其中包括输入层,隐含层和输出层,且其中输入层j含有4个神经元,隐含层i含有5个神经元,输出层k含有3个神经元;令表示连接第l层的第j个神经元和第l+1层的第i个神经元之间的权值,
则BP神经网络的输入层神经元的输入为:
Oj(1)=x(j),(j=1,2,3,4) (3)
其中包括r(k),y(k),e(k),1,Bias=1是神经元单元的偏置;
隐含层i的输入为:
当i=1时,有:
net1(2)(k)=r(k)w11(1)+y(k)w12(1)+e(k)w13(1)+1·w14(1) (5)
隐含层i的输出为:
隐含层神经元的激励函数使用正负对称的sigmoid函数:
输出层k的输入:
输出层k输出为:
Ok(3)(k)=g[netk(3)(k)] (9)
其中,(8)(9)中k=1,2,3;
同理,
由于PID控制中Kp,Ki,Kd需要取非负值,因此输出层神经元激励函数使用非负的Sigmoid函数,
期望输出r(k)与实际输出y(k)计算出性能指标:
S22:按照梯度下降法修正权系数,按E(k)对加权系数的负梯度方向搜索和调整,通过增加惯性项加快收敛,并计算权值修正量Δw,修正权值:
α称为惯性系数,η为学习速率;则
未知,用取代,造成的误差用调整学习速率η来补偿,那么由(1)、(2)、(8)、(9)、(10)、(11)、(12)可得到:
那么,局部梯度:
g′(·)=g(x)(1-g(x)) (22)
按输出层k加权系数的学习方法:
Δwki(2)(k)=aΔwki(2)(k-1)+ηδk(3)(k)Oi(2)(k) (23)
隐含层i加权系数的学习方法:
Δwij(1)(k)=aΔwij(1)(k-1)+ηδi(2)(k)Oj(1)(k) (24)
那么局部梯度
其中,
这样由以上方法确定了PID控制所需要的最佳的Kp、Ki、Kd参数,从而实现了参数自整定。
将最佳的Kp、Ki、Kd参数输送到电子调速器以控制电机调节四个旋翼的转速。
本发明的四旋翼无人飞行器采用基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法可以随外界干扰变化的影响,实时更新整定Kp、Ki、Kd参数,实现参数自整定,解决了传统PID控制不能实时自适应参数调整的缺陷,更好地实现无人飞行器飞行中受到干扰下的姿态控制,提高了系统的抗扰性和鲁棒性。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明的四旋翼无人飞行器整体结构示意图。
图2为本发明的四旋翼无人飞行器主要模块构成示意图。
图3为本发明的四旋翼无人飞行器机体坐标系和惯性坐标系示意图。
图4为本发明的四旋翼无人飞行器姿态控制方法中附加“惯性项”的BP神经网络部分结构示意图。
图5为本发明的四旋翼无人飞行器附加“惯性项”的BP神经网络与PID控制相结合的控制系统结构示意图。
图6为本发明的四旋翼无人飞行器控制系统结构示意图。
图7为本发明的四旋翼无人飞行器高度跟踪图。
图8为本发明的四旋翼无人飞行器控制方法与BP神经网络PID控制和现有PID控制方法抗扰性测试结果对比图。
图9为本发明的四旋翼无人飞行器控制方法中附加“惯性项”的BP神经网络PID控制鲁棒性测试对比图。
图10为现有四旋翼无人飞行器控制方法中BP神经网络PID控制鲁棒性测试对比图。
图11为现有四旋翼无人飞行器控制方法中传统PID控制鲁棒性测试对比图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
下面参照图1-2对本发明实施例的四旋翼无人飞行器做进一步的描述。
如图1和图2所示,四旋翼无人飞行器100包括机体10和固定在机体10上的主控制器模块20,还包括固定在机体10四个悬臂上的四个无刷电机控制模块60及由无刷电机驱动的旋翼70,另外,如图2所示,四旋翼无人飞行器还包括安装在所述机体10上并分别与所述主控制器模块20连接的传感器模块40、导航模块50和水冷-风冷模块80,还包括与主控制器20通信连接的无线通信模块30;导航模块50采用高精度的GPS卫星导航系统对四旋翼无人飞行器100进行跟踪定位,并向所述主控制器模块20提供位置信息并导航,且在导航过程中修改和固化波特率,另外还可以保存波特率的设置过程;所述传感器模块40包括分别与所述主控制模块20连接的惯性测量单元、气压传感器、电子罗盘、烟雾传感器和风速传感器,所述惯性测量单元用于检测飞行器的三轴线加速度、翻滚角速率、俯仰角速率、偏航角速率和航向信息,所述气压传感器用于检测飞行器的高度,所述电子罗盘测量飞行器的航向信息,所述风速传感器对飞行器所处的位置的风速进行监测,所述烟雾传感器设置在飞行器上的PCB电路板上用于探测所述电路板出现故障产生的烟雾并将烟雾信息反馈至所述主控制器模块20;所述无线通信模块30包括遥控器、PPM解码器和PPM接收机,所述PPM编码器与所述遥控器连接,遥控器的四个通道控制信号将通过PPM编码器编码后无线传递给所述PPM接收机,所述PPM接收机与所述主控制器模块连接;所述电机控制模块60包括用于驱动飞行器上四个旋翼70的四个电机以及分别控制所述四个电机工作的电子调速器,所述电子调速器与所述主控制器模块连接以接收电机控制信号,所述烟雾传感器布置在临近飞行器上的电路板附件以探测所述电路板出现故障产生的烟雾并将烟雾信息反馈至所述主控制器模块;所述水冷-风冷模块80可有效降低主控制器模块20和电机控制模块60工作时产生的热量。
导航模块50可以提供四旋翼无人机当前的位置信息,主控制器模块20是四旋翼无人机100控制系统的核心部分,其作用是负责采集传感器检测到的三轴线加速度、翻滚角速率、俯仰角速率和偏航角速率等组成的姿态角速率和航向信息并实时解算,再根据检测到由遥控器所发出的飞行信息,计算实际的输出电机控制信号至电子调速器,然后电子调速器根据获得的控制信号控制4个电机的转速,从而实现对4个旋翼产生的升力和转矩的控制,无刷电机可以通过PWM控制其转速从而达到对每个旋翼所产生的力和力矩的大小进行控制。
具体的,所述主控制器模块20和所述电机控制模块60上分别设置有测温元件(图中为示出),所述测温元件与所述主控制器模块20连接以实现温度采集,所述主控制器模块20根据所采集到温度信息调节所述水冷-风冷模块80的冷却功率。既当测温元件检测到的主控制器模块20和所述电机控制模块60的温度偏高时需要提升水冷-风冷模块80的冷却功率以加速冷却降温,如果主控制器模块20和所述电机控制模块60的温度偏低时降低冷却功率,如此可以保证主控制器模块20和所述电机控制模块60工作在合适的温度范围内。
具体的,水冷-风冷模块先利用水冷系统降温,当水温升高之后达到与作用对象温度接近时,排出所有的水,此时将使用风冷系统进行降温。这样可有效减少主控制器模块20和电机控制模块60工作时产生的热量所引起温升。
本实施例的四旋翼无人飞行器,遥控器将控制信号通过PWM方式无线发送给PPM接收机,PPM编码器将PPM收机所接收到的控制信号解码后输至主控制器模块20,同时,构成四旋翼无人飞行器实时姿态信息的高度、翻滚、俯仰、偏航由等由传感器模块测得并传输至主控制器模块20,主控制器模块综合计算实时姿态信息和控制信号信息后输出电机控制信号至电子调速器,然后电子调速器根据获得的电机控制信号控制4个电机的转速,从而实现对4个旋翼产生的升力和转矩的控制,无刷电机可以通过PWM控制其转速从而达到对每个旋翼所产生的力和力矩的大小进行控制,从而实现自动适应外界环境变化,达到理想的控制效果。
所述四旋翼无人飞行器的主控制模块综合计算实时姿态信息和控制信号信息后输出电机控制信号以控制无人飞行器的方法包括以下步骤:
S10:建立四旋翼无人飞行器的动力学模型,如图3所示的四旋翼无人飞行器的机体坐标体系图,无人飞行器的动力学方程为;
其中,设φ、θ、ψ分别为四旋翼无人飞行器的翻滚角、俯仰角和偏航角,l为其质心至旋翼中心的距离,Ix、Iy、Iz为惯性主距,Ωi为第i个旋翼转速,Fi为第i个旋翼产生的升力,旋翼产生的升力与旋翼传动速度平方成正比,IR为转动惯量,n1为其升力系数,n2为反扭矩系数;
为了把四旋翼无人飞行器的动力学方程转换成四个独立的控制通道,定义四旋翼无人飞行器的控制输入为
S20:设计基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法;
其中在步骤S10中由四旋翼无人飞行器的动力学方程转换成的四个独立的控制通道分别由控制器控制,且四个通道分别由高度BPNNIPID、翻滚BPNNIPID、俯仰BPNNIPID、偏航BPNNIPID组成,经过控制量的转换控制调节四个旋翼的转速来达到姿态控制,
S21:如图4所示的姿态控制方法中附加“惯性项”的BP神经网络部分结构示意图,设BP神经网络有3层,其中包括输入层(input layer)、隐含层(hidden layer)和输出层(output layer),且其中输入层j含有4个神经元,隐含层i含有5个神经元,输出层k含有3个神经元;令表示连接第l层的第j个神经元和第l+1层的第i个神经元之间的权值,
则BP神经网络的输入层神经元的输入为:
Oj(1)=x(j),(j=1,2,3,4) (3)
其中包括r(k),y(k),e(k),1,Bias=1是神经元单元的偏置;
隐含层i的输入为:
当i=1时,有:
net1(2)(k)=r(k)w11(1)+y(k)w12(1)+e(k)w13(1)+1·w14(1) (5)
隐含层i的输出为:
隐含层神经元的激励函数使用正负对称的sigmoid函数:
输出层k的输入:
输出层k输出为:
Ok(3)(k)=g[netk(3)(k)] (9)
其中,(8)(9)中k=1,2,3;
同理,
由于PID控制中Kp,Ki,Kd需要取非负值,因此输出层神经元激励函数使用非负的Sigmoid函数,
期望输出r(k)与实际输出y(k)计算出性能指标:
S22:如图5所示的控制系统控制过程示意图,图6所示的附加“惯性项”的BP神经网络与PID控制系统相结合控制结构示意图,对遥控器所发送的控制信号根据无人飞行器传感器模块所检测到的实时姿态信息按照梯度下降法修正权系数,按E(k)对加权系数的负梯度方向搜索和调整,通过增加惯性项加快收敛,并计算权值修正量Δw,修正权值:
α称为惯性系数,η为学习速率;则
未知,用取代,造成的误差用调整学习速率η来补偿,那么由(1)、(2)、(8)、(9)、(10)、(11)、(12)可得到:
那么,局部梯度:
g′(·)=g(x)(1-g(x)) (22)
按输出层k加权系数的学习方法:
Δwki(2)(k)=aΔwki(2)(k-1)+ηδk(3)(k)Oi(2)(k) (23)
隐含层i加权系数的学习方法:
Δwij(1)(k)=aΔwij(1)(k-1)+ηδi(2)(k)Oj(1)(k) (24)
那么局部梯度
其中,
这样由以上方法确定了PID控制所需要的最佳的Kp、Ki、Kd参数,从而实现了参数自整定。
为了验证本发明提出的四旋翼无人飞行器及其控制方法的控制效果,利用搭建的四旋翼无人飞行器样机进行实验。分别进行了多个方案实验,具体如下:
控制性能对比实验:
设计了相应的PID控制方法和BP神经网络与PID控制相结合的控制方法,并在有突发侧风的环境下,和本发明提出的基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法控制下的四旋翼无人飞行器进行抗扰性和鲁棒性对比实验。在实验中,首先完成了在无风的情况下,基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法控制下的四旋翼无人飞行器高度跟踪实验,对应的飞行效果如图7所示,其中在跟踪的过程中Kp、Ki、Kd参数自动寻优;随后在t=3s,t=6s和t=9s加入突发侧面阵风,基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法,基于BP神经网络与PID控制相结合的控制方法和传统PID控制方法下的四旋翼无人飞行器抗扰性能和鲁棒性能对比,如图8,图9,图10和图11所示。
从实验中可以看出,在不需要人工整定PID参数的情况下,附加“惯性项”的BP神经网络可以自适应调整Kp、Ki、Kd参数,寻找到最优参数,被控对象很快达到跟踪期望值,实现参数自整定;而基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法相比传统PID控制方法来说,全面提高了系统动态性能。从图8可以看出,附加“惯性项”的BP神经网络与PID控制相结合控制方法的抗扰性要优于传统PID控制方法,并且超调更小,调节时间更短,与BP神经网络PID控制相比,其上升时间更短。图9、图10和图11表明,在QUAV自身参数变化情况下,附加“惯性项”的BP神经网络PID控制下鲁棒性略微好于BP神经网络PID控制,好于传统PID控制。
综上,基于权值调整量附加“惯性项”的BP神经网络与PID控制相结合的控制方法下的QUAV姿态控制效果要优于BP神经网络PID控制,更优于传统PID控制。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的创造性精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。