基于ESO的水下机器人模糊PID运动控制方法与流程

文档序号:17497512发布日期:2019-04-23 21:44阅读:568来源:国知局
基于ESO的水下机器人模糊PID运动控制方法与流程

本发明涉及一种基于eso的水下航行器模糊pid运动控制方法,属于模糊逻辑控制技术领域。



背景技术:

自主水下航行器(auv)是为科学家和研究人员提供简单、低成本、中长期、收集环境数据的工具,方便科学家进行水下动植物调查、危险水域作业、海底测绘、环境监测等任务。水下机器人具有结构的特殊性,以及工作环境的复杂性,这使得auv控制参数在不同工作环境下的选择十分困难。因此控制器本身应具有在不同工作环境下参数的自适应性和鲁棒性,来抵抗变化和不可预测的环境扰动。

如浙江工业大学提出的cn201510536241.2专利申请、以及江苏科技大学提出的cn201710595475.3专利申请。在这些在先公开的技术方案中,均未能解决由于auv非线性动力学特性而导致其难以进行常用线性控制的问题。即在水下运动控制过程中,auv的动力特性、水动力系数的不确定性、以及海流和波浪引起的扰动,都会直接导致auv控制灵活性的下降,其控制参数调整能力将反映到auv姿态是否稳定、能否满足水下执行任务时rauv鲁棒性需求。

目前机器人控制参数自适应调整技术仍存在上述不足,而且在对外界环境干扰进行处理上仍然有需要改进的地方。

有鉴于此,特提出本专利申请。



技术实现要素:

本发明所述的基于eso的水下机器人模糊pid运动控制方法,其设计目的在于解决上述现有技术存在的问题而提出基于eso与pid模糊逻辑控制,以弥补现有的pid控制技术不能在复杂海洋环境下进行参数调整的不足,以及在外界环境干扰的情况下对水下航行器的运动姿态以及环境干扰的估计和补偿,最终实现水下航行器在复杂海洋环境下的运动姿态稳定。

为实现上述设计目的,所述的基于eso的水下机器人模糊pid运动控制方法,包括有以下阶段:

(1)信息获取与需求分析

通过搭载的传感器获取auv姿态信息以及深度信息,用户在岸基界面发送auv期望航向和深度信息以进行工作需求分析;

(2)系统状态预测和干扰补偿

auv端接收到用户需求信息后通过实时反馈的航向与深度信息,由eso进行系统状态预测以及干扰补偿操作;

(3)pid参数自调整与auv运动控制

模糊pid根据姿态信息的误差以及误差变化率调整pid系数,实现参数的自调整;

auv的垂直舵、水平舵根据控制器计算出的结果,实现auv的航向、俯仰角和深度的控制,满足auv在海洋环境下工作的任务需求。

如上述基本设计构思,本申请提出一种基于eso的模糊pid控制器(fpid+eso)来实现auv运动控制的快速性、稳定性和鲁棒性的方法。

本申请为提高auv的姿态与深度控制性能,在自抗扰控制器的核心控制元件---扩张状态观测器eso的基础上,将模糊控制与pid控制相结合。

传统的pid控制具有较简单的控制结构,易于操作,稳定性较好等优点而被广泛应用。但在实际生产过程中,由于系统的非线性和时变性;pid控制器的性能是可变,无法应对因环境变化而对pid参数提出更新的问题。而模糊控制器是一种将人的控制经验与策略融入到控制器中的控制方式;不需要精确的数学模型;具有抗干扰能力强,响应速度快,以及可对系统参数变化进行及时处理的特点。从提高其工作性能的角度出发,模糊控制具有自调整,修改和改进模糊控制器参数或规则的特点,使系统具有自主性和自适应的特点,保证控制系统性能恒定,实现更好的控制效果。

但是,常规的模糊控制的控制规则表是通过实验研究总结出来的,通过系统控制量的误差及误差变化率来查表得到相应的控制输出实现系统控制;这种控制方式不能在环境变化等因素情况下改变控制规则,难以保证控制效果;所以常规模糊控制作用于水下机器人在复杂环境、干扰大、存在滞后等情况下的运动过程时,再对被控对象进行控制时,会出现被控对象响应速度慢,超调量过大,甚至出现振荡等现象。因此提出自适应模糊pid(fpid)控制实现在线修正控制参数,从而使水下机器人可以适应复杂的海洋环境。

自适应模糊pid控制器虽然实现了在不同海洋环境下的参数调整问题,但是对外界环境干扰并未进行控制,因此本发明在进行模糊pid参数调整的同时,也通过扩张状态观测器(eso)实时进行干扰预估并将扰动估计值补偿到系统从而解决外界扰动问题。

