提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
前言
一、问题描述
二、反步法的简单介绍
三、AUV中的反步法
1.纵向速度
2.艏向角
前言
本文简单介绍AUV控制中常见反步法的使用。
提示:以下是本篇文章正文内容,下面案例可供参考
一、问题描述
在AUV的运动控制中,主要包括点跟踪、路径跟踪和轨迹跟踪。为了使AUV达到一定的速度或是以一个期望的姿态运动,那么就应给到执行机构合适的控制输入信息,由此产生控制力来驱动AUV的运动。如何根据我们所期望的AUV姿态来设计控制器即问题所在,但是我们的期望值往往是一个位置、一条直线、速度值或是角度值,将其转化为控制力和控制力矩是我们控制器需要做的事。
二、反步法的简单介绍
反步法是一种典型的递归设计方法,从系统的最后一级进行设计,使其渐进稳定。后对包含最后一级的前一子系统进行设计,也通过李氏方法使其达到渐进稳定。以此进行迭代推导,并使整个闭环系统达到渐近稳定,同时可以计算出系统的控制输入。
三、AUV中的反步法
1.纵向速度
在AUV的控制器的设计过程中,往往都进行解耦处理,这里我们以纵向速度为例利用反步法进行纵向推力设计。
首先我们假设期望我们AUV的纵向速度为ud。若AUV的初始速度为0,由此就产生了速度误差,倘若我们能使AUV的纵向速度误差变为零,就实现了对AUV 的纵向速度的控制。
如此,选取李雅普诺夫能量函数:
求一阶导,可以得到:
若能使就可以使速度的误差整定到零。
在一阶导的公式中涉及到了AUV速度的一阶导数,用AUV的动力学方程进行替换,假设纵向推力的动力学方程简单表示为:
带入后李雅普诺夫函数的一阶导重新表示为:
现在若能选择合适的纵向推力F,使就实现了对速度的控制。选取的纵向推力F为:
其中增益K大于零。上式即为根据反步法所设计的控制器。
2.艏向角
由纵向速度的反步法可知,仅进行了一次反步的操作,而对于艏向角来说,要进行两次反步的操作。反步法的最终目的是构造控制率来使李雅普诺夫函数小于零,而要得到控制力或控制力矩,就要求在李雅普诺夫函数的一节导中包含速度的一阶导,如此才能带入动力学方程。
对于艏向角而言,和纵向速度类似,先设置期望的艏向角,得到误差值:
取第一个李氏函数:
第一次反步操作:
取虚拟控制率为:
由此得到一个虚拟的角速度,满足这个虚拟的角速度就可以满足艏向角的趋近,此时的虚拟角速度就是我们的期望角速度。
其导数为:
进一步根据角速度的误差取第二个李氏函数:
进行反步操作:
得到的第二个李氏函数的导数中包含角速度的一阶导,进而可以带入动力学方程,使满足李氏函数一阶导小于零得到转艏力矩。一般简化的艏向角速度的动力学方程的表达式为:
为满足李氏函数导数小于零,则设计:
带入得到最终的控制率为:
由以上可知对于艏向角度的控制器设计运用了两次反步,而纵向速度只采用了一次,这是由想要控制的量和动力学方程中速度一阶导的阶数差决定的。