You are on page 1of 5

2016 年 3 月 控 制 工 程 Mar.

2016
第 23 卷第 3 期 Control Engineering of China Vol.23, No.3

文章编号:1671-7848(2016)03-0378-05 DOI: 10.14107/j.cnki.kzgc.150303

基于 RBF 神经网络自适应 PID 四旋翼飞行器控制


李砚浓 1a,李汀兰 2,姜艺 1b,范家璐 1b
(1.东北大学 a.信息科学与工程学院;b. 流程工业综合自动化国家重点实验室 沈阳 110819;
2.东北育才学校 科学高中部 沈阳 110179)
摘 要:四旋翼飞行器具有高非线性、强耦合、欠驱动等特点,飞行控制器设计困难。首
先根据牛顿欧拉方程建立系统动力学模型;然后根据系统动力学模型推导出控制器设计模
型,根据系统模型设计出串级控制策略以实现对系统姿态控制和位置控制的解耦;最后针
对四旋翼飞行器的控制难点提出了基于 RBF 的多变量神经网络自适应 PID 控制方法。该
方法具有神经网络自学习、自适应的能力,同时具有一定的非线性控制作用。仿真结果表
明,该方法相对于常规 PID 控制方法具有更短的调节时间、更少的超调量、更好的抗扰动
能力,同时,在模型参数变化的情况下该控制器比常规 PID 控制器的鲁棒性更强。
关键词:四旋翼飞行器;神经网络;PID 控制器;自适应
中图分类号:TP2 文献标识码:A

Adaptive PID Control of Quadrotor Based on RBF Neural Network


LI Yan-nong1a, LI Ting-lan2, JIANG Yi1b, FAN Jia-lu1b
(1. a. College of Information Science and Engineering; b. State Key Laboratory of Synthetical Automation for Process Industries,
Northeastern University, Shenyang 110819, China; 2. Science High School Division, Northeast Yucai School, Shenyang 110179,
China)
Abstract: Attitude and position control of the quadrotor is a challenging task because it is an under-actuated
system with strong nonlinear, coupling characteristics. In this paper, the dynamics model and the state space
function of the quadrotor are firstly established according to Newton Euler equation. Then, a cascade control
scheme is proposed to decouple the control system and a multivariate neural network based on RBF adaptive PID
control algorithm is proposed to realize robust control of the quad-rotor. This algorithm is not only capable of
self-adaption and online learning, but also action of nonlinear control. The simulation results show that compared
to the conventional PID controller, this controller has a shorter settling time, less overshoot and better resistance to
disturbances. What’s more, this controller has a stronger robustness than the conventional PID controller when the
model parameters are changed.
Key words: Quadrotor; neural network; PID controller; adaptive

1 引 言
四旋翼飞行器的自主飞行技术在侦察与营救、 方法设计控制器,但是该控制器在控制时需要不断
科学数据采集、地质与林业勘探以及视频监控等方 切换,从而产生抖动,影响控制效果。文献[6-7]直
[1]
面均存在广泛的应用前景 。然而,四旋翼飞行器 接利用反步法设计控制器,由于反步法对模型准确
控制系统存在的多变量、非线性、强耦合、欠驱动 性有很强的依赖,其实际控制效果往往不佳。本文
和参数不确定等特点,使得常规控制方法在非悬停 从提高飞行器控制系统鲁棒性出发,运用基于 RBF
状态下难以取得满意的控制效果。文献[2-3]运用线 的多变量神经网络 PID 方法[8]设计了四旋翼飞行器
性控制理论设计解耦控制方法,但是该方法不能使 的姿态与位置控制器。仿真实验表明,该方法具有
系统在非平衡点保持稳定。文献[4-5]运用滑模控制 良好的跟踪、抗扰动和参数适应能力。
收稿日期:2015-04-22;修回日期:2015-06-10
基金项目:国家自然科学基金项目(61304028);863 项目(2015AA043802);辽宁省教育厅项目(L2014087)
作者简介:李砚浓(1993-),男,辽宁沈阳人,本科生,主要研究方向为智能控制等;李汀兰(1998-),女,辽宁沈阳人,
高中生;姜艺(1992-),男,湖北鄂州人,博士生,主要研究方向为工业过程智能控制等;范家璐(1985-),
女,辽宁营口人,博士,副教授,主要从事工业过程智能控制和运行控制等方面的教学与科研工作。
第3期 李砚浓等:基于 RBF 神经网络自适应 PID 四旋翼飞行器控制 ·379·