针对上述方法中的阶段(2),可采取以下进一步细化与优选措施:

eso通过实时反馈的航向、俯仰和深度信息进行系统状态预测以及干扰估计;

通过eso预测得到auv姿态变化信息后,反馈到auv控制器输入端与期望目标值进行比较而得到姿态误差(e);

eso预测得到误差变化量(z2),反馈给系统并生成反馈后的误差变化率(ec)。

针对上述方法中的阶段(3),可采取以下进一步细化与优选措施:

模糊pid控制器根据姿态误差(e)和误差变化率(ec),通过模糊推理计算调整pid系数以实现pid参数的自调整;

auv得到调整后的参数,经过pid计算得到auv垂直舵、水平舵角的期望值u0(t);

eso进行干扰估计对auv的控制量进行控制补偿(z3/b),得到auv的实际控制量u(t)。

综上所述,本申请具有的优点与有益效果是:

1、通过eso对auv进行姿态信息以及干扰估计以及预测补偿,能够提高auv的抗干扰能力;

2、模糊逻辑控制通过eso进行的系统状态估计以及干扰补偿反馈、与auv实际的姿态信息与控制量的变化情况实现pid参数的自调整,从而提高了auv控制系统的稳定性以及抗干扰能力。

3、真正实现了auv运动控制的快速性、稳定性和鲁棒性。

附图说明

图1是本申请所述方法的控制系统结构框图;

图2是auv姿态控制方法的流程示意图;

图3是基于pid、模糊pid与本申请提出的算法(fpid+eso)在无外界环境干扰下航向控制效果的对比图;

图4是基于pid、模糊pid与本申请提出的算法(fpid+eso)在海流干扰环境干扰下航向控制效果的对比图;

图5是基于pid、模糊pid与本申请提出的算法(fpid+eso)在无外界环境干扰下俯仰控制效果的对比图;

图6是基于pid、模糊pid与本申请提出的算法(fpid+eso)在海流干扰环境干扰下俯仰控制效果的对比图。

具体实施方式

下面结合附图和实施例对本申请作进一步说明。

实施例1,如图1所示,为实现所述基于eso的水下机器人模糊pid运动控制方法,提出了如下运动控制系统:

经典pid控制器;以及,

与模糊逻辑控制集合的模糊控制模块,通过auv实时的姿态信息进行pid控制参数的调整,提高控制参数在不同环境下的适应性,提高auv的控制稳定性;

扩张状态观测器eso,eso通过auv反馈的航向或俯仰信息以及auv控制信息进行姿态观测以及干扰估计,对auv进行姿态反馈补偿以及控制补偿。即通过eso预测的姿态误差以及误差变化率的补偿量反馈给系统输入以及干扰预测补偿量反馈到控制输出端,从而改善模糊pid控制器的控制效果,使auv对环境干扰进行处理,具有更高的抗干扰能力,实现姿态稳定性控制。

如图2所示,基于eso的水下机器人模糊pid运动控制方法,通过auv搭载的传感器获得航向角、俯仰角以及深度信息,扩张状态观测器通过获得的姿态信息,进行姿态和干扰估计对auv进行动态补偿,auv通过期望航向和期望俯仰等控制输入设定与反馈信息作差,获得eso预测补偿后的姿态误差及误差变化率;模糊pid通过误差及误差变化率进行模糊推理进行pid参数调整,最后pid控制器根据实时调整得到的pid参数计算得到控制器输出同时eso计算得到的干扰补偿值补偿到pid控制器的输出量上最终得到auv的控制输出量。

所述方法包括有以下阶段:

(1)信息获取与需求分析

auv通过搭载的ahrs等传感器获取auv航向、俯仰及深度等信息;用户在岸基界面发送auv期望航向和深度信息以进行工作需求分析;

(2)系统状态预测和干扰补偿

auv端接收到用户需求信息后通过实时反馈的航向与深度信息,由eso进行系统状态预测以及干扰补偿操作。具体地,分为以下实施步骤:

步骤2.1,

eso对auv反馈获得的航向、俯仰和深度信息进行姿态状态观测和干扰补偿操作,将姿态观测值与输入的期望姿态(航向或俯仰)作差得到姿态误差e,将eso观测的微分值反馈到系统姿态误差变化率上,得到系统姿态误差变化率ec;其中,本发明采用的是三阶扩展状态观测器其表达式为:

e1=z1-y;

