一种基于T‑S模糊模型的四旋翼姿态控制方法与流程

文档序号:12270201阅读:来源:国知局

技术特征:

1.一种基于T-S模糊模型的四旋翼姿态控制方法,其特征在于,包括以下步骤:

步骤1:利用欧拉-拉格朗日方程建立四旋翼无人机的姿态动力学方程

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mover> <mi>&eta;</mi> <mo>&CenterDot;&CenterDot;</mo> </mover> <mo>=</mo> <msup> <mi>J</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <mrow> <mo>(</mo> <mrow> <mi>&tau;</mi> <mo>-</mo> <mrow> <mo>(</mo> <mrow> <mover> <mi>J</mi> <mo>&CenterDot;</mo> </mover> <mo>-</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <mfrac> <mrow> <mo>&part;</mo> <mrow> <mo>(</mo> <msup> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> <mi>T</mi> </msup> <mi>J</mi> <mo>)</mo> </mrow> </mrow> <mrow> <mo>&part;</mo> <mi>&eta;</mi> </mrow> </mfrac> </mrow> <mo>)</mo> </mrow> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <msup> <mi>J</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <mrow> <mo>(</mo> <mrow> <mi>&tau;</mi> <mo>-</mo> <mi>C</mi> <mrow> <mo>(</mo> <mrow> <mi>&eta;</mi> <mo>,</mo> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> <mo>)</mo> </mrow> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced>

其中,η=(ψ,θ,φ)为欧拉角向量,ψ为偏航角,θ为俯仰角,φ为滚转角,τ=(τψθφ)为系统的输入扭矩,τψ为偏航扭矩,τθ为俯仰扭矩,τφ为滚转扭矩;矩阵其中J=diag(Jx,Jy,Jz)为转动惯量矩阵,且

<mrow> <msub> <mi>W</mi> <mi>&eta;</mi> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mo>-</mo> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&phi;</mi> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&phi;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&phi;</mi> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mrow> <mo>-</mo> <mi>sin</mi> <mi>&phi;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> </mtable> </mfenced> <mo>;</mo> </mrow>

步骤2:基于四旋翼无人机的对称性做出以下合理的假设J=diag(Jm,Jm,2Jm),Jm=Jx=Jy=1/2Jz,假设四旋翼无人机滚转角在飞行时很小φ=0,基于这两个假设对姿态动力学方程进行化简可得

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <msup> <mi>B</mi> <mo>*</mo> </msup> <mo>=</mo> <msup> <mi>J</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <msub> <mo>|</mo> <mrow> <mi>I</mi> <mo>=</mo> <mi>d</mi> <mi>i</mi> <mi>a</mi> <mi>g</mi> <mrow> <mo>(</mo> <msub> <mi>I</mi> <mi>m</mi> </msub> <mo>,</mo> <msub> <mi>I</mi> <mi>m</mi> </msub> <mo>,</mo> <mn>2</mn> <msub> <mi>I</mi> <mi>m</mi> </msub> <mo>)</mo> </mrow> <mo>,</mo> <mi>&phi;</mi> <mo>=</mo> <mn>0</mn> </mrow> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mn>2</mn> <msub> <mi>I</mi> <mi>m</mi> </msub> </mrow> </mfrac> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msup> <mi>sec</mi> <mn>2</mn> </msup> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mi>tan</mi> <mi>&theta;</mi> <mi>sec</mi> <mi>&theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mo>*</mo> </mtd> <mtd> <mn>2</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mo>*</mo> </mtd> <mtd> <mo>*</mo> </mtd> <mtd> <mrow> <mn>1</mn> <mo>+</mo> <msup> <mi>sec</mi> <mn>2</mn> </msup> <mi>&theta;</mi> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> </mtable> </mfenced>

令:

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>&zeta;</mi> <mo>=</mo> <mo>-</mo> <msup> <mi>B</mi> <mo>*</mo> </msup> <mo>&CenterDot;</mo> <msub> <mi>C</mi> <mn>1</mn> </msub> <mrow> <mo>(</mo> <mi>&eta;</mi> <mo>,</mo> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> <mo>)</mo> </mrow> <msub> <mo>|</mo> <mrow> <mi>&phi;</mi> <mo>=</mo> <mn>0</mn> </mrow> </msub> <mo>&CenterDot;</mo> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>sec</mi> <mi>&theta;</mi> <mo>&CenterDot;</mo> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> <mover> <mi>&phi;</mi> <mo>&CenterDot;</mo> </mover> <mo>+</mo> <mi>tan</mi> <mi>&theta;</mi> <mo>&CenterDot;</mo> <mover> <mi>&psi;</mi> <mo>&CenterDot;</mo> </mover> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <mi>sin</mi> <mi>&theta;</mi> <mi>cos</mi> <mi>&theta;</mi> <mo>&CenterDot;</mo> <msup> <mover> <mi>&psi;</mi> <mo>&CenterDot;</mo> </mover> <mn>2</mn> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>tan</mi> <mi>&theta;</mi> <mo>&CenterDot;</mo> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> <mover> <mi>&phi;</mi> <mo>&CenterDot;</mo> </mover> <mo>+</mo> <mi>sin</mi> <mi>&theta;</mi> <mi>tan</mi> <mi>&theta;</mi> <mo>&CenterDot;</mo> <mover> <mi>&psi;</mi> <mo>&CenterDot;</mo> </mover> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> <mi>sec</mi> <mi>&theta;</mi> <mi>sin</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> <mi>sec</mi> <mi>&theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>-</mo> <mover> <mi>&psi;</mi> <mo>&CenterDot;</mo> </mover> <mi>cos</mi> <mi>&theta;</mi> <mi>sin</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> <mi>sec</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mrow> <mo>-</mo> <mover> <mi>&psi;</mi> <mo>&CenterDot;</mo> </mover> <mi>cos</mi> <mi>&theta;</mi> </mrow> </mtd> <mtd> <mrow> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> <mi>sec</mi> <mi>&theta;</mi> <mi>sin</mi> <mi>&theta;</mi> </mrow> </mtd> </mtr> </mtable> </mfenced> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mover> <mi>&psi;</mi> <mo>&CenterDot;</mo> </mover> </mtd> </mtr> <mtr> <mtd> <mover> <mi>&theta;</mi> <mo>&CenterDot;</mo> </mover> </mtd> </mtr> <mtr> <mtd> <mover> <mi>&phi;</mi> <mo>&CenterDot;</mo> </mover> </mtd> </mtr> </mtable> </mfenced> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <msup> <mi>A</mi> <mo>*</mo> </msup> <mover> <mi>&eta;</mi> <mo>&CenterDot;</mo> </mover> </mrow> </mtd> </mtr> </mtable> </mfenced>

得到简化之后的姿态动力学方程

步骤3:将简化之后的姿态动力学方程模糊化,建立T-S模糊模型设计模糊控制器补偿系统的模型偏差实现姿态控制,取状态变量x=(x1,x2,x3,x4,x5,x6)T,其中x1=ψ-ψd,x2=θ-θd,x3=φ-φd期望的欧拉角为ηd=(ψddd)T,那么姿态动力学方程可以整理为

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mover> <mi>x</mi> <mo>&CenterDot;</mo> </mover> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mi>I</mi> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <msup> <mi>A</mi> <mo>*</mo> </msup> </mtd> </mtr> </mtable> </mfenced> <mi>x</mi> <mo>+</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <msup> <mi>B</mi> <mo>*</mo> </msup> </mtd> </mtr> </mtable> </mfenced> <mi>&tau;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>=</mo> <mi>A</mi> <mi>x</mi> <mo>+</mo> <mi>B</mi> <mi>&tau;</mi> </mrow> </mtd> </mtr> </mtable> </mfenced>

定义前提变量μ=(μ1234),其中μ1=sinθ,μ4=sec2θ,把前提变量带入到矩阵A*,B*中,那么整理可得

<mrow> <msup> <mi>A</mi> <mo>*</mo> </msup> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <msub> <mi>&mu;</mi> <mn>1</mn> </msub> <mo>*</mo> <msub> <mi>&mu;</mi> <mn>2</mn> </msub> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <msub> <mi>&mu;</mi> <mn>2</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>&mu;</mi> <mn>1</mn> </msub> <mo>*</mo> <msub> <mi>&mu;</mi> <mn>3</mn> </msub> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <msub> <mi>&mu;</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>&mu;</mi> <mn>3</mn> </msub> </mtd> <mtd> <mrow> <msub> <mi>&mu;</mi> <mn>1</mn> </msub> <mo>*</mo> <msub> <mi>&mu;</mi> <mn>2</mn> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

<mrow> <mi>B</mi> <mo>*</mo> <mo>=</mo> <mfrac> <mn>1</mn> <mrow> <mn>2</mn> <msub> <mi>I</mi> <mi>m</mi> </msub> </mrow> </mfrac> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>&mu;</mi> <mn>4</mn> </msub> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <msub> <mi>&mu;</mi> <mn>1</mn> </msub> <mo>*</mo> <msub> <mi>&mu;</mi> <mn>4</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>2</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>&mu;</mi> <mn>1</mn> </msub> <mo>*</mo> <msub> <mi>&mu;</mi> <mn>4</mn> </msub> </mrow> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mn>1</mn> <mo>+</mo> <msub> <mi>&mu;</mi> <mn>4</mn> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> </mrow>

然后,再定义模糊成员函数

<mrow> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <msub> <mi>M</mi> <mrow> <mi>i</mi> <mn>1</mn> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>&mu;</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msubsup> <mi>&mu;</mi> <mi>i</mi> <mi>max</mi> </msubsup> <mo>-</mo> <msub> <mi>&mu;</mi> <mi>i</mi> </msub> </mrow> <mrow> <msubsup> <mi>&mu;</mi> <mi>i</mi> <mi>max</mi> </msubsup> <mo>-</mo> <msubsup> <mi>&mu;</mi> <mi>i</mi> <mi>min</mi> </msubsup> </mrow> </mfrac> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>M</mi> <mrow> <mi>i</mi> <mn>2</mn> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>&mu;</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msub> <mi>&mu;</mi> <mi>i</mi> </msub> <mo>-</mo> <msubsup> <mi>&mu;</mi> <mi>i</mi> <mi>min</mi> </msubsup> </mrow> <mrow> <msubsup> <mi>&mu;</mi> <mi>i</mi> <mi>max</mi> </msubsup> <mo>-</mo> <msubsup> <mi>&mu;</mi> <mi>i</mi> <mi>min</mi> </msubsup> </mrow> </mfrac> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>,</mo> <mi>i</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mn>3</mn> <mo>,</mo> <mn>4</mn> </mrow>

得到四旋翼无人机姿态动力学方程的T-S模糊模型为

<mrow> <mover> <mi>x</mi> <mo>&CenterDot;</mo> </mover> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>&rho;</mi> <mo>=</mo> <mn>1</mn> </mrow> <mn>16</mn> </munderover> <msub> <mi>h</mi> <mi>&rho;</mi> </msub> <mrow> <mo>(</mo> <mi>&mu;</mi> <mo>)</mo> </mrow> <mo>{</mo> <msub> <mi>A</mi> <mi>&rho;</mi> </msub> <mi>x</mi> <mo>+</mo> <msub> <mi>B</mi> <mi>&rho;</mi> </msub> <mi>&tau;</mi> <mo>}</mo> </mrow>

其中,ρ=8(i-1)+4(j-1)+2(k-1)+l,hρ(μ)=M1i1)M2j2)M3k3)M4l4),i,j,k,l只取1和2;