2 四旋翼飞行器建模 升力。设飞行器相对地面坐标系旋转的 3 个欧拉角


为滚动角  、俯仰角  和偏航角 ,则地面坐标系与
在忽略弹性形变和震动的情况下,四旋翼飞行
刚体坐标系的旋转矩阵 R [1]和平移矩阵 T [1]

器可以视为一个六自由度刚体,并由 4 个电机提供
  cos  cos sin  sin  cos  cos  sin sin  sin  cos  sin  cos 
 
 R   cos  sin sin  sin  sin  cos  cos cos  sin  sin  sin  cos 
   sin  sin  cos  cos  cos  
 (1)
 1 sin  tan  cos  tan  
T   0 cos   sin  
 
  0 sin  / cos  cos  / cos  

假设飞行器 3 个轴系所受扰动 Di (i  x, y, z ) , X  f ( X ,U ) 
根据牛顿欧拉方程,最终系统的系统动力学模型可  x2 
[(cos x sin x cos x  sin x sin x )U  D ] m 
表示为  7 9 11 7 11 1 x 
 4  x4 
 [(cos  sin  cos  sin  sin )b i2  Dx ]  
  i 1 [(cos x7 sin x9 sin x11  sin x7 cos x11 )U1  Dy ] m 
x x 
 m
 4
 6 
 [(cos  sin  sin  sin  cos )b i2  Dy ]  (cos x7 cos x9U1  mg  Dz ) / m  (5)
   

y i 1
 x8 
m [( I  I ) x x  J x   U ] / I 
 4  yy zz 10 12 r 10 r 2 xx

 (cos  cos  b i2  mg  Dz )  x10 

   
i 1
z (2)
 m [( I zz  I xx ) x8 x12  J r x8  r  U 3 ] / I yy 
    J   bl ( 2   2 ) x 
( I yy  I zz )
   12 
r r 4 2

 I xx [( I xx  I yy ) x8 x10  U 4 ] / I zz 
  
  ( I zz  I xx )  J r r  bl (3  1 )
2 2
3 四旋翼飞行器控制器设计
 I yy

    d ( 2   2   2   2 )
( I xx  I yy ) 因为四旋翼飞行器大量参数具有不确定性,而
 
4 2 3 1

I zz 且飞行时受到的扰动大。为了实现飞行器能快速平

式(2)为四旋翼飞行器的物理学建模结果,其中, 稳地跟踪预定的飞行轨迹,本文设计了基于RBF的
i (i  1, 2,3, 4) 为 4 个螺旋桨的速度;b 为阻力因素; 多变量神经网络自适应PID控制器来控制飞行器。
m 为飞行器质量; g 为重力加速度;l 为电机至四旋 3.1 系统控制策略
翼飞行器几何中心的距离; J r 为螺旋桨绕轴的转动 从系统的动力学模型可知,四旋翼飞行器是一
惯量;I i (i  xx, yy, zz ) 为各方向上的转动惯量; r 为 个四输入六输出的多变量、强耦合、非线性的欠驱
螺旋桨整体的速度;d 是风阻系数。具体推导参见文 动控制系统,并且系统自身还存在不确定性。考虑
献[9]。 到飞行器模型中的非线性系统部分,本文将含有高
在实际控制器设计时,将系统写成状态方程 斯基函数的RBF神经网络与PID相结合,设计了四
X  f ( X ,U ) 的形式。其中,状态向量 X 与控制量 旋翼飞行器的控制器。系统的控制策略, 如图1所示。
输入 U 可表示为
X  ( x, x , y , y , z , z,  , ,  , , , ) (3)
2 2 2 2
 U1   b(1   2  3   4 ) 
   
 U 2   bl ( 42   22 ) 
