💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
💥1 概述
基于滑模控制(SMC)的自主水下机器人(AUV)控制器研究
摘要:本文聚焦于基于滑模控制(Sliding Mode Control, SMC)的自主水下机器人(Autonomous Underwater Vehicle, AUV)控制器设计。首先阐述AUV在海洋探索等领域的广泛应用及其面临的复杂水下环境挑战,分析传统控制方法在应对AUV非线性、强耦合及外部扰动时的局限性。接着详细介绍滑模控制的基本原理、设计步骤和稳定性判据,并针对AUV的动力学模型,设计适用于其轨迹跟踪和姿态控制的滑模控制器。通过理论分析和仿真实验,验证所设计控制器在提高AUV控制精度、鲁棒性和稳定性方面的有效性。最后对滑模控制在AUV控制领域的发展趋势进行展望,为AUV的高性能控制提供理论支持和实践参考。
关键词:滑模控制;自主水下机器人;控制器设计;轨迹跟踪;姿态控制
一、引言
随着人类对海洋认知和利用需求的不断增长,自主水下机器人(AUV)作为一种能够在水下独立执行任务的智能平台,在海洋科学研究、水下资源勘探、水下工程作业以及军事侦察等领域发挥着越来越重要的作用。AUV凭借其自主性强、作业灵活等特点,能够完成海洋环境监测、海底地形测绘、水下目标识别等复杂任务,为人类深入探索和开发海洋提供了有力工具。
然而,AUV在水下运行面临诸多严峻挑战。水介质的阻力、浮力以及水流扰动对AUV的运动产生显著影响,且这些影响往往是非线性和时变的。同时,AUV自身的动力学模型通常具有强非线性、多输入多输出(MIMO)以及各自由度间的高度耦合特性。此外,由于水下通信的限制,AUV通常需要依靠其搭载的传感器独立完成导航、定位和控制任务,这对控制系统的鲁棒性和自适应性提出了极高要求。
传统的线性控制方法,如PID控制,在面对AUV的强非线性、不确定性和外部扰动时,往往难以取得理想的控制效果。例如,PID控制难以处理AUV模型参数的变化和复杂水流扰动带来的影响,导致控制精度下降,甚至无法保证系统的稳定性。因此,研究和开发高性能的非线性控制策略是实现AUV高精度、高鲁棒性控制的关键。
滑模控制作为一种特殊的非线性控制方法,以其对模型不确定性和外部扰动的强鲁棒性而受到广泛关注。滑模控制的核心思想是设计一个滑模面,并通过控制作用使系统的状态轨迹在有限时间内收敛到滑模面上,并在滑模面上滑动,从而实现对系统的渐近稳定控制。一旦系统进入滑模态,其动态特性将主要由滑模面方程决定,与系统参数的变化和外部扰动无关。这使得滑模控制在AUV控制领域具有巨大的应用潜力,能够有效克服AUV面临的复杂环境挑战,提高其控制性能。
二、AUV动力学模型
在设计基于滑模控制的AUV控制器之前,需要建立精确的AUV动力学模型。AUV在水下通常被视为一个刚体,其运动可分为六个自由度:纵荡(surge)、横荡(sway)、垂荡(heave)、横摇(roll)、纵摇(pitch)和艏摇(yaw)。AUV的动力学模型通常采用Fossen提出的SNAME(Society of Naval Architects and Marine Engineers)标准,将运动分解为地球固定坐标系(earth-fixed frame)和本体坐标系(body-fixed frame)下的描述。
在地球固定坐标系中,AUV的位置和姿态可以用位置向量和姿态角向量表示。位置向量描述了AUV在地球固定坐标系中的三维位置坐标,姿态角向量则描述了AUV相对于地球固定坐标系的旋转角度,包括横摇角、纵摇角和艏摇角。在本体坐标系中,AUV的运动可以用速度向量和角速度向量表示。速度向量描述了AUV在本体坐标系中的三个线速度分量,角速度向量描述了AUV绕本体坐标系三个轴的旋转角速度分量。
AUV的动力学方程可以表示为:
其中,η是AUV在地球固定坐标系下的位姿向量,ν是AUV在本体坐标系下的速度向量,M是惯性矩阵,包括附加质量;C(ν)是向心力和科氏力矩阵,包括附加质量产生的向心力和科氏力;D(ν)是水动力阻力和升力力矩矩阵;g(η)是恢复力和力矩向量;τ是在本体坐标系下的控制器输入向量;J(η)是地球固定坐标系到本体坐标系的变换矩阵。
该动力学模型充分考虑了AUV在水下运动时受到的各种力的作用,包括惯性力、向心力和科氏力、水动力阻力以及恢复力等,能够准确描述AUV的动态特性,为后续滑模控制器的设计提供了理论基础。
三、滑模控制基本原理
(一)滑模面设计
滑模面设计是滑模控制的关键环节。滑模面是一个在状态空间中定义的超平面,当系统状态在滑模面上时,系统具有期望的动态特性,例如稳定性和良好的跟踪性能。滑模面应包含所有跟踪误差信息,以确保系统状态能够沿着滑模面收敛到期望状态。
对于AUV的轨迹跟踪控制问题,通常可以设计一个滑模面来描述期望轨迹与实际轨迹之间的误差。例如,设AUV的期望位置为 ηd,实际位置为 η,则位置误差向量为 e=η−ηd。可以设计一个滑模面 s=e+λe˙,其中 λ 是一个正的设计参数,用于调整滑模面的斜率。该滑模面不仅考虑了位置误差,还考虑了速度误差,能够使系统状态更快地收敛到滑模面并保持滑动。
(二)控制律设计
控制律的设计目标是确保系统状态能够在有限时间内到达滑模面,并在其上保持滑动。这通常通过设计一个包含等效控制和切换控制两部分的控制律来实现。
等效控制是当系统状态在滑模面上时,使系统保持滑动运动所需的控制输入。通过对滑模面方程求导,并将系统动力学方程代入,可以求解出等效控制律。例如,对上述滑模面 s=e+λe˙ 求导得 s˙=e˙+λe¨。将AUV的动力学方程代入,并令 s˙=0,可以求解出等效控制律 τeq。
切换控制是为了克服系统的不确定性和外部扰动,使系统状态能够快速到达滑模面而设计的控制部分。切换控制通常采用符号函数来实现,例如 τsw=−k⋅sgn(s),其中 k 是一个正的设计参数,用于调整切换控制的强度。符号函数 sgn(s) 在 s>0 时取值为 1,在 s<0 时取值为 −1,在 s=0 时取值为 0。通过引入切换控制,当系统状态偏离滑模面时,能够产生一个反向的控制作用,使系统状态迅速回到滑模面上。
完整的控制律为 τ=τeq+τsw。该控制律结合了等效控制和切换控制的优点,既能够保证系统在滑模面上的稳定滑动,又能够克服系统的不确定性和外部扰动,使系统状态快速收敛到期望状态。
(三)稳定性判据
为了确保滑模控制系统的稳定性,需要采用适当的稳定性判据进行分析。常用的稳定性判据包括李雅普诺夫稳定性理论。
构造一个李雅普诺夫函数 V=21sTs,其中 s 是滑模面向量。对李雅普诺夫函数求导得 V˙=sTs˙。将控制律代入系统动力学方程,并结合滑模面方程,可以得到 s˙ 的表达式。如果能够证明 V˙<0,则说明李雅普诺夫函数 V 是递减的,系统状态将逐渐收敛到滑模面,并在滑模面上保持滑动,从而实现系统的渐近稳定控制。
四、基于SMC的AUV控制器设计
(一)轨迹跟踪控制器设计
以AUV的轨迹跟踪控制为例,设计基于滑模控制的轨迹跟踪控制器。假设AUV的期望轨迹 ηd(t) 是一个已知的光滑函数,定义位置误差向量 e=η−ηd,速度误差向量 e˙=η˙−η˙d。
设计滑模面 s=e+λe˙,其中 λ 是一个正的设计参数。对滑模面求导得:
(二)姿态控制器设计
除了轨迹跟踪控制,AUV的姿态控制也是其安全、稳定运行的关键。姿态控制的目标是使AUV的横摇角、纵摇角和艏摇角保持在期望的范围内,以避免AUV发生倾覆或偏离预定航向。
对滑模面求导并结合AUV的姿态动力学方程,设计等效控制律和切换控制律,得到完整的姿态控制律。通过该控制律,AUV能够快速调整姿态,使其接近并保持在期望姿态,提高AUV在水下作业的稳定性和安全性。
五、仿真实验与分析
为了验证所设计的基于滑模控制的AUV控制器的有效性,通过Matlab/Simulink进行建模仿真实验。在仿真实验中,考虑AUV的六自由度动力学模型,设置不同的期望轨迹和姿态,并引入水流扰动和模型参数不确定性等外部干扰因素。
(一)轨迹跟踪仿真实验
设置AUV的期望轨迹为一条螺旋线轨迹,通过仿真实验观察AUV在实际控制下的轨迹跟踪效果。实验结果表明,基于滑模控制的AUV控制器能够使AUV快速、准确地跟踪期望轨迹,轨迹跟踪误差在较小范围内波动。在引入水流扰动和模型参数不确定性后,控制器仍然能够保持较好的跟踪性能,说明滑模控制对外部扰动和模型不确定性具有强鲁棒性。
(二)姿态控制仿真实验
设置AUV的期望姿态为水平姿态(横摇角、纵摇角均为 0 度),通过仿真实验观察AUV在实际控制下的姿态调整效果。实验结果显示,AUV能够在较短时间内将姿态调整到期望姿态,并在存在外部干扰的情况下保持姿态稳定。与传统的PID控制器相比,基于滑模控制的姿态控制器具有更快的响应速度和更好的抗干扰能力。
(三)抖振抑制效果分析
经典滑模控制存在抖振问题,抖振会导致控制输入的不连续,引发机械振动、能量损耗,甚至可能损坏执行器。为了抑制抖振,在控制律设计中采用了饱和函数代替符号函数的方法。通过仿真实验对比使用符号函数和饱和函数时的控制输入曲线,发现使用饱和函数能够有效减小抖振,同时保持滑模控制的鲁棒性。
六、发展趋势与展望
(一)与其他先进控制方法结合
未来,滑模控制将进一步与其他先进控制方法相结合,以发挥各自优势,提高AUV的控制性能。例如,与神经网络结合,利用神经网络的自学习能力估计未知非线性项或扰动,提高控制器对复杂环境的适应性;与预测控制结合,利用预测控制的优化能力,实现对未来状态的预测和控制,提高系统的动态性能;与有限时间控制结合,实现更快的收敛速度,缩短AUV的调整时间。
(二)智能化发展
随着人工智能技术的不断发展,滑模控制将向智能化方向发展。结合深度学习、强化学习等AI技术,实现更加智能化的自适应滑模控制。通过深度学习算法对大量的实验数据进行分析和学习,自动调整控制器参数,使控制器能够更好地应对未知且变化的海洋环境。强化学习则可以使AUV在与环境的交互中不断学习和优化控制策略,提高其自主决策能力和任务执行效率。
(三)多AUV协同控制
随着AUV任务复杂性的增加,多AUV协同作业成为趋势。滑模控制将被应用于多AUV的协同控制和编队控制中。通过设计分布式滑模控制器,使AUV集群能够保持特定的队形,并共同完成任务。在多AUV协同控制中,滑模控制可以进一步增强编队控制的鲁棒性,使其在通信延迟、AUV个体故障等情况下仍能保持稳定,提高多AUV系统的可靠性和任务执行能力。
(四)工程应用优化
在工程应用方面,未来将进一步加强滑模控制在实际AUV系统中的应用研究。优化控制器的硬件实现,降低计算复杂度,提高控制器的实时性。同时,结合声学、视觉、惯性导航等多种传感器信息,利用滑模控制设计更精确、更鲁棒的AUV导航与控制系统,提高AUV在复杂水下环境中的感知和决策能力,推动AUV在海洋领域的广泛应用和技术发展。
七、结论
本文围绕基于滑模控制的AUV控制器展开研究,深入分析了AUV的动力学模型和滑模控制的基本原理,设计了适用于AUV轨迹跟踪和姿态控制的滑模控制器。通过理论分析和仿真实验,验证了所设计控制器在提高AUV控制精度、鲁棒性和稳定性方面的有效性。仿真结果表明,基于滑模控制的AUV控制器能够有效克服水下干扰和AUV自身的非线性、强耦合特性,实现精确的轨迹跟踪和稳定的姿态控制。
尽管基于滑模控制的AUV控制器研究取得了一定的成果,但仍有广阔的研究空间和发展前景。未来,随着与其他先进控制方法的结合、智能化发展、多AUV协同控制以及工程应用优化等方面的深入研究,滑模控制将在AUV控制领域发挥更加重要的作用,为人类深入探索和利用海洋提供强有力的技术支撑。
📚2 运行结果
部分代码:
%% #1. Analysis of First order system
k = 5;
tc = 10;
u = 2;
s = tf('s');
G = k/(tc*s+1);
sys = u * G;
figure('Name','Step response')
step(sys);%step response
figure('Name','Impulse response')
impulse(sys);%impulse response
figure('Name','Bode plot')
bode(G);%Bode plot
figure('Name','Root Locus')
rlocus(sys)%root locus
%% #2. Analysis of Second order system
k = 1;
wn = 10;
zeta = 0.2;
s = tf('s');
sys1 = k*wn^2/(s^2 + 2*zeta*wn*s + wn^2);
figure('Name','Pole Zero map')
pzmap(sys1);
axis([-3 1 -15 15]);
figure('Name','Step response')
step(sys1),%step response
axis([0 3 0 2])
🎉3参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]王一云,严卫生,高剑,等.基于滑模变结构控制滤波的水下机器人水平面轨迹跟踪控制[J].计算机测量与控制, 2013, 21(2):4.DOI:10.3969/j.issn.1671-4598.2013.02.031.
[2]肖涛.基于Backstepping方法的水下机器人自适应滑模控制技术研究[D].哈尔滨工程大学[2024-04-08].DOI:10.7666/d.y1489305.
[3]董升亮.自主式水下机器人的滑模变结构控制研究与仿真[D].中国海洋大学[2024-04-08].