主权项 |
一种基于PID控制器和L1自适应控制器的姿态控制方法,其特征在于:通过PID控制器对期望情况下飞行器姿态系统的稳定控制,再利用L1自适应控制器实时估计姿态系统中的扰动误差,并对估计出的扰动误差进行快速补偿,包括以下步骤,(1)获得期望欧拉角和某一时刻iT<sub>s</sub>的实际姿态角,并计算PID控制器的输入误差向量,获得PID控制器的控制输出信号,其计算公式为:<maths num="0001"><math><![CDATA[<mrow><msub><mi>τ</mi><mrow><mi>P</mi><mi>I</mi><mi>D</mi></mrow></msub><mo>=</mo><msub><mi>K</mi><mi>p</mi></msub><msub><mi>η</mi><mi>e</mi></msub><mo>+</mo><msub><mi>K</mi><mi>d</mi></msub><mfrac><mrow><msub><mi>dη</mi><mi>e</mi></msub></mrow><mrow><mi>d</mi><mi>t</mi></mrow></mfrac><mo>+</mo><mo>∫</mo><msub><mi>K</mi><mi>i</mi></msub><msub><mi>η</mi><mi>e</mi></msub><mo>·</mo><mi>d</mi><mi>t</mi></mrow>]]></math><img file="FDA0001141449730000011.GIF" wi="622" he="119" /></maths>其中,输入误差向量的计算公式为:η<sub>e</sub>=η<sub>d</sub>‑η;式中:η<sub>d</sub>为第iT<sub>s</sub>时刻期望的欧拉角,η为第iT<sub>s</sub>时刻飞行器的姿态向量;K<sub>p</sub>=diag(K<sub>p1</sub>,K<sub>p2</sub>,K<sub>p3</sub>),K<sub>i</sub>=diag(K<sub>i1</sub>,K<sub>i2</sub>,K<sub>i3</sub>),K<sub>d</sub>=diag(K<sub>d1</sub>,K<sub>d2</sub>,K<sub>d3</sub>),分别为PID控制反馈系数矩阵且均为正定阵;(2)根据上一时刻(i‑1)T<sub>s</sub>的控制输出,更新iT<sub>s</sub>时刻的L1自适应控制器的状态估计器的状态值,其计算公式为:<maths num="0002"><math><![CDATA[<mrow><mover><mover><mi>ω</mi><mo>^</mo></mover><mo>·</mo></mover><mo>=</mo><mo>-</mo><msup><mi>J</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mrow><mo>(</mo><mi>ω</mi><mo>×</mo><mi>J</mi><mi>ω</mi><mo>)</mo></mrow><mo>+</mo><msup><mi>J</mi><mrow><mo>-</mo><mn>1</mn></mrow></msup><mrow><mo>(</mo><mi>τ</mi><mo>+</mo><mi>σ</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>A</mi><mi>p</mi></msub><mrow><mo>(</mo><mover><mi>ω</mi><mo>^</mo></mover><mo>-</mo><mi>ω</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001141449730000012.GIF" wi="862" he="78" /></maths>式中:J=diag(J<sub>x</sub>,J<sub>y</sub>,J<sub>z</sub>)为飞行器的转动惯量矩阵;<img file="FDA0001141449730000013.GIF" wi="43" he="47" />为第iT<sub>s</sub>时刻L1自适应控制器的状态估计器的状态向量;ω为第(i‑1)T<sub>s</sub>时刻姿态系统的角速度向量;τ为第(i‑1)T<sub>s</sub>时刻飞行器的总控制输入向量;σ为第(i‑1)T<sub>s</sub>时刻L1自适应控制器所计算的扰动向量;A<sub>p</sub>为一个用来定义估计误差收敛特性的Hurwitz矩阵;(3)通过第iT<sub>s</sub>时刻状态估计器的状态值和姿态系统的角速度值,计算第iT<sub>s</sub>时刻扰动误差,其计算公式为:<maths num="0003"><math><![CDATA[<mrow><mi>σ</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>JA</mi><mi>p</mi></msub><msup><mrow><mo>(</mo><mi>I</mi><mo>-</mo><mi>exp</mi><mo>(</mo><mrow><msub><mi>A</mi><mi>p</mi></msub><msub><mi>T</mi><mi>s</mi></msub></mrow><mo>)</mo><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><mi>exp</mi><mrow><mo>(</mo><msub><mi>A</mi><mi>p</mi></msub><msub><mi>T</mi><mi>s</mi></msub><mo>)</mo></mrow><msub><mi>ω</mi><mi>e</mi></msub><mrow><mo>(</mo><msub><mi>iT</mi><mi>s</mi></msub><mo>)</mo></mrow><mo>,</mo><mo>∀</mo><mi>t</mi><mo>∈</mo><mo>[</mo><msub><mi>iT</mi><mi>s</mi></msub><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><msub><mi>T</mi><mi>s</mi></msub><mo>]</mo></mrow>]]></math><img file="FDA0001141449730000014.GIF" wi="1254" he="71" /></maths>其中:估计误差向量的计算公式为:<img file="FDA0001141449730000021.GIF" wi="245" he="62" />式中:<img file="FDA0001141449730000022.GIF" wi="43" he="46" />为第iT<sub>s</sub>时刻状态估计器的状态向量;ω为第iT<sub>s</sub>时刻姿态系统的角速度向量;T<sub>s</sub>为控制算法运行的时间间隔;(4)通过低通滤波器对L1自适应控制器的扰动误差进行平滑输出,其计算公式为:<img file="FDA0001141449730000023.GIF" wi="366" he="63" />式中:<img file="FDA0001141449730000024.GIF" wi="44" he="31" />为低通滤波器的带宽;σ(t)为低通滤波器的输入信号,即在第iT<sub>s</sub>时刻扰动误差;τ<sub>L1</sub>为低通滤波器的输出信号;(5)计算第iT<sub>s</sub>时刻PID控制器和L1自适应控制器的总输出信号,并将总输出信号输入至飞行器的姿态系统控制飞行器的姿态,其计算公式为:τ(iT<sub>s</sub>)=τ<sub>PID</sub>‑τ<sub>L1</sub> |