U  (4)
 U 3   bl ( 2   2 ) 
   3 1 
 U 4   d ( 24   22  32  12 ) 

根据系统状态和控制输入可以将已建立的系
图1 系统控制策略图
统动力学模型变成如式(5)的控制器设计模型。 Fig. 1 Control scheme of system
•380• 控 制 工 程 第 23 卷

本文采用串级控制策略,将位置控制(高度控 能指标函数为
制、水平位置控制)作为系统的外环,姿态控制作 1  2

J Y (k )  Y (k ) (9)
为系统的内环。串级控制策略的引入不仅去除了系 2
统模型欠驱动性对控制器设计带来的障碍,而且解 根据梯度下降法,得网络输出权值迭代算法为

开了系统中姿态控制量与位置控制量的耦合作用。 wlrs  ( yl  y l )hrs (10)
3.2 神经网络 PID 控制算法 wlrs (k )  wlrs (k  1)  wlrs (k ) 
神经网络 PID 控制算法的基本思想是在 PID 方  [ wlrs (k  1)  wlrs (k  2)] 
(11)
法的基础上,利用神经网络对系统存在的非线性与  [ wlrs (k  2)  wlrs (k  3)] 
不确定性进行补偿。该算法主要分为单变量神经网  [ wlrs (k  3)  wlrs (k  4)]
络 PID [9]和多变量神经网络 PID 算法。由于本文研 相应地,网络节点中心的迭代算法为
究的四旋翼飞行器这一被控对象在姿态控制环和水 n  x pq  c pqrs
c pqrs   [( yt  yt ) wtrs hrs ] (12)
平位置控制环中存在耦合,所以单变量神经网络 t 1
2
bpq
PID 控制算法无法实现相关变量间的解耦。在水平 c pqrs (k )  c pqrs (k  1)  c pqrs (k ) 
位置控制器和姿态控制器设计时,均采用多变量神  [c pqrs (k  1)  c pqrs (k  2)] 
(13)
经网络 PID 控制算法。由于系统误差向量与反馈向  [c pqrs (k  2)  c pqrs (k  3)] 
量个数必须相同,所以这里均设为 n。神经网络拓  [c pqrs (k  3)  c pqrs (k  4)]
扑结构,如图 2 所示。
基宽参数的迭代算法为
X1 h1 3 n
w1
n  ( x pq  c pqrs ) 2

p 1 q 1
w2 brs   [( yt (k )  y t (k )) wtrs hrs ] (14)
X2 h2 yi
t 1 b3pq
wn
brs (k )  brs (k  1)  brs (k )   [brs (k  1)  brs (k  2)] 
Xn hn  [brs (k  2)  brs (k  3)]   [brs (k  3)  brs (k  4)]
(15)
图 2 神经网络拓扑结构图 神经网络控制器的训练算法为
Fig. 2 Topological structure of neural network
1 n 2 1 n
E  ek  2  (rt  yt ) 2 (16)
图 2 中,神经网络 PID 输入节点负责接收控制 2 k 1 k 1

系统误差、误差积分和误差微分,输出节点计算反 PID 参数 K PID 为


馈信息预估值,所以多变量神经网络 PID 输入节点  k p1  k pn 
仍是输出节点的 3 倍。设多变量神经网络输入层有  
K PID   ki1  kin  (17)
k 
3n 个节点,隐层中设置 3n 个节点,输出层 n 个节  d 1  kdn 
点。则输入矩阵 PID 控制器的输出可写为
X 3 n  [ x1 , x2 , , xn ] (6) ul  k pl el  kil  el dt  kdl del dt (18)
式中, xs  [us (k ), ys (k  1), ys (k )] 。 T
PID 控制器误差为
隐层基矩阵 H 3n 中高斯基函数 hrs 为  e1  en 
 
 3 n  X c    e1dt   en dt  (19)
