发明名称 基于鲁棒约束模型预测控制的UUV对线控位回收方法
摘要 基于鲁棒约束模型预测控制的UUV对线控位回收方法,涉及一种水下母船背驮式搭载UUV的自主回收方法。为了解决现有水下回收UUV的方法主要是针对静止的回收平台对UUV进行回收的问题以及回收过程中由于超调过大、调节时间过长等不稳定因素会使得UUV与回收平台发生碰撞的问题;本发明首先获得UUV与母船状态信息,构建误差预测模型,并计算局部时刻预测误差动态方程的系统矩阵和局部时刻状态预测误差;在约束条件下进行滚动优化,求解优化问题;然后计算控制量并新预测模型、重复滚动优化过程,直至实现与母船的对线控位过程。本发明适用于水下母船背驮式搭载UUV的自主回收。
申请公布号 CN105700356A 申请公布日期 2016.06.22
申请号 CN201610104470.1 申请日期 2016.02.25
申请人 哈尔滨工程大学 发明人 张伟;滕彦斌;陈海田;陈涛;李娟;严浙平
分类号 G05B13/04(2006.01)I 主分类号 G05B13/04(2006.01)I
代理机构 哈尔滨市松花江专利商标事务所 23109 代理人 杨立超
主权项 基于鲁棒约束模型预测控制的UUV对线控位回收方法,其特征在于包括以下步骤:步骤1、通过对线控位方法得到UUV与母船的位置偏差值△x,△y,△z、航向偏差值△ψ和纵倾角偏差值△θ;并将△x,△y,△z,△ψ,△θ作为初始化值;步骤2、获取当前时刻UUV状态:通过UUV自身的传感器得到当前时刻状态:u、v、w分别为纵向、横向和垂向速度,p、q、r分别为横摇角、纵摇角、艏摇角速度,ξ、η、ζ分别为UUV相对于固定坐标系的位置,<img file="FDA0000929603720000011.GIF" wi="54" he="47" />θ、ψ为横摇角、纵摇角、艏摇角(rad);步骤3、构建误差预测模型,并计算局部时刻预测误差动态方程的系统矩阵Ω<sub>k</sub>和局部时刻状态预测误差<img file="FDA0000929603720000012.GIF" wi="131" he="70" />利用UUV六自由度动力学方程和运动学方程构造动态方程:<maths num="0001"><math><![CDATA[<mrow><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>f</mi><mrow><mo>(</mo><mi>x</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>,</mo><mi>&tau;</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>,</mo><mi>&omega;</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000929603720000013.GIF" wi="533" he="79" /></maths>y(t)=h(x(t),τ(t))式中,x(t)是UUV状态向量,y(t)是输出向量,τ(t)是UUV控制输入向量,ω(t)是干扰向量;<img file="FDA0000929603720000014.GIF" wi="97" he="71" />为x(t)的一阶导数;t表示时间;x(t)=[u(t) v(t) w(t) p(t) q(t) r(t)]<sup>T</sup><img file="FDA0000929603720000015.GIF" wi="987" he="89" />τ(t)=[X<sub>prop</sub>(t) Y<sub>prop</sub>(t) Z<sub>prop</sub>(t) K<sub>prop</sub>(t) M<sub>prop</sub>(t) N<sub>prop</sub>(t)]<sup>T</sup>其中,X<sub>prop</sub>,Y<sub>prop</sub>,Z<sub>prop</sub>为UUV受到的纵向、横向、垂向的作用力,K<sub>prop</sub>,M<sub>prop</sub>,N<sub>prop</sub>为UUV受到的纵向、横向、垂向作用力的力矩;u(t)、v(t)、w(t)、p(t)、q(t)、r(t)、ξ(t)、η(t)、ζ(t)、<img file="FDA0000929603720000016.GIF" wi="124" he="71" />θ(t)、ψ(t)、X<sub>prop</sub>(t)、Y<sub>prop</sub>(t)、Z<sub>prop</sub>(t)、K<sub>prop</sub>(t)、M<sub>prop</sub>(t)、N<sub>prop</sub>(t)均表示对应参数为时间t的函数;定义UUV期望状态x<sub>d</sub>(t)=[u<sub>d</sub>(t) v<sub>d</sub>(t) w<sub>d</sub>(t) p<sub>d</sub>(t) q<sub>d</sub>(t) r<sub>d</sub>(t)]<sup>T</sup><img file="FDA0000929603720000017.GIF" wi="1131" he="83" />其中,所有带角标d的参数均表示对应参数的期望值;则实际和期望之间误差表示为<maths num="0002"><math><![CDATA[<mrow><msub><mi>x</mi><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>x</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>x</mi><mi>d</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mi>u</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>u</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo></mtd></mtr><mtr><mtd><mi>v</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>v</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo></mtd></mtr><mtr><mtd><mi>w</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>w</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo></mtd></mtr><mtr><mtd><mi>p</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>p</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo></mtd></mtr><mtr><mtd><mi>q</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>q</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo></mtd></mtr><mtr><mtd><mi>r</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>r</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>]]></math><img file="FDA0000929603720000021.GIF" wi="774" he="455" /></maths><img file="FDA0000929603720000022.GIF" wi="781" he="454" />ψ(t)‑ψ<sub>d</sub>(t)=△ψ,θ(t)‑θ<sub>d</sub>(t)=△θ,因此<img file="FDA0000929603720000023.GIF" wi="454" he="454" />建立误差动态方程<maths num="0003"><math><![CDATA[<mrow><msub><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>A</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mi>x</mi><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>B</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mi>&omega;</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>B</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mi>&tau;</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000929603720000024.GIF" wi="859" he="71" /></maths>y<sub>e</sub>(t)=C(t)x<sub>e</sub>(t)+D(t)τ(t)          (1)式中,A(t)、B<sub>1</sub>(t)、B<sub>2</sub>(t)、C(t)、D(t)均为系数矩阵;方程(1)的系统矩阵为:<maths num="0004"><math><![CDATA[<mrow><mfenced open = "(" close = ")"><mtable><mtr><mtd><mrow><mi>A</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>B</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>B</mi><mi>2</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><mfrac><mrow><mo>&part;</mo><mi>f</mi></mrow><mrow><mo>&part;</mo><mi>x</mi></mrow></mfrac></mtd><mtd><mfrac><mrow><mo>&part;</mo><mi>f</mi></mrow><mrow><mo>&part;</mo><mi>&omega;</mi></mrow></mfrac></mtd><mtd><mfrac><mrow><mo>&part;</mo><mi>f</mi></mrow><mrow><mo>&part;</mo><mi>&tau;</mi></mrow></mfrac></mtd></mtr></mtable></mfenced><msub><mo>|</mo><mrow><mo>(</mo><msub><mi>x</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>,</mo><mn>0</mn><mo>,</mo><mi>&tau;</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow></msub></mrow>]]></math><img file="FDA0000929603720000025.GIF" wi="1142" he="162" /></maths><maths num="0005"><math><![CDATA[<mrow><mfenced open = "(" close = ")"><mtable><mtr><mtd><mrow><mi>C</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mi>D</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><mfrac><mrow><mo>&part;</mo><mi>h</mi></mrow><mrow><mo>&part;</mo><mi>x</mi></mrow></mfrac></mtd><mtd><mfrac><mrow><mo>&part;</mo><mi>h</mi></mrow><mrow><mo>&part;</mo><mi>&tau;</mi></mrow></mfrac></mtd></mtr></mtable></mfenced><msub><mo>|</mo><mrow><mo>(</mo><msub><mi>x</mi><mi>d</mi></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>,</mo><mi>&tau;</mi><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow></msub></mrow>]]></math><img file="FDA0000929603720000026.GIF" wi="819" he="159" /></maths>在局部时刻[t<sub>k</sub>,t<sub>k+1</sub>)的预测误差动态方程为:<maths num="0006"><math><![CDATA[<mrow><msub><mover><mover><mi>x</mi><mo>&OverBar;</mo></mover><mo>&CenterDot;</mo></mover><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>A</mi><mi>k</mi></msub><msub><mover><mi>x</mi><mo>&OverBar;</mo></mover><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>B</mi><mrow><mn>1</mn><mi>k</mi></mrow></msub><mi>&omega;</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>B</mi><mrow><mn>2</mn><mi>k</mi></mrow></msub><mi>&tau;</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000929603720000031.GIF" wi="702" he="71" /></maths><maths num="0007"><math><![CDATA[<mrow><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>C</mi><mi>k</mi></msub><msub><mover><mi>x</mi><mo>&OverBar;</mo></mover><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>D</mi><mi>k</mi></msub><mi>&tau;</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000929603720000032.GIF" wi="1213" he="79" /></maths>式中,所有带角标k参数的均表示局部时刻的对应参数,<img file="FDA0000929603720000033.GIF" wi="279" he="76" />表示x<sub>e</sub>(t)、y<sub>e</sub>(t)局部时刻的预测值;方程(2)的系统矩阵<maths num="0008"><math><![CDATA[<mrow><mfenced open = "(" close = ")"><mtable><mtr><mtd><msub><mi>A</mi><mi>k</mi></msub></mtd><mtd><msub><mi>B</mi><mrow><mn>1</mn><mi>k</mi></mrow></msub></mtd><mtd><msub><mi>B</mi><mrow><mn>2</mn><mi>k</mi></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>C</mi><mi>k</mi></msub></mtd><mtd><msub><mi>D</mi><mi>k</mi></msub></mtd><mtd><mn>0</mn></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = "(" close = ")"><mtable><mtr><mtd><mrow><mi>A</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>B</mi><mn>1</mn></msub><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>B</mi><mn>2</mn></msub><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mi>C</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mi>D</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow></mtd><mtd><mn>0</mn></mtd></mtr></mtable></mfenced><mo>=</mo><msub><mi>&Omega;</mi><mi>k</mi></msub></mrow>]]></math><img file="FDA0000929603720000034.GIF" wi="998" he="151" /></maths>步骤4、针对滚动优化问题<img file="FDA0000929603720000035.GIF" wi="450" he="95" />在约束条件下进行滚动优化,求解优化问题,求可行解(γ<sub>k</sub>,Q<sub>k</sub>,Y<sub>k</sub>);步骤5、针对优化问题有可行解(γ<sub>k</sub>,Q<sub>k</sub>,Y<sub>k</sub>),根据下式计算控制输入向量τ(t),<maths num="0009"><math><![CDATA[<mrow><msub><mi>K</mi><mi>k</mi></msub><mo>=</mo><msub><mi>Y</mi><mi>k</mi></msub><msubsup><mi>Q</mi><mi>k</mi><mrow><mo>-</mo><mn>1</mn></mrow></msubsup></mrow>]]></math><img file="FDA0000929603720000036.GIF" wi="220" he="63" /></maths><maths num="0010"><math><![CDATA[<mrow><mi>&tau;</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>K</mi><mi>k</mi></msub><msub><mover><mi>x</mi><mo>&OverBar;</mo></mover><mi>e</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>,</mo><mo>&ForAll;</mo><mi>t</mi><mo>&Element;</mo><mo>&lsqb;</mo><msub><mi>t</mi><mi>k</mi></msub><mo>,</mo><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo><mo>,</mo><mi>k</mi><mo>&GreaterEqual;</mo><mn>0</mn></mrow>]]></math><img file="FDA0000929603720000037.GIF" wi="701" he="71" /></maths>将控制输入向量作用于方程(2)的系统,然后令k=k+1,返回步骤2更新预测模型、重复滚动优化过程,直至实现UUV对线控位回收。
地址 150001 黑龙江省哈尔滨市南岗区南通大街145号