步骤4:利用推导得到的T-S模糊模型,并根据模糊规则,利用并行分步补偿技术设计模糊状态反馈控制器

<mrow> <mi>&tau;</mi> <mo>=</mo> <mo>-</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>&rho;</mi> <mo>=</mo> <mn>1</mn> </mrow> <mn>16</mn> </munderover> <msub> <mi>h</mi> <mi>&rho;</mi> </msub> <mrow> <mo>(</mo> <mi>&mu;</mi> <mo>)</mo> </mrow> <msub> <mi>F</mi> <mi>&rho;</mi> </msub> <mi>x</mi> </mrow>

再根据李雅普诺夫稳定性定理,推导得到满足收敛速度,并且输入输出信号符合限定条件的线性不等式组

X≥σ2I,

<mrow> <msubsup> <mi>XA</mi> <mi>i</mi> <mi>T</mi> </msubsup> <mo>+</mo> <msub> <mi>A</mi> <mi>i</mi> </msub> <mi>X</mi> <mo>-</mo> <msubsup> <mi>M</mi> <mi>i</mi> <mi>T</mi> </msubsup> <msubsup> <mi>B</mi> <mi>i</mi> <mi>T</mi> </msubsup> <mo>-</mo> <msub> <mi>B</mi> <mi>i</mi> </msub> <msub> <mi>M</mi> <mi>i</mi> </msub> <mo>+</mo> <mn>2</mn> <mi>&alpha;</mi> <mi>X</mi> <mo>&lt;</mo> <mn>0</mn> <mo>,</mo> </mrow>