hrs  exp   ( x pq  c pqrs ) 2  2bpq
2
 (7)
 
 p 1 q 1   de1 dt  den dt 
式中, r  1, 2,3 。
下面给出一种 PID 控制器比例、微分、积分系
此时中心矩阵 C 是四维矩阵,其大小为
数的在线调整算法:
3  n  3  n ,基宽矩阵 B3 n 是二维矩阵,从隐层过渡
yl
到输出层权值矩阵 Wn3n 是三维矩阵。通过多变量 k ps (k )  k ps (k  1)   el (k ) xc1s (k ) (20)
  
ul
神经网络训练出的输出向量 Y  [ y1 , , yn , ]T ,其中, yl
kis (k )  kis (k  1)   el (k ) xc 2 s (k ) (21)
第 k 时刻第 l 个变量输出为 ul
 3 n
y l (k )   wlrs (k )T hrs (k ) (8) E yl
kds (k )  kds (k  1)   xc 3s (k ) (22)
r 1 s 1 yl ul
考虑到多变量间的耦合,神经网络辨识器的性 式中,雅克比矩阵辨识信息 yl ul 为
第3期 李砚浓等:基于 RBF 神经网络自适应 PID 四旋翼飞行器控制 ·381·

3 n
yl  y l c x
   wlrs hrs rs1l 2 1l (23)
ul ul r 1 s 1 brs

4 四旋翼飞行器仿真实验研究
为了验证本文所提出的基于RBF的多变量神经
网络自适应PID方法,针对四旋翼飞行器这一系统
的有效性和可行性,本文分别采用基于RBF的多变
量神经网络自适应PID方法与PID方法进行以下飞
行控制实验以比较两种方法的姿态控制、抗扰动以
及鲁棒性能。四旋翼飞行器各参数,见表1。
表 1 四旋翼飞行器参数表
Tab. 1 Parameters of Quad-rotor

变量 变量含义 变量值 单位

m 飞行器质量 0.53 kg

l 飞行器臂长 0.232 m
R 螺旋桨半径 0.15 m 图 4 位置控制曲线
Ixx x 轴惯量分量 6.228×10 -3
kg·m2 Fig. 4 Curve of position control

Iyy y 轴惯量分量 6.228×10-3 kg·m2


图4中,点划线为控制目标,PID为常规PID控
制曲线,PIDNN为基于RBF的多变量神经网络自适
Izz z 轴惯量分量 1.125×10-2 kg·m2
应PID控制曲线。通过对比,PIDNN方法的超调和
T 采样时间 0.01 s
调整时间明显好于PID方法。
4.1 跟踪性能对比
4.2 抗扰动性能对比
四旋翼飞行器实际飞行时,需要实时改变飞行
飞行器受到风力等干扰时,会使自身偏离平衡
位置以完成飞行任务,所以系统跟随性能优劣几乎
位 置 。 假 设 在 第 15 s 为 飞 行 器 施 加 大 小 为
决定四旋翼飞行器实际应用价值的高低。t/s滚动角
 、俯仰角  和偏航角 的控制曲线,如图3所示。 [ Dx , Dy , Dz ]  [1,1,1] 的 扰 动 , 控 制 目 标 为
[ xd , yd , zd ]  [1,1,1] 。
抗扰性能对比,如图5所示。

图 3 姿态控制曲线
Fig. 3 Curve of attitude control
图5 抗扰性能对比
x、y、z三维位置的控制曲线,如图4所示。 Fig. 5 Control results when disturbances are imposed
•382• 控 制 工 程 第 23 卷

