CN107065902A - 基于非线性模型的无人机姿态模糊自适应预测控制方法及系统 - Google Patents

基于非线性模型的无人机姿态模糊自适应预测控制方法及系统 Download PDF

Info

Publication number
CN107065902A
CN107065902A CN201710035809.1A CN201710035809A CN107065902A CN 107065902 A CN107065902 A CN 107065902A CN 201710035809 A CN201710035809 A CN 201710035809A CN 107065902 A CN107065902 A CN 107065902A
Authority
CN
China
Prior art keywords
mrow
mtd
msub
mtr
msup
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710035809.1A
Other languages
English (en)
Other versions
CN107065902B (zh
Inventor
彭辉
罗旭光
周锋
曾小勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN201710035809.1A priority Critical patent/CN107065902B/zh
Publication of CN107065902A publication Critical patent/CN107065902A/zh
Application granted granted Critical
Publication of CN107065902B publication Critical patent/CN107065902B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/08Control of attitude, i.e. control of roll, pitch, or yaw
    • G05D1/0808Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for aircraft
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft

Abstract

本发明公开了一种基于非线性模型的无人机姿态模糊自适应预测控制方法及系统,使用离线数据辨识方法建立系统的Cubic‑RBF‑ARX非线性模型,然后在所建立的非线性模型基础上设计了模糊自适应预测控制器,该预测控制器根据无人机姿态控制的实时状态在线调整预测控制器中目标函数的权重系数。该模糊自适应预测控制器可以保证无人机在姿态控制过程中,所选目标函数符合姿态调整的动态及稳态规律和趋势,与一般的无人机预测控制器相比,其目标函数参数的设定考虑到了控制的整个动态及稳态过程,从而能起到提高无人机姿态控制动静态响应指标的作用,具有较高的实用价值和应用前景。

Description

基于非线性模型的无人机姿态模糊自适应预测控制方法及 系统
技术领域
本发明涉及空中机器人自动控制技术领域,涉及一种基于非线性模型的无人机姿态模糊自适应预测控制方法及系统。
背景技术
四旋翼无人机具有结构简单、动力装置效率高、成本低等优点,其优势具体可以体现在搜救、监控、航拍等军事和民用上。鉴于其广阔的用途和价值,目前四旋翼无人机正在众多领域中发挥着越来越重要的作用。无人机飞控是指能够稳定无人机飞行姿态,并能控制无人机自主或半自主飞行的控制系统,是无人机的大脑,因此飞控的好坏直接决定了无人机的性能,而飞控的核心就是控制无人机飞行的控制算法。所以,无人机飞行的稳定精确控制具有很重要的现实意义和广阔的市场前景。
如图1所示,无人机飞行控制系统可以看成一个以位置控制环为外环,以姿态控制环为内环的串级控制系统。其姿态环的控制算法好坏直接决定了姿态调整的品质好坏,进而直接影响到四旋翼无人机控制的稳定性。由于四旋翼无人机控制系统存在非线性、欠驱动等特点,常规控制算法如PID控制算法虽然能实现无人机的悬停、运动等控制,但是只能保证四旋翼无人机在局部动作的控制效果,在一些高难度动作的飞行模式中则难以保证良好的控制品质,并且抗干扰能力也是有限的。而基于模型的预测控制算法则体现出了它的优越性,利用预测模型得出系统的输出预测轨迹,可以为实现被控对象的最优性能指标这一目的,选择最佳的控制策略。在进行预测控制设计时,控制器的目标函数反映了控制器的优化性能指标,它选取的好坏直接决定了控制效果的好坏。常规的预测控制算法往往通过调整目标函数中的权重系数,即Q,R1,R2矩阵,以使系统取得最佳控制效果。但是这种方式的不足之处也是很明显的,因为系统在不同的控制状态下其最佳的目标函数也是不一样的,很难找到一组合适的Q,R1,R2保证系统在动态和稳态的过程中都能取得非常好的控制效果,将预测控制效果发挥到最优。
因此,有必要设计一种控制效果更好的无人机姿态改进型预测控制算法。
发明内容
本发明所要解决的技术问题是,针对现有四旋翼无人机姿态预测算法中的不足,提供一种基于非线性模型的无人机姿态模糊自适应预测控制方法及系统,旨在提高四旋翼无人机控制的稳定性。
为解决上述技术问题,本发明所采用的技术方案是:一种基于非线性模型的无人机姿态模糊自适应预测控制方法,包括以下步骤:
1)建立四旋翼无人机Cubic-RBF-ARX模型(使用三次函数作为基函数的RBF神经网络型系数的带外部输入变量的自回归模型);
其中:y(t)=[φ(t) θ(t) ψ(t)]T为t时刻模型预测输出序列,表示t时刻模型预测输出的四旋翼无人机的姿态角矩阵,矩阵中φ(t)、θ(t)和ψ(t)分别为t时刻模型预测输出的四旋翼无人机的俯仰角、翻转角和巡航角;u(t)=[u1(t) u2(t) u3(t) u4(t)]T为t时刻模型预测输入序列,对应t时刻主控板输出给四旋翼无人机电子调速器的PWM占空比矩阵,矩阵中u1(t)、u2(t)、u3(t)和u4(t)分别对应控制四旋翼无人机四个电机的PWM占空比;电子调速器根据PWM占空比调节四旋翼无人机四个电机的转速,从而改变四个旋翼的转速;ny,nu和h分别为四旋翼无人机Cubic-RBF-ARX模型的输出阶次、输入阶次和Cubic-RBF网络的数目;ξ(t)是系统白噪声;X(t-1)为四旋翼无人机Cubic-RBF-ARX模型的状态相依变量,选取X(t-1)=[φ(t) θ(t)]T 是线性权重系数;zj,m是Cubic-RBF网络的中心点,zj,m,1~zj,m,dim(X)为zj,m各维度的值,dim(X)表示维数;其中,和zj,m为需要辨识的参数,均通过SNPOM优化方法(结构化非线性优化方法)离线辨识获得;
所述通过SNPOM优化方法离线辨识获得需要辨识的参数的步骤为:使用现有控制算法对无人机进行控制,保证无人机能够实现俯仰、横滚、偏航等基本运动,并采集u(t)和y(t)的实际数据;将需要辨识的参数分为非线性参数和线性参数,非线性参数包括RBF网络的中心点zj,m,线性参数包括线性权重系数然后基于u(t)和y(t)的实际数据,并通过LMM(Leven berg-Marquardt method)来优化非线性参数,通过最小二乘法优化线性参数;
由于Cubic-RBF-ARX模型是离线辨识模型,不需要在线辨识,进行实物控制时,有效地减少了计算量。Cubic-RBF-ARX模型是全局非线性、局部线性化,因而可以用于对四旋翼飞行器这一非线性对象的控制。
2)根据步骤1)中所建立的无人机Cubic-RBF-ARX非线性模型设计预测控制器如下:
其中,和yr(t)分别为t时刻预测输出序列和期望输出序列:
为t时刻模型预测t+l时刻的预测输出;y(t+l|t)T为t时刻给定的t+l时刻的期望值,取决于控制过程中的参考轨迹;Np和Nc的分别是预测时域和控制时域,l=1,2,…,Np
为t时刻模型预测输入序列和预测输入增量序列,Δu(t)=u(t)-u(t-1);Umin、Umax为控制输入量约束序列,ΔUmin和ΔUmax为控制输入增量约束序列;Umin=[-100-100 -100 -100],Umax=[100 100 100 100],ΔUmin=[-50 -50 -50 -50],ΔUmax=[50 5050 50];
Q(t)、R1(t)、R2(t)分别为t时刻的误差加权矩阵、控制加权矩阵和控制增量加权矩阵,它们都为对角阵并且随着控制状态变化而调整;Q(t),R1(t),R2(t)调整规则为:
基于四旋翼无人机Cubic-RBF-ARX模型的模糊自适应预测控制算法通过模糊数学模型在线调整Q(t)、R1(t)、R2(t)矩阵从而调整目标函数的参数,最终达到提高无人机姿态控制动静态响应指标目的。
3)通过二次规划法(QP)求解预测控制器中的最优值,并将的最优值中的u(t)作为控制量输出给主控板,主控板将其按比例转化为输出给四旋翼无人机电子调速器的PWM占空比矩阵;四旋翼无人机电子调速器根据PWM占空比矩阵调节四旋翼无人机四个电机的转速,从而改变四个旋翼的转速,控制四旋翼无人机的姿态。
步骤2)中Q(t)、R1(t)、R2(t)的调整方法为根据步骤2)中的设计的预测控制器分析权重系数对控制效果影响:误差加权矩阵Q(t)的作用是调整输出误差在目标函数中占的比重,如果模型精度不高,或者模型失配导致输出偏差时,调节Q(t)的系数能起很好的补偿控制作用。R1(t)是对控制量u的变化进行调节的加权矩阵,当u变化太大时,适当加大R1(t),抑制u的变化;反之,则适当减小R1(t)的值,增强u的变化。R2(t)是对控制增量Δu的变化进行调节的加权矩阵,当Δu变化太大时,适当加大R2(t),以抑制Δu的变化;反之,则适当减小R2(t)的值,增强Δu的变化。因此,从控制原理上讲,在控制过程中,如果动态相比稳态程度越大则Q(t)应越大、R1(t)、R2(t)越小;反之,则Q(t)应越小、R1(t)、R2(t)越大。基于该原理,根据下面的公式调整Q(t)、R1(t)、R2(t):
其中:Q(t0)、R1(t0)、R2(t0)为初始时刻误差加权矩阵、初始时刻控制加权矩阵、初始时刻控制增量加权矩阵;其初始值分别为Q(t0)=diag(0.5 0.5 0.5),R1(t0)=diag(0.80.8 0.8 0.8),R2(t0)=diag(0 0 0 0),并根据模型误差进行调整;G(t)为权重系数调整矩阵,它表示控制过程中动态相对于稳态的程度大小,G(t)越大,系统动态程度越大,反之系统稳态程度越大;E(t),ΔE(t)为误差矩阵和误差增量矩阵,其中,Ys(t)为姿态角的设定值、Y(t)为姿态角的实测值(通过IMU测量得到);γQ分别为误差加权矩阵、控制加权矩阵和控制增量加权矩阵的调节系数(通过人为设定);本发明选取模糊函数G(t)=[gφ gθ gψ]=f(E(t),ΔE(t))=diag(fuzzy(Kceφ,KecΔeφ)fuzzy(Kceθ,KecΔeθ)fuzzy(Kceψ,KecΔeψ)),E(t)=[eφ eθ eψ]T,ΔE(t)=[Δeφ Δeθ Δeψ]T,通过E(t),ΔE(t)求取G(t),Kc和Kec为量化因子,Kc=0.15,Kec=0.1;式中gz=fuzzy(Kcez,KecΔez)为模糊函数,z=φ,θ,ψ,其模糊规则如下表:
其中,模糊状态NB、NM、NS、ZO、PS、PM和PB分别表示负大、负中、负小、零、正小、正中和正大,分别取值为-3、-2、-1、0、1、2和3;g0、g1、g2、g3、g4、g5和g6取值分别为0、1、2、3、4、5和6;各模糊状态的隶属函数为三角形隶属度函数。
在实际设计模糊模型函数过程中,模糊规则应当根据每个姿态角的控制规律作出一定的调整,以保证模糊模型能够准确的描述姿态控制的动稳态程度。
步骤2)中预测控制器的设计步骤:
将步骤1)建立的模型转化为状态空间表达式:
Ξ(t+1)表示噪声信号,跟系统有关,相当于四旋翼无人机Cubic-RBF-ARX模型中的ξ(t);
公式中:
在此状态空间模型中,选取的状态变量都是过去的测量值的组合,因而可直接用于计算;
定义变量:
t时刻四旋翼无人机Cubic-RBF-ARX模型的j(j=1,2,...,Ny)步预测输出可以表示成如下的形式:
其中:
对于的计算,需要预测状态相依变量未来的信息但是这些信息一般很难获得,因此这里用X(t)代替来计算公式同样可以转变为以下形式:
一种基于非线性模型的无人机姿态模糊自适应预测控制系统,包括无刷电机和螺旋桨构成、飞控系统的主控板、测量单元、协处理器模块和四个电子调速器;
其控制过程为:首先,无人机系统在遥控或者地面站的监控之下,对无人机发出指令,控制无人机进行运动;然后,主控板根据该指令求出位置设定值,将位置设定值和测量单元测出的实际位置经位置PI控制器求出姿态控制环的姿态角的设定值Ys(t),并将Ys(t)与测量单元测出的姿态角的实测值Y(t)传递给协处理器模块;协处理器模块基于步骤1或2所述的非线性模型的无人机姿态模糊自适应预测控制方法,求出控制量u(t),然后将u(t)传递给主控板,主控板将控制量u(t)按比例转化为PWM占空比并输出给对应的四个电子调速器,电子调速器驱动无刷电机带动螺旋桨旋转,实现无人机的姿态调整。
有益效果:
本发明所采用的Cubic-RBF-ARX非线性模型具有局部线性全局非线性的特点,能够很好地描述系统的非线性特性,本发明设计的模糊自适应预测控制器能够根据无人机姿态控制的实时状态在线调整预测控制器中目标函数的权重系数。该模糊自适应预测控制器可以保证无人机在姿态控制过程中,所选目标函数符合姿态调整的动态及稳态规律和趋势,与一般的无人机预测控制器相比,其目标函数参数的设定考虑到了控制的整个动态及稳态过程,从而能起到提高无人机姿态控制动静态响应指标的作用,具有较高的实用价值和应用前景。
考虑到目标函数的选取对预测控制器设计的重要性,而目标函数同一组参数在不同过程中起到的优化作用是不一样的,本发明通过动态调整目标函数中的误差、控制以及控制增量矩阵的权重,以使无人机在动稳态整个控制过程中具有更好的控制性能。与常规的无人机预测控制相比,一方面解决了整定目标函数中Q、R1、R2参数的难度,另一方面保证无论是动态响应过程还是稳态过程,目标函数中Q、R1、R2参数都是尽可能合理的,这很好地提高了控制效果。本发明基于非线性模型的无人机姿态模糊自适应预测控制方法,巧妙利用模糊模型优化目标函数中的权重系数分别在动稳态中的设定,具有较高的实用价值和很好的应用前景,该方法对其它最优控制方法也有借鉴作用。
附图说明
图1为四旋翼无人机控制系统框图。
图2为带模糊自适应预测控制器的四旋翼无人机控制系统结构图。
具体实施方式
本发明所述被控对象-带模糊自适应预测控制器的四旋翼无人机控制系统结构如图2所示,其中:1是机体,2是动力装置,主要由电子调速器、无刷电机和螺旋桨构成,3是飞控系统的主控板,4是加载了模糊自适应预测控制算法的协处理器模块,它与主控板主控板3通过串口全双工通信。本发明所采用的带模糊自适应预测控制器的四旋翼无人机控制系统工作过程为:首先无人机系统在遥控或者地面站的监控之下,对无人机发出指令,即控制无人机做前、后、左、右、偏航等运动,主控板3根据该指令求出位置设定值,将设定值和GPS、气压计等传感器测出的实际位置经位置PI控制器求出姿态控制环的姿态角设定值Ys(t),并将Ys(t)与惯性测量单元(IMU)模块测出的无人机实际姿态角Y(t)传递给协处理器模块4,协处理器运算基于模型的模糊自适应预测控制算法,求出四个电机的控制量u(t),然后协处理器将u(t)传递给主控板3,主控板3将控制量按比例转化为PWM占空比并输出给对应的四个电子调速器,电子调速器驱动无刷电机带动螺旋桨旋转,实现无人机的最优化姿态调整。
为了使本发明的技术手段、创作特征、工作流程、使用方法、达成目的与功效易于明白了解,下面结合无人机系统的软硬件设计,进一步阐述本发明。
1.考虑到本发明中使用的模糊自适应预测控制算法复杂度较大,需要的处理器配置较高,而常规主控板中使用的控制器则运算能力有限,如STM32F4等系列的芯片。因此需要首先为四旋翼无人机控制系统增加高配置的协处理器模块用于加载模糊自适应预测控制算法,并保证主控板和协处理器实现全双工通信,以保证系统实时性。
2.建立四旋翼无人机Cubic-RBF-ARX模型,步骤如下:
1)在软硬件平台上设计出位置、姿态双闭环PID控制器,保证无人机能够实现俯仰、横滚、偏航等基本运动,然后采集建模所需要的实验数据,即能够反映四旋翼无人机Cubic-RBF-ARX模型特征的u(t)和y(t)序列。
2)设计出无人机Cubic-RBF-ARX模型:
a)建立四旋翼无人机Cubic-RBF-ARX模型(使用三次函数作为基函数的RBF神经网络型系数的带外部输入变量的自回归模型);
其中:y(t)=[φ(t) θ(t) ψ(t)]T为t时刻模型预测输出序列,表示t时刻模型预测输出的四旋翼无人机的姿态角矩阵,矩阵中φ(t)、θ(t)和ψ(t)分别为t时刻模型预测输出的四旋翼无人机的俯仰角、翻转角和巡航角;u(t)=[u1(t) u2(t) u3(t) u4(t)]T为t时刻模型预测输入序列,对应t时刻主控板输出给四旋翼无人机电子调速器的PWM占空比矩阵,矩阵中u1(t)、u2(t)、u3(t)和u4(t)分别对应控制四旋翼无人机四个电机的PWM占空比;电子调速器根据PWM占空比调节四旋翼无人机四个电机的转速,从而改变四个旋翼的转速;ny,nu和h分别为四旋翼无人机Cubic-RBF-ARX模型的输出阶次、输入阶次和Cubic-RBF网络的数目;ξ(t)是系统白噪声;X(t-1)为四旋翼无人机Cubic-RBF-ARX模型的状态相依变量,选取X(t-1)=[φ(t) θ(t)]T 是线性权重系数;zj,m是Cubic-RBF网络的中心点,zj,m,1~zj,m,dim(X)为zj,m各维度的值,dim(X)表示维数;其中,和zj,m为需要辨识的参数,均通过SNPOM优化方法(结构化非线性优化方法)离线辨识获得;
所述通过SNPOM优化方法离线辨识获得需要辨识的参数的步骤为:使用现有控制算法对无人机进行控制,保证无人机能够实现俯仰、横滚、偏航等基本运动,并采集U(t)和Y(t)的实际数据;将需要辨识的参数分为非线性参数和线性参数,非线性参数包括RBF网络的中心点zj,m,线性参数包括线性权重系数然后基于U(t)和Y(t)的实际数据,并通过LMM(Leven berg-Marquardt method)来优化非线性参数,通过最小二乘法优化线性参数;
由于Cubic-RBF-ARX模型是离线辨识模型,不需要在线辨识,进行实物控制时,有效地减少了计算量。Cubic-RBF-ARX模型是全局非线性、局部线性化,因而可以用于对四旋翼飞行器这一非线性对象的控制。
b)根据步骤a)中所建立的无人机Cubic-RBF-ARX非线性模型设计预测控制器如下:
其中,和yr(t)分别为t时刻预测输出序列和期望输出序列:
为t时刻模型预测t+l时刻的预测输出;y(t+l|t)T为t时刻给定的t+l时刻的期望值,取决于控制过程中的参考轨迹;Np和Nc的分别是预测时域和控制时域,l=1,2,…,Np
为t时刻模型预测输入序列和预测输入增量序列,Δu(t)=u(t)-u(t-1);Umin、Umax为控制输入量约束序列,ΔUmin和ΔUmax为控制输入增量约束序列;Umin=[-100-100 -100 -100],Umax=[100 100 100 100],ΔUmin=[-50 -50 -50 -50],ΔUmax=[50 5050 50];
Q(t)、R1(t)、R2(t)分别为t时刻的误差加权矩阵、控制加权矩阵和控制增量加权矩阵,它们都为对角阵并且随着控制状态变化而调整;Q(t),R1(t),R2(t)可表示为:
基于四旋翼无人机Cubic-RBF-ARX模型的模糊自适应预测控制算法通过模糊数学模型在线调整Q(t)、R1(t)、R2(t)矩阵从而调整目标函数的参数,最终达到提高无人机姿态控制动静态响应指标目的。
c)通过二次规划法(QP)求解预测控制器中的最优值,并将的最优值中的u(t)作为控制量输出给主控板,主控板将其按比例转化为输出给四旋翼无人机电子调速器的PWM占空比矩阵;四旋翼无人机电子调速器根据PWM占空比矩阵调节四旋翼无人机四个电机的转速,从而改变四个旋翼的转速,控制四旋翼无人机的姿态。
步骤b)中Q(t)、R1(t)、R2(t)的调整方法为根据步骤b)中设计的预测控制器分析权重系数对控制效果影响:误差加权矩阵Q(t)的作用是调整输出误差在目标函数中占的比重,如果模型精度不高,或者模型失配导致输出偏差时,调节Q(t)的系数能起很好的补偿控制作用。R1(t)是对控制量u的变化进行调节的加权矩阵,当u变化太大时,适当加大R1(t),抑制u的变化;反之,则适当减小R1(t)的值,增强u的变化。R2(t)是对控制增量Δu的变化进行调节的加权矩阵,当Δu变化太大时,适当加大R2(t),以抑制Δu的变化;反之,则适当减小R2(t)的值,增强Δu的变化。因此,从控制原理上讲,在控制过程中,如果动态相比稳态程度越大则Q(t)应越大、R1(t)、R2(t)越小;反之,则Q(t)应越小、R1(t)、R2(t)越大。基于该原理,根据下面的公式调整Q(t)、R1(t)、R2(t):
其中:Q(t0)、R1(t0)、R2(t0)为初始时刻误差加权矩阵、初始时刻控制加权矩阵、初始时刻控制增量加权矩阵;其初始值分别为Q(t0)=diag(0.5 0.5 0.5),R1(t0)=diag(0.80.8 0.8 0.8),R2(t0)=diag(0 0 0 0),并根据模型误差进行调整;G(t)为权重系数调整矩阵,它表示控制过程中动态相对于稳态的程度大小,G(t)越大,系统动态程度越大,反之系统稳态程度越大;E(t),ΔE(t)为误差矩阵和误差增量矩阵,其中,Ys(t)为姿态角的设定值、Y(t)为姿态角的实测值(通过IMU测量得到);γQ分别为误差加权矩阵、控制加权矩阵和控制增量加权矩阵的调节系数(通过人为设定);本发明选取模糊函数G(t)=[gφ gθ gψ]=f(E(t),ΔE(t))=diag(fuzzy(Kceφ,KecΔeφ)fuzzy(Kceθ,KecΔeθ)fuzzy(Kceψ,KecΔeψ)),E(t)=[eφ eθ eψ]T,ΔE(t)=[Δeφ Δeθ Δeψ]T,通过E(t),ΔE(t)求取G(t),Kc和Kec为量化因子,Kc=0.15,Kec=0.1;式中gz=fuzzy(Kcez,KecΔez)为模糊函数,z=φ,θ,ψ,其模糊规则如下表:
其中,模糊状态NB、NM、NS、ZO、PS、PM和PB分别表示负大、负中、负小、零、正小、正中和正大,分别取值为-3、-2、-1、0、1、2和3;g0、g1、g2、g3、g4、g5和g6取值分别为0、1、2、3、4、5和6;各模糊状态的隶属函数为三角形隶属度函数。
在实际设计模糊模型函数过程中,模糊规则应当根据每个姿态角的控制规律作出一定的调整,以保证模糊模型能够准确地描述姿态控制的动稳态程度。