式中:e1为eso的系统观测误差;z1,z2,z3为扩张状态观测器输出;如图1所示,z1为eso进行姿态观测值,z2为eso观测得到的姿态误差变化率的观测值,z3为eso进行干扰观测对系统控制输入的补偿值;δ为线性区间;β1,β2,β3为扩展状态观测器输出误差权重因子;b为补偿系数,本发明中b取值为0.01;α1和α2通常取为0.5和0.25;fal(x,α,δ)函数表达式如下:

步骤2.2,

由上可得系统姿态误差e=r(t)-z1-y(t);系统姿态误差变化率

(3)pid参数自调整与auv运动控制

模糊pid根据姿态信息的误差以及误差变化率调整pid系数,实现参数的自调整;

auv的垂直舵、水平舵根据控制器计算出的结果,实现auv的航向、俯仰角和深度的控制,满足auv在海洋环境下工作的任务需求。具体地,分为以下步骤:

步骤3.1,

系统输入量和输出量的模糊化处理;将航向(俯仰)误差e和航向(俯仰)误差变化率ec模糊转化为相匹配的语言值。e和ec为控制器的输入量,模糊化得到{负大,负中,负小,零,正小,正中,正大}的模糊子集,对应记录为{nb,nm,ns,zo,ps,pm,pb}在发明中,航向(俯仰)控制误差在(-2π,2π)范围内,航向(俯仰)控制误差变化率在(-2,2)范围内,将姿态偏差e和误差变化率ec均量化为{-3,-2,-1,0,1,2,3}。类似地,将输出变量δkp,δki,δkd,模糊化为模糊子集{负大,负中,负小,零,正小,正中,正大},记为{nb,nm,ns,zo,ps,pm,pb},量化到{-3,-2,-1,0,1,2,3}的论域范围内。

步骤3.2,

模糊控制规则的建立,通过专家经验和实验获得规律建立模糊规则库,实现存在环境变化时pid参数的自调整。考虑到系统的稳定性,响应速度,超调量和稳定误差等方面,在控制过程中kp,ki,kd的调整规则如下:

(1)当误差|e|较大时,为使系统具有较好的快速跟踪性能,无论误差的变化趋势如何均应取较大的kp和较小的kd,同时为避免系统响应出现较大超调,应对积分作用加以限制,取较小的ki值;

(2)当误差|e|处于中等大小时,为使系统响应具有较小的超调,kp应取小些,同时为保证系统的响应速度,ki和kd大小要适中,其中kd的取值对系统响应的影响较大;

(3)当误差|e|较小时,为保证系统具有较好的稳态性能,kp和ki应取的大些,同时为避免系统在设定值附近出现振荡,并考虑系统的抗干扰性能,当|ec|较小时,kd可以取大一些;当|ec|较大时,kd应取小些。

pid参数的整定必须同时考虑到在不同的情况下3个控制参数对控制效果的影响以及它们的相互作用。根据试验总结的专家经验以及大量的仿真实验,可以得到以下模糊控制规则表,如表1所示:

表1kp,ki,kd参数控制调整规则

步骤3.3,

模糊推理,由表1可得模糊规则,ifeisa,andecisb,thenkpisc,kiisd,kdise等49条,本文采用mandani运算方法,则总的模糊关系为:式中ri代表控制系统的每一条模糊规则。

步骤3.4,

去模糊处理,由于模糊控制推理结果均为模糊值,它不能直接应用于受控对象,因此需要对其进行去模糊化,以将其转换为执行器可以执行的精确量。本发明中采用重心法进行解模糊运算,其计算公式如下:式中,z*为精确值,为隶属度,ωj为论域。其中隶属度是由隶属函数计算得到,本文采用三角隶属函数计算隶属度。

步骤3.5,

经过模糊化,模糊推理以及去模糊过程,最终kp,ki,kd;具体调整公式如下:

kp=k′p+{e,ec}*kp=k′p+δkp

ki=k′i+{e,ec}*ki=k′i+δki

kd=k′d+{e,ec}*kd=k′d+δkd

步骤3.6,

经过模糊pid控制器计算后输出得到auv控制舵角u0(t),此时在u0(t)中加入eso进行干扰估计计算得到的系统扰动的补偿量z3/b,最终得到系统最终的控制输出量u(t),即auv进行姿态控制时所需的期望舵角值。计算公式如下:

u(t)=u0(t)-z3/b;

matlab实验仿真结果见图3、图4、图5和图6所示。结果表明本发明在auv的姿态控制上具有更好的控制稳定性,以及更好的抗干扰能力。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

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