通过图5可以看出在一定形式外界扰动情况 可为非线性与系统解耦做出贡献。在控制器设计
下,基于RBF的多变量神经网络自适应PID制器更 时,采用串级控制以应对模型欠驱动性。当然,
能使系统快速平稳地恢复稳定。 由于该算法的具体实现比较复杂,其中可能遇到
4.3 鲁棒性能对比 的诸多问题仍需讨论,但总体来说,本文得到的
结论为具有参数不确定性的系统提供了一种可行
当利用四旋翼飞行器搬运物资时,机身质量会
的控制器设计方案。仿真实验表明,基于 RBF 的
产生突变。在这种情况下,如果控制算法鲁棒性不
多变量神经网络自适应 PID 不仅在跟随、抗扰动
强,会使飞行器高度失控,影响飞行效果。假设在
性能上优于 PID 控制方法,而且具有较强的鲁棒
第 10 s 飞行器增重 200 g,目标是使飞行器高度保
性能。
持在 1 m。
模型参数改变时的控制性能对比,
如图 6 所示。 参考文献(References)
[1] Fu J, Chai T Y, Su C Y, et al. Motion/force Tracking Control of
Nonholonomic Mechanical Systems via Combining Cascaded Design
and Backstepping[J]. Automatica, 2013, 49(12): 3682-3686
[2] Bresciani T. Modelling, Identification and Control of a Quadrotor
Helicopter[D]. Lund: Lund University, 2008.
[3] Saif A, Hiddabi A. Quadrotor Control Using Feedback Linearization
with Dynamic Extension[C]. Proceeding of the 6th International
Symposium on Mechatronics and its Applications, Sharjah, 2009.
[4] Altug E, Erginer B. Modeling and PD Control of a Quadrotor VTOL
图 6 模型参数改变时控制性能对比
Fig. 6 Experiment results when model parameters changed Vehicle[C]. IEEE International Conferance on Vehicles Symposium,
Istanbul, 2007.
两种方法的鲁棒性能对比,见表 2。 [5] Bouabdallah S, Siegwart R. Backstepping and Sliding-mode
Techniques Applied to an Indoor Micro-quadrotor[C]. Proceeding of
表 2 两种控制方法鲁棒性能比较 the IEEE International Conference on Robotics and Automation,
Tab. 2 Robustness comparison of two control methods Barcelona, 2005.
[6] González Iván, Sergio Salazar, Rogelio Lozano. Chattering-Free
性能指标 PID 方法 神经网络 PID 方法
Sliding Mode Altitude Control for a Quad-Rotor Aircraft: Real-Time
动态速降 48 % 28 % Application[J]. Journal of Intelligent & Robotic Systems, 2013,
调整时间/s 7.5 3.8 73(1-4): 1-19.
[7] Tan L N, Lu L B, Jin G D. Attitude Stabilization Control of a
通过图 6 和表 2 可看出,当飞行器机身质量发 Quadrotor Helicopter Using Integral Backstepping[C]. Automatic
生突变时,神经网络 PID 方法的动态速降比 PID 方 Control and Artificial Intelligence (ACAI 2012), 2012.
[8] Saif, A. A., Dhaifullah, M., Al-Malki, M., et al. Modified
法减小了 20 %,调整时间更缩短了近 50 %。
Backstepping Control of Quadrotor[J]. 2012 9th International
综上所述,相对于传统 PID 控制方法,神经网 Multi-Conference on Systems, Signals and Devices (SSD), 2012: 1-6.
络 PID 控制方法的鲁棒性要强于 PID 控制方法。 [9] 朴海国,王志新,张华强. 基于合作粒子群算法的 PID 神经网络
非线性控制系统[J]. 控制理论与应用,2009,26(12):1318-1324.
5 结 论 Piao H G, Wang Z X, Zhang H Q. Nonlinear Control System of PID
Neural Network Based on Cooperated Particle Swarm Optimization[J].
本文针对四旋翼飞行器这个多变量、强耦 Control Theory & Applications, 2009, 26(12): 1318-1324.
合、非线性、参数不确定的欠驱动对象,运用基 [10] Fang Z., Gao W. Adaptive Integral Backstepping Control for a
Micro-Quadrotor[C]. IEEE International Conference on Intelligent
于 RBF 的多变量神经网络自适应 PID 方法设计控
Control and Information Processing, Harbin, 2011.
制器,控制器中 PID 方法可很好地控制线性系
统;神经网络方法具有自学习与自适应的能力,

You might also like