Claims (3)

1.一种基于非线性模型的无人机姿态模糊自适应预测控制方法,其特征在于,包括以下步骤:
1)建立四旋翼无人机Cubic-RBF-ARX模型:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>y</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>C</mi> <mrow> <mo>(</mo> <mi>X</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>+</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>k</mi> </msub> </munderover> <msub> <mi>A</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mi>y</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>+</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <msub> <mi>n</mi> <mi>k</mi> </msub> </munderover> <msub> <mi>B</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mi>u</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>+</mo> <mi>&amp;xi;</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>C</mi> <mrow> <mo>(</mo> <mi>X</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>&amp;phi;</mi> <mn>0</mn> <mn>1</mn> </msubsup> <mrow> <mo>(</mo> <mi>X</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>&amp;phi;</mi> <mn>0</mn> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mi>X</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msubsup> <mi>&amp;phi;</mi> <mn>0</mn> <mn>3</mn> </msubsup> <mrow> <mo>(</mo> <mi>X</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msubsup> <mi>&amp;phi;</mi> <mn>0</mn> <mi>i</mi> </msubsup> <mrow> <mo>(</mo> <mi>X</mi> <mo>(</mo> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mo>=</mo> <msubsup> <mi>c</mi> <mn>0</mn> <mi>i</mi> </msubsup> <mo>-</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>m</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>h</mi> </munderover> <msubsup> <mi>c</mi> <mi>m</mi> <mi>i</mi> </msubsup> <mo>|</mo> <mo>|</mo> <mi>X</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>z</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>m</mi> </mrow> </msub> <mo>|</mo> <msup> <mo>|</mo> <mn>3</mn> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>A</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>a</mi> <mrow> <mn>11</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>a</mi> <mrow> <mn>12</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>a</mi> <mrow> <mn>13</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>a</mi> <mrow> <mn>21</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>a</mi> <mrow> <mn>22</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>a</mi> <mrow> <mn>23</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>a</mi> <mrow> <mn>31</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>a</mi> <mrow> <mn>32</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>a</mi> <mrow> <mn>33</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>B</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>b</mi> <mrow> <mn>11</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>21</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>31</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>b</mi> <mrow> <mn>12</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>22</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>32</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>b</mi> <mrow> <mn>13</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>23</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>33</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>b</mi> <mrow> <mn>14</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>24</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>b</mi> <mrow> <mn>34</mn> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>n</mi> <mi>k</mi> </msub> <mo>=</mo> <mi>max</mi> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mi>y</mi> </msub> <mo>,</mo> <msub> <mi>n</mi> <mi>u</mi> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>a</mi> <mrow> <mi>i</mi> <mi>j</mi> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>c</mi> <mrow> <mi>k</mi> <mo>,</mo> <mn>0</mn> </mrow> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msubsup> <mo>-</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>m</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>h</mi> </munderover> <msubsup> <mi>c</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>m</mi> </mrow> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msubsup> <mo>|</mo> <mo>|</mo> <mi>X</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>z</mi> <mrow> <mi>y</mi> <mo>,</mo> <mi>m</mi> </mrow> </msub> <mo>|</mo> <msup> <mo>|</mo> <mn>3</mn> </msup> <mo>,</mo> <mi>k</mi> <mo>&amp;le;</mo> <msub> <mi>n</mi> <mi>y</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>0</mn> <mo>,</mo> <mi>k</mi> <mo>&gt;</mo> <msub> <mi>n</mi> <mi>y</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>b</mi> <mrow> <mi>i</mi> <mi>j</mi> <mo>,</mo> <mi>k</mi> <mo>,</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>d</mi> <mrow> <mi>k</mi> <mo>,</mo> <mn>0</mn> </mrow> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msubsup> <mo>-</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>m</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>h</mi> </munderover> <msubsup> <mi>d</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>m</mi> </mrow> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msubsup> <mo>|</mo> <mo>|</mo> <mi>X</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>z</mi> <mrow> <mi>u</mi> <mo>,</mo> <mi>m</mi> </mrow> </msub> <mo>|</mo> <msup> <mo>|</mo> <mn>3</mn> </msup> <mo>,</mo> <mi>k</mi> <mo>&amp;le;</mo> <msub> <mi>n</mi> <mi>u</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>0</mn> <mo>,</mo> <mi>k</mi> <mo>&gt;</mo> <msub> <mi>n</mi> <mi>u</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>z</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>m</mi> </mrow> </msub> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>z</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>m</mi> <mo>,</mo> <mn>1</mn> </mrow> </msub> </mtd> <mtd> <msub> <mi>z</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>m</mi> <mo>,</mo> <mn>2</mn> </mrow> </msub> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <msub> <mi>z</mi> <mrow> <mi>j</mi> <mo>,</mo> <mi>m</mi> <mo>,</mo> <mi>dim</mi> <mrow> <mo>(</mo> <mi>X</mi> <mo>)</mo> </mrow> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> <mo>,</mo> <mi>j</mi> <mo>=</mo> <mi>y</mi> <mo>,</mo> <mi>u</mi> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中:y(t)=[φ(t) θ(t) ψ(t)]T为t时刻模型预测输出序列,表示t时刻模型预测输出的四旋翼无人机的姿态角矩阵,矩阵中φ(t)、θ(t)和ψ(t)分别为t时刻模型预测输出四旋翼无人机的俯仰角、翻转角和巡航角;u(t)=[u1(t) u2(t) u3(t) u4(t)]T为t时刻模型预测输入序列,对应主控板输出给四旋翼无人机电子调速器的PWM占空比矩阵,矩阵中u1(t)、u2(t)、u3(t)和u4(t)分别对应控制四旋翼无人机四个电机的PWM占空比;ny,nu和h分别为四旋翼无人机Cubic-RBF-ARX模型的输出阶次、输入阶次和Cubic-RBF网络的数目;ξ(t)是系统白噪声;X(t-1)为四旋翼无人机Cubic-RBF-ARX模型的状态相依变量,选取X(t-1)=[φ(t)θ(t)]T是线性权重系数;zj,m是Cubic-RBF网络的中心点,zj,m,1~zj,m,dim(X)为zj,m各维度的值,dim(X)表示维数;其中,和zj,m为需要辨识的参数,均通过SNPOM优化方法离线辨识获得;
2)根据步骤1)中所建立的无人机Cubic-RBF-ARX非线性模型设计预测控制器如下:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <munder> <mi>min</mi> <mrow> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </munder> </mtd> <mtd> <mrow> <mi>J</mi> <mo>=</mo> <mo>|</mo> <mo>|</mo> <mover> <mi>y</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>y</mi> <mi>r</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <msubsup> <mo>|</mo> <mrow> <mi>Q</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mn>2</mn> </msubsup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <msubsup> <mo>|</mo> <mrow> <msub> <mi>R</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mn>2</mn> </msubsup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <mi>&amp;Delta;</mi> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <msubsup> <mo>|</mo> <mrow> <msub> <mi>R</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> <mn>2</mn> </msubsup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> </mrow> </mtd> <mtd> <mrow> <msub> <mi>U</mi> <mi>min</mi> </msub> <mo>&amp;le;</mo> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&amp;le;</mo> <msub> <mi>U</mi> <mi>max</mi> </msub> <mo>,</mo> <msub> <mi>&amp;Delta;U</mi> <mi>min</mi> </msub> <mo>&amp;le;</mo> <mi>&amp;Delta;</mi> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&amp;le;</mo> <msub> <mi>&amp;Delta;U</mi> <mi>max</mi> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced>
其中,和yr(t)分别为t时刻预测输出序列和期望输出序列:
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mover> <mi>y</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mover> <mi>y</mi> <mo>^</mo> </mover> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>|</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <mover> <mi>y</mi> <mo>^</mo> </mover> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>2</mn> <mo>|</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow> <mover> <mi>y</mi> <mo>^</mo> </mover> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <msub> <mi>N</mi> <mi>p</mi> </msub> <mo>|</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>y</mi> <mi>r</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>y</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>|</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <mi>y</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>2</mn> <mo>|</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow> <mi>y</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <msub> <mi>N</mi> <mi>p</mi> </msub> <mo>|</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>u</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <mi>u</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow> <mi>u</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <msub> <mi>N</mi> <mi>c</mi> </msub> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>&amp;Delta;</mi> <mover> <mi>u</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <msup> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>&amp;Delta;</mi> <mi>u</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mrow> <mi>&amp;Delta;</mi> <mi>u</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mrow> <mi>&amp;Delta;</mi> <mi>u</mi> <msup> <mrow> <mo>(</mo> <mi>t</mi> <mo>+</mo> <msub> <mi>N</mi> <mi>c</mi> </msub> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced> <mi>T</mi> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced>
为t时刻模型预测t+l时刻的预测输出;y(t+l|t)T为t时刻给定的t+l时刻的期望值,取决于控制过程中的参考轨迹;Np和Nc的分别是预测时域和控制时域,l=1,2,…,Np
为t时刻模型预测输入序列和预测输入增量序列,Δu(t)=u(t)-u(t-1);Umin、Umax为控制输入量约束序列,ΔUmin和ΔUmax为控制输入增量约束序列;Umin=[-100 -100 -100 -100],Umax=[100 100 100 100],ΔUmin=[-50 -50 -50 -50],ΔUmax=[50 5050 50];
Q(t)、R1(t)、R2(t)分别为t时刻的误差加权矩阵、控制加权矩阵和控制增量加权矩阵,它们都为对角阵并且随着控制状态变化而调整;
3)通过二次规划法求解预测控制器中的最优值,并将的最优值中的u(t)作为控制量传递给主控板,主控板将其按比例转化为输出给四旋翼无人机电子调速器的PWM占空比矩阵;四旋翼无人机电子调速器根据PWM占空比矩阵调节四旋翼无人机四个电机的转速,从而改变四个旋翼的转速,控制四旋翼无人机的姿态。
2.根据权利要求1所述的基于非线性模型的无人机姿态模糊自适应预测控制方法,其特征在于,根据以下公式调整Q(t)、R1(t)、R2(t):
<mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>Q</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>Q</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>0</mn> </msub> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>&amp;gamma;</mi> <mi>Q</mi> </msub> <mi>G</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>R</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>+</mo> <msub> <mi>&amp;gamma;</mi> <msub> <mi>R</mi> <mn>1</mn> </msub> </msub> <mo>|</mo> <mo>|</mo> <mi>G</mi> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <msubsup> <mo>|</mo> <mn>2</mn> <mn>2</mn> </msubsup> <mo>)</mo> <msub> <mi>R</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>0</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>R</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>+</mo> <msub> <mi>&amp;gamma;</mi> <msub> <mi>R</mi> <mn>2</mn> </msub> </msub> <mo>|</mo> <mo>|</mo> <mi>G</mi> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>|</mo> <msubsup> <mo>|</mo> <mn>2</mn> <mn>2</mn> </msubsup> <mo>)</mo> <msub> <mi>R</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>0</mn> </msub> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>G</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>f</mi> <mrow> <mo>(</mo> <mi>E</mi> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>,</mo> <mi>&amp;Delta;</mi> <mi>E</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> </mtd> </mtr> <mtr> <mtd> <mtable> <mtr> <mtd> <mrow> <mi>s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> </mrow> </mtd> <mtd> <mrow> <mi>Q</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&amp;GreaterEqual;</mo> <mn>0</mn> <mo>,</mo> <msub> <mi>R</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&amp;GreaterEqual;</mo> <mn>0</mn> <mo>,</mo> <msub> <mi>R</mi> <mn>2</mn> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>&amp;GreaterEqual;</mo> <mn>0</mn> </mrow> </mtd> </mtr> </mtable> </mtd> </mtr> </mtable> </mfenced>
其中:Q(t0)、R1(t0)、R2(t0)为初始时刻误差加权矩阵、初始时刻控制加权矩阵、初始时刻控制增量加权矩阵;其初始值分别为Q(t0)=diag(0.5 0.5 0.5),R1(t0)=diag(0.8 0.80.8 0.8),R2(t0)=diag(0 0 0 0),并根据模型误差进行调整;G(t)为权重系数调整矩阵,它表示控制过程中动态相对于稳态的程度大小,G(t)越大,系统动态程度越大,反之系统稳态程度越大;E(t),ΔE(t)为误差矩阵和误差增量矩阵,其中,Ys(t)为姿态角的设定值,Y(t)为姿态角的实测值;分别为误差加权矩阵、控制加权矩阵和控制增量加权矩阵的调节系数;
记G(t)=[gφ gθ gψ],E(t)=[eφ eθ eψ]T,ΔE(t)=[Δeφ Δeθ Δeψ]T;gz=fuzzy(Kcez,KecΔez)为模糊函数,z=φ,θ,ψ,Kc和Kec为量化因子,其模糊规则如下表:
其中,模糊状态NB、NM、NS、ZO、PS、PM和PB分别表示负大、负中、负小、零、正小、正中和正大,分别取值为-3、-2、-1、0、1、2和3;g0、g1、g2、g3、g4、g5和g6取值分别为0、1、2、3、4、5和6;各模糊状态的隶属函数为三角形隶属度函数。
3.一种基于非线性模型的无人机姿态模糊自适应预测控制系统,其特征在于,包括无刷电机和螺旋桨构成、飞控系统的主控板、测量单元、协处理器模块和四个电子调速器;
其控制过程为:首先,无人机系统在遥控或者地面站的监控之下,对无人机发出指令,控制无人机进行运动;然后,主控板根据该指令求出位置设定值,将位置设定值和测量单元测出的实际位置经位置PI控制器求出姿态控制环的姿态角的设定值Ys(t),并将Ys(t)与测量单元测出的姿态角的实测值Y(t)传递给协处理器模块;协处理器模块基于步骤1或2所述的非线性模型的无人机姿态模糊自适应预测控制方法,求出控制量u(t),然后将u(t)传递给主控板,主控板将控制量u(t)按比例转化为PWM占空比并输出给对应的四个电子调速器,电子调速器驱动无刷电机带动螺旋桨旋转,实现无人机的姿态调整。
CN201710035809.1A 2017-01-18 2017-01-18 基于非线性模型的无人机姿态模糊自适应预测控制方法及系统 Expired - Fee Related CN107065902B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710035809.1A CN107065902B (zh) 2017-01-18 2017-01-18 基于非线性模型的无人机姿态模糊自适应预测控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710035809.1A CN107065902B (zh) 2017-01-18 2017-01-18 基于非线性模型的无人机姿态模糊自适应预测控制方法及系统

Publications (2)

Publication Number Publication Date
CN107065902A true CN107065902A (zh) 2017-08-18
CN107065902B CN107065902B (zh) 2019-02-01

Family

ID=59599143

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710035809.1A Expired - Fee Related CN107065902B (zh) 2017-01-18 2017-01-18 基于非线性模型的无人机姿态模糊自适应预测控制方法及系统

Country Status (1)

Country Link
CN (1) CN107065902B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107608215A (zh) * 2017-10-18 2018-01-19 齐鲁工业大学 一种基于rbf神经网络的测绘无人机姿态控制方法
CN108536014A (zh) * 2018-04-04 2018-09-14 北京航空航天大学 一种考虑飞轮动态特性的航天器姿态规避的模型预测控制方法
CN108732932A (zh) * 2018-06-01 2018-11-02 荷塘智能科技(固安)有限公司 一种基于最小方差调节器的四旋翼无人机精确位置控制方法
CN109145421A (zh) * 2018-08-08 2019-01-04 中南大学 一种应用于分布参数系统的时空模糊建模方法
CN109507882A (zh) * 2018-11-20 2019-03-22 中南大学 一种基于rbf-arx模型的快速鲁棒预测控制方法
CN109634334A (zh) * 2018-11-29 2019-04-16 西安理工大学 基于模型预测及模糊补偿的直流母线电压外环控制方法
CN109885077A (zh) * 2019-03-21 2019-06-14 中南大学 一种四旋翼飞行器姿态控制方法及控制器
CN110134135A (zh) * 2019-05-27 2019-08-16 郑州轻工业学院 基于改进mpc-pid的四旋翼飞行器控制方法
CN110163909A (zh) * 2018-02-12 2019-08-23 北京三星通信技术研究有限公司 用于获得设备位姿的方法、装置和存储介质
CN111026146A (zh) * 2019-12-24 2020-04-17 西北工业大学 一种复合翼垂直起降无人机的姿态控制方法
CN111114814A (zh) * 2020-01-16 2020-05-08 四川川测研地科技有限公司 基于无人飞行器对线性工程对象的自适应聚焦云台
CN111176117A (zh) * 2020-01-06 2020-05-19 南京航空航天大学 一种无人直升机的模糊自适应弹性控制方法
CN111522240A (zh) * 2020-05-06 2020-08-11 中南大学 四旋翼飞行器模型、辨识方法、系统及存储介质
CN112859601A (zh) * 2021-01-11 2021-05-28 湖南工程学院 机器人控制器设计方法、装置、设备及可读存储介质
CN112911497A (zh) * 2019-12-02 2021-06-04 南京航空航天大学 一种合作类无人机轨迹实时预测方法及系统
CN113848990A (zh) * 2021-11-18 2021-12-28 北京航空航天大学 一种考虑结构非线性的无人机稳定飞行控制方法
CN113985900A (zh) * 2021-08-04 2022-01-28 铜陵有色金属集团股份有限公司金威铜业分公司 一种四旋翼无人机姿态动态特性模型、辨识方法及自适应柔化预测控制方法
CN114296471A (zh) * 2021-11-17 2022-04-08 湖北航天飞行器研究所 一种基于全捷联下视相机的无人机精准着陆控制方法
CN117311188A (zh) * 2023-09-26 2023-12-29 青岛理工大学 用于固定场所的人群导流栏杆的控制方法、系统、设备
CN117590766A (zh) * 2024-01-19 2024-02-23 青岛理工大学 通道入口导流栏杆角度调整的控制方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945046A (zh) * 2012-11-15 2013-02-27 中国兵器工业计算机应用技术研究所 一种无人机的控制方法
CN105467833A (zh) * 2015-12-07 2016-04-06 南京航空航天大学 一种非线性自适应飞行控制方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102945046A (zh) * 2012-11-15 2013-02-27 中国兵器工业计算机应用技术研究所 一种无人机的控制方法
CN105467833A (zh) * 2015-12-07 2016-04-06 南京航空航天大学 一种非线性自适应飞行控制方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
SUN G,ET AL.: "Adaptive Fuzzy Predictive Control of Satellite Attitude Based on Hierarchical Fuzzy Systems", 《2010 INTERNATIONAL CONFERENCE ON INTELLIGENT SYSTEM DESIGN AND ENGINEERING APPLICATION》 *
WU, JUN ET AL.: "RBF-ARX Model-Based Modeling and Control of Quadrotor", 《CONTROL APPLICATIONS (CCA), 2010 IEEE INTERNATIONAL CONFERENCE ON. IEEE》 *
WU, JUN, ET AL.: "Modeling and control approach to a distinctive quadrotor helicopter", 《ISA TRANSACTIONS》 *
ZENG, XIAOYONG, ET AL.: "Quad‐Rotor Modeling and Attitude Control Using S tate‐D ependent ARX Type Model", 《ASIAN JOURNAL OF CONTROL》 *
方炜: "空天飞行器再入飞行的模糊自适应预测控制", 《中国博士学位论文全文数据库 信息科技辑》 *
甘敏等: "不同基函数对RBF-ARX模型的影响", 《中南大学学报(自然科学版)》 *

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107608215A (zh) * 2017-10-18 2018-01-19 齐鲁工业大学 一种基于rbf神经网络的测绘无人机姿态控制方法
CN110163909A (zh) * 2018-02-12 2019-08-23 北京三星通信技术研究有限公司 用于获得设备位姿的方法、装置和存储介质
CN108536014A (zh) * 2018-04-04 2018-09-14 北京航空航天大学 一种考虑飞轮动态特性的航天器姿态规避的模型预测控制方法
CN108732932A (zh) * 2018-06-01 2018-11-02 荷塘智能科技(固安)有限公司 一种基于最小方差调节器的四旋翼无人机精确位置控制方法
CN108732932B (zh) * 2018-06-01 2021-06-08 荷塘智能科技(固安)有限公司 一种基于最小方差调节器的四旋翼无人机精确位置控制方法
CN109145421A (zh) * 2018-08-08 2019-01-04 中南大学 一种应用于分布参数系统的时空模糊建模方法
CN109145421B (zh) * 2018-08-08 2020-04-21 中南大学 一种应用于分布参数系统的时空模糊建模方法
CN109507882A (zh) * 2018-11-20 2019-03-22 中南大学 一种基于rbf-arx模型的快速鲁棒预测控制方法
CN109507882B (zh) * 2018-11-20 2021-05-07 中南大学 一种基于rbf-arx模型的快速鲁棒预测控制方法
CN109634334A (zh) * 2018-11-29 2019-04-16 西安理工大学 基于模型预测及模糊补偿的直流母线电压外环控制方法
CN109885077A (zh) * 2019-03-21 2019-06-14 中南大学 一种四旋翼飞行器姿态控制方法及控制器
CN110134135A (zh) * 2019-05-27 2019-08-16 郑州轻工业学院 基于改进mpc-pid的四旋翼飞行器控制方法
CN110134135B (zh) * 2019-05-27 2022-03-18 郑州轻工业学院 基于改进mpc-pid的四旋翼飞行器控制方法
CN112911497B (zh) * 2019-12-02 2022-03-29 南京航空航天大学 一种合作类无人机轨迹实时预测方法及系统
CN112911497A (zh) * 2019-12-02 2021-06-04 南京航空航天大学 一种合作类无人机轨迹实时预测方法及系统
CN111026146B (zh) * 2019-12-24 2021-04-06 西北工业大学 一种复合翼垂直起降无人机的姿态控制方法
CN111026146A (zh) * 2019-12-24 2020-04-17 西北工业大学 一种复合翼垂直起降无人机的姿态控制方法
CN111176117B (zh) * 2020-01-06 2021-05-28 南京航空航天大学 一种无人直升机的模糊自适应弹性控制方法
CN111176117A (zh) * 2020-01-06 2020-05-19 南京航空航天大学 一种无人直升机的模糊自适应弹性控制方法
CN111114814B (zh) * 2020-01-16 2022-04-08 四川川测研地科技有限公司 基于无人飞行器对线性工程对象的自适应聚焦云台
CN111114814A (zh) * 2020-01-16 2020-05-08 四川川测研地科技有限公司 基于无人飞行器对线性工程对象的自适应聚焦云台
CN111522240A (zh) * 2020-05-06 2020-08-11 中南大学 四旋翼飞行器模型、辨识方法、系统及存储介质
CN111522240B (zh) * 2020-05-06 2021-06-11 中南大学 四旋翼飞行器mtmlp-arx模型、辨识方法、系统及存储介质
CN112859601A (zh) * 2021-01-11 2021-05-28 湖南工程学院 机器人控制器设计方法、装置、设备及可读存储介质
CN112859601B (zh) * 2021-01-11 2023-01-20 湖南工程学院 机器人控制器设计方法、装置、设备及可读存储介质
CN113985900A (zh) * 2021-08-04 2022-01-28 铜陵有色金属集团股份有限公司金威铜业分公司 一种四旋翼无人机姿态动态特性模型、辨识方法及自适应柔化预测控制方法
CN113985900B (zh) * 2021-08-04 2023-09-08 铜陵有色金属集团股份有限公司金威铜业分公司 一种四旋翼无人机姿态动态特性模型、辨识方法及自适应柔化预测控制方法
CN114296471A (zh) * 2021-11-17 2022-04-08 湖北航天飞行器研究所 一种基于全捷联下视相机的无人机精准着陆控制方法
CN113848990B (zh) * 2021-11-18 2022-04-19 北京航空航天大学 一种考虑结构非线性的无人机稳定飞行控制方法
CN113848990A (zh) * 2021-11-18 2021-12-28 北京航空航天大学 一种考虑结构非线性的无人机稳定飞行控制方法
CN117311188A (zh) * 2023-09-26 2023-12-29 青岛理工大学 用于固定场所的人群导流栏杆的控制方法、系统、设备
CN117311188B (zh) * 2023-09-26 2024-03-12 青岛理工大学 用于固定场所的人群导流栏杆的控制方法、系统、设备
CN117590766A (zh) * 2024-01-19 2024-02-23 青岛理工大学 通道入口导流栏杆角度调整的控制方法和装置

Also Published As

Publication number Publication date
CN107065902B (zh) 2019-02-01

Similar Documents

Publication Publication Date Title
CN107065902B (zh) 基于非线性模型的无人机姿态模糊自适应预测控制方法及系统
CN106094860B (zh) 四旋翼飞行器及其控制方法
Abbeel et al. Using inaccurate models in reinforcement learning
CN103365295B (zh) 基于dsp的四旋翼无人飞行器自主悬停控制系统及方法
Madani et al. Adaptive control via backstepping technique and neural networks of a quadrotor helicopter
CN104765272A (zh) 一种基于pid神经元网络控制(pidnn)的四旋翼飞行器控制方法
CN107132761A (zh) 一种采用纯模糊与模糊pid复合控制的电动舵机设计方法
CN109976164B (zh) 一种多旋翼无人机能量优化视觉覆盖轨迹规划方法
CN106406340A (zh) 四旋翼无人飞行器及其控制方法
CN108638068A (zh) 一种携带冗余度机械臂的飞行机器人控制系统设计方法
CN111221346A (zh) 人群搜索算法优化pid控制四旋翼飞行器飞行的方法
Garratt Biologically inspired vision and control for an autonomous flying vehicle
CN108415418A (zh) 一种基于无向连通网络的同质无人艇集群编队方法
CN106877769B (zh) 一种伺服电机速度控制器增益参数自整定的方法
CN106292297B (zh) 基于pid控制器和l1自适应控制器的姿态控制方法
CN115236973A (zh) 基于pso李雅普诺夫函数的agv轨迹跟踪控制方法
Velagić et al. Design of LQR controller for 3D trajectory tracking of octocopter unmanned aerial vehicle
CN117215197B (zh) 四旋翼飞行器在线轨迹规划方法、系统、电子设备及介质
CN106569503A (zh) 一种基于触发式预测控制的飞行器控制方法
CN116755323A (zh) 一种基于深度强化学习的多旋翼无人机pid自整定方法
Wu et al. Path following control for miniature fixed-wing unmanned aerial vehicles under uncertainties and disturbances: a two-layered framework
CN113885549B (zh) 基于维度裁剪的ppo算法的四旋翼姿态轨迹控制方法
NIKITIN et al. MULTILEVEL CONTROL OF A TRANSPORT ROBOT.
CN110703792B (zh) 基于增强学习的水下机器人姿态控制方法
Lin et al. Modelling and attitude control of novel multi-ducted-fan aerial vehicle in forward flight

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190201

Termination date: 20210118

CF01 Termination of patent right due to non-payment of annual fee