<mrow> <msubsup> <mi>XA</mi> <mi>i</mi> <mi>T</mi> </msubsup> <mo>+</mo> <msub> <mi>A</mi> <mi>i</mi> </msub> <mi>X</mi> <mo>+</mo> <msubsup> <mi>XA</mi> <mi>j</mi> <mi>T</mi> </msubsup> <mo>+</mo> <msub> <mi>A</mi> <mi>j</mi> </msub> <mi>X</mi> <mo>+</mo> <mn>4</mn> <mi>&alpha;</mi> <mi>X</mi> <mo>-</mo> <msubsup> <mi>M</mi> <mi>i</mi> <mi>T</mi> </msubsup> <msubsup> <mi>B</mi> <mi>i</mi> <mi>T</mi> </msubsup> <mo>-</mo> <msub> <mi>B</mi> <mi>j</mi> </msub> <msub> <mi>M</mi> <mi>i</mi> </msub> <mo>-</mo> <msubsup> <mi>M</mi> <mi>j</mi> <mi>T</mi> </msubsup> <msubsup> <mi>B</mi> <mi>i</mi> <mi>T</mi> </msubsup> <mo>-</mo> <msub> <mi>B</mi> <mi>j</mi> </msub> <msub> <mi>M</mi> <mi>i</mi> </msub> <mo>&le;</mo> <mn>0</mn> <mo>,</mo> </mrow>

其中,σ为系统状态范数的上界,ò为系统输出向量范数的上界,α为误差收敛指数,X=P-1为正定矩阵,Mi=FiX而Fi为状态反馈矩阵,然后利用MATLAB的LMI工具箱求解出状态反馈矩阵F1,...,F16,并得出模糊闭环状态反馈控制器

步骤5:将所得到的T-S模糊控制输出信号传输至四旋翼无人机的动力分配系统中进行姿态控制。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1