基于自抗扰控制器的柴油机调速算法
2018-12-10王毓源张善星王润之
王毓源,张善星,王润之
(1.内燃机可靠性国家重点实验室,山东 潍坊 261061;2.潍柴动力股份有限公司,山东 潍坊 261061;3.哈尔滨工程大学 动力与能源工程学院,黑龙江 哈尔滨 150001)
柴油机具有非线性和时变性的特点,由于工作环境的变化,以及需在变速、变负荷、变环境温度等复杂工况下工作,导致柴油机的状态参数发生变化[1]。为了保证柴油机在各种工况下仍能保持良好的运行状态,就必须对柴油机的状态参数进行调整[2]。目前柴油机转速的控制普遍采用比例-积分-微分(proportion-integral-derivative,PID)控制器。PID控制器调速算法的核心在于依赖偏差来消除偏差,因计算过程简单且易于编程,PID控制技术在工业中得到广泛应用,但随着工业控制中对系统控制性能要求的提高,传统PID算法的一些固有缺陷也逐渐显现。
自抗扰控制器通过在传统PID结构的基础上加入“安排过渡过程”,合理地“提取微分信号”,同时采用对误差信号的“非线性组合”处理方式以改善常规PID控制器的性能。利用跟踪微分器(tracking-differentiator,TD)、扩张状态观测器(extended state observer, ESO)和非线性状态误差反馈(nonlinear state error feedback, NLSEF)构造出来的自抗扰控制器(active disturbance rejection control, ADRC)更能适应柴油机非线性强的特点。
1 算法研究概况
常规PID控制技术的缺陷主要体现在以下几方面。
1)虽然常规PID对于线性的被控对象具有良好的控制效果,但对于非线性度高、快速时变、具有扰动的对象控制效果较差,如柴油机调速控制系统[3]。
2)常规PID控制器在转速控制时无法兼顾系统瞬态和稳态的需求。
3)常规PID控制器无法根据系统状态调整控制参数,工程上需要花费大量人力物力去根据实际工况对PID控制器的参数进行标定。
随着控制技术的发展,常规PID因其固有的局限和缺陷,无法适应日益提高的控制需求。需要用一种新的控制器代替PID,或结合新控制理论对PID进行改造。出于实际工程和被控对象复杂性的考虑,需要保留PID控制技术的一些优点:计算过程不复杂、不依赖被控对象的精确数学模型[4]。
针对传统PID所存在的问题,在柴油机控制器应用方面学者们尝试将常规PID控制技术与现代的控制理论结合起来,对PID控制技术进行参数优化从而获得有着更好的调速控制效果,如遗传PID、模糊PID、神经网络PID等[5]。
模糊控制技术经过多年的研究已经得到了广泛的应用。模糊控制就是在常规PID的基础上利用模糊推理调节PID参数,以达到提高控制器的控制效果。
基于模糊原理的PID控制过程如图1所示。这种算法的核心是在所有可行解中进行寻优,寻优的过程参照了生物学中的物种在进化过程中产生变异并提高对外界环境适应能力的原理。通过系统辨识和遗传算法计算对PID控制器的3个参数进行选择优化[6]。
图1 基于模糊原理的PID控制
采用遗传算法的PID控制过程如图2所示。通过遗传算法的计算过程根据系统情况对PID参数进行调节过程通常采用离线方式,遗传算法并没有完全完善,其可以很好的搜索全局变量,但其对局部效果较差,且这种算法的效率低,无法快速收敛[7]。
图2 采用遗传算法的PID控制
神经网络控制器通过把神经网络理论和常规PID控制技术相结合,通过神经网络具有的学习训练能力,正向传递信号,反向传递误差,通过不断迭代优化以求减小误差,从而获得最适合当前系统的PID参数,如图3所示。神经网络与PID相互作用、相互修正,从而达到理想的控制效果[8]。
图3 与神经网络相结合的PID控制
传统PID的结构已经无法适应越来越高的控制要求,利用先进算法针对参数进行调节而不对其结构进行调整已无法从根本上解决问题。利用TD、ESO和NLSEF构造出来的ADRC可适应柴油机非线性强的特点[9]。ADRC的优势已通过实际应用的检验,如:喷气发动机控制、硬盘控制等[10]。
自抗扰控制器的核心内容为:估计与补偿,TD、ESO、NLSEF其中各个部分可随便组合。本文中利用TD对传统PID的改进。研究不同控制结构在ADRC上的应用,例如解耦控制[11]等无速度传感器调速、多电机调节等。把PID与其他算法如滑模、模糊、神经元[12]等相配合可以取得更好的效果。
2 自抗扰控制器原理
2.1 自抗扰控制理论
针对上述PID控制器存在的缺点,设计相应的解决方案。
2.1.1 安排过渡过程
根据设定的目标值和被控对象的特性添加合理的过渡过程。在工程中经常使用添加过渡过程的方法。例如加温进程中的“温度升高曲线”,热处理的“温度变化曲线”等[13],但是,在很多时候不采集这些信号的微分。
图4 安排过渡过程示意图
采用“添加过渡过程”,可在对信号进行过渡处理的同时获得信号的微分,过渡过程框图如图4所示。
图中v(t)是控制目标,v1(t)是针对v(t)的过渡过程,v2(t)是过渡过程v1(t)的微分信号。图中的∑既可以是动态过程,亦可为一类函数,我们可以通过需要的目标值v(t)及被控对象的特点对其进行设计[14]。
2.1.2 微分信号的提取
(1)
本文中的二阶积分器闭环反馈系统为
(2)
输入信号v(t):
(3)
式中的x1(t)会在系统中r的作用下以最快的速度跟踪输入v(t),x2(t)是x1(t)的微分可以当作v(t)的微分。由于函数-rsign(x1-v(t)+x2|x2|/2r)的Bang-Bang特性,控制系统在稳定时输出会有震颤[16],为避免这一震颤,对系统
(4)
推出函数fhan(x1,x2,r,h),如式(5):
(5)
利用上式推出的离散系统也就是微分器如下:
(6)
图5 跟踪微分器示意图
公式(6)所示的系统称为v的“TD”,其示意图见图5。
为初步验证微分器特性,取系统的参数v=1,r=1时,仿真的结果如图6所示。可以看出,x1可以很快地跟踪系统输入v=1且无超调,x2是所获得的微分值。
对TD输入信号v=sin(t)(这是一个时变的信号),设r=50,仿真结果如图7所示。
图6 TD阶跃信号仿真结果 图7 TD正弦信号仿真结果图
2.1.3 非线性组合的应用
u=k0e0+k1e1+k2e2,
(7)
然而采用这种普通的线性组合进行计算的控制效果并不是最好。根据很多仿真现象我们发现,利用e0、e1、e2导入非线性的控制规律中可以得到更好的控制效果,常用的非线性组合算法如下:
u=k0fal(e0,a0,δ)+k1fal(e1,a1,δ)+k2fal(e2,a2,δ),
(8)
u=k0e0+fhan(e1,c×e2,r,h0),
(9)
(10)
而函数fhan(x1,x2,r,h0)的表达式已在式(5)给出,与之前公式不同的是在偏差反馈处多出参数c(阻尼因子),且用h0(用于TD滤波的滤波因子)代替了原式的精度因子h。
采用式(8)这种非线性控制律时,一般将参数ai控制在以下范围:
a0<0 (11) 为控制目标添加过渡过程模块的同时,采用TD模块提取系统输出的微分,就能够改进常规PID控制结构获得改进PID结构,如图8所示。 图8 改进PID控制器原理框图 在具体应用中,如果系统设定目标值的变化并不剧烈,可以使用跟踪微分器代替过渡过程完成它的任务,以求简化控制器的结构。 2.1.4 ESO与扰动估计补偿 前已叙及表现量a(t)=f(x1(t),x2(t),t)的估计方法,对于二阶被控对象 (12) 式中,ω(t)为系统的外扰,体现控制进程的量 a(t)=f(x1(t),x2(t),ω(t),t), (13) 当作未知的被扩张的状态变量 x3(t)=a(t), (14) 那么所述的系统(12)可变成线性系统 (15) 式中,ω0(t)是无法被确切获得的,但是上述系统被成功的改变为线性系统,建立针对这一系统的状态观测器 (16) 如果函数f(x1,x2,ω(t),t)在系统输入u(t)的作用之下,在控制过程里函数变化不是十分剧烈时,那么合理地选择β01、β02、β03,此类状态观测器的各状态参量zi(t)往往都能有效地跟踪原有(15)的各个状态参量xi(t)。虽然在方程(16)中没采用未知函数ω0(t),但是在整个系统中其参与计算并起到了实际作用,为了削弱ω0(t)对过程的影响,利用非线性过程,把观测器函数公式(16)改造为 除此之外,还可以给学生提供一些绘本的阅读,通过绘本的教学,让学生扩展视野,学生的学习兴趣得到了极大的增强,也为教师的教学打好了坚实的基础。 (17) 上述的观测器式(16)、(17)可以称之为系统式(12)的“扩张状态观测器”。 被扩张的状态参量x3(t)=a(t)=f(x1(t),x2,ω(t),t)的观测很有意义。它其实就是前面描述的表现量a(t)=f(x1(t),x2(t),ω(t),t)。其可以视为作用在被控对象上的各种扰动(包括建模、未建模的动态和外部干扰)之和,称之为“总扰动”[17]。通过估计系统的总扰动,就可以参照上文论述的方法把整体的控制问题视为简单的偏差反馈问题进行思考,如果a(t)≡const,那对其估计及补偿能够代替偏差的积分反馈-k0e0的作用,这样就可以削弱偏差积分反馈的副作用。 用上述的TD、ESO、NLSEF部件可以组成能够适应复杂被控对象的新型控制器——ADRC,其框图如图9所示。 图9 自抗扰控制器的原理框图 ESO对扰动的观测和根据其观测值添加的扰动修正是ADRC的关键,也是其意义所在,因而,ADRC可以概括为能根据扰动给出修正量的控制器。 以二阶不确定被控对象为例: (18) 式中,f(x1,x2,ω(t),t)是未知的,本文中采用的自抗扰控制算法如下: (19) 在发动机进气流量仿真模型中,忽略了残余气体系数,气体流量如公式(20)所示。 (20) 式中:ηv为气缸充气效率;p3为进入气缸空气的压力;V为柴油机排量;n为柴油机转速;T3为进入气缸的空气温度;Rg为理想气体常数。 可以用公式(21)来计算柴油机的指示扭矩。 (21) 则: (22) 式中:qmf为燃料质量流率;Hu为燃料低热值。 柴油机摩擦力矩模型分为理论模型和经验模型2种[19]。使用经验公式(23)来描述的平均摩擦转矩和速度之间的经验关系。 (23) 式中:Cm为平均活塞速度;V为柴油机排量。 通过分析达朗贝尔原理,导出了柴油机的力学模型。 (24) 建立的柴油机仿真模型如图10所示。 图10 柴油机模型 根据柴油机仿真模型建立的柴油机转速控制系统的仿真模型如图11所示。 图11 调速系统模型 柴油发电机组调速试验系统包括柴油机、发电机、调速器、自动加减载系统和计算机。采用自动加载系统控制发电机的负荷,使柴油机在不同的负载工况下工作,为调速器的调速性能试验创造了试验条件。柴油发电机转速控制试验系统如图12所示。 为了验证自抗扰控制器的特性,进行了一系列的试验。瞬态调速率和转速稳定时间通常用于评估电子调速器的性能,以二级电站性能指标作为评价标准,如表1所示。 表1 二级电站性能指标 图12 柴油发电机转速控制试验系统 在进行仿真之前需要对仿真模型的真实度进行验证,判断仿真结果的可信程度[20]。本文中对建立的模型采用如下方法验证:使用相同的起动过程喷油量变化规律对起动过程进行开环控制,闭环过程也采用相同控制器(常规PID控制器),对比仿真数据和试验数据,分析模型的精确性,如图12所示。 试验利用起动电机,带动飞轮转动使柴油机从停机状态开始起动,起动过程开环控制规律如下:当转速大于100 r/min后柴油机进入起动过程,当转速小于400 r/min时(超过100 r/min)齿条位移保持固定值7.6 mm,当转速继续上升但未达到700 r/min时,齿条位移从7.6mm以一定斜度下降到6 mm(700 r/min怠速的齿条位移值);当转速大于700 r/min系统进入闭环模式。 图13 起动过程仿真模型验证数据图 采用上述模型验证方式的仿真数据试验数据对比如图13,可以看出红色的仿真曲线与蓝色的试验数据曲线吻合很好,两者之间偏差也在合理范围内,由此初步得出本文中的仿真模型及仿真数据是准确的。后续的仿真和试验研究将进一步对比验证模型的准确性,并对模型进行改进调整。 仅验证模型在开环的起动过程中的真实度无法反映模型的整体特性,因此在本文中采用普通PID控制器进一步验证模型在额定转速下加减负载时的真实度。加减载过程中的试验数据和仿真数据对比如图14所示,可以看出加减负荷时仿真数据的变化和实际的试验数据规律相似。由于仿真模型的线性度高于真实柴油机,所以仿真过程的控制效果要好于真实试验,由图14可以看出仿真的加减载过程的瞬态调速率和转速稳定时间都要小于实际试验过程,因此所建立的柴油机平均值模型可以用于验证算法的可行性,但需要对模型进行改进或添加真实系统使模型更加接近真实柴油机,从而研究算法特性。 a)加载 b)减载图14 加减载过程仿真模型验证数据图 柴油机的动态效果是衡量调速控制器控制效果的重要指标,因此需要进行柴油机负荷突变情况下的离线仿真来分析不同算法下控制器的控制效果,分别在仿真时间为40和60 s时突加和突卸100%负载。 针对柴油机的起动、升速、突加(突卸)100%负荷及突变目标转速100 r/min 4种过程,分别采用普通PID、改进后的PID、自抗扰控制器3种算法进行仿真。柴油机起动后在怠速(700 r/min)状态下运行一段时间,然后加速至额定转速(1 500 r/min)运行,运行至40 s时加满载,满载运行至60 s时卸除全部负荷。提取的转速微分信号。ESO可以根据发动机的输入输出信号观测获得发动机状态参量Z3,如图15所示。 a)转速微分 b)Z3信号图15 转速微分及Z3信号 图16 突加转速过程仿真数据图 突升100 r/min目标转速,对比普通PID、改进PID和自抗扰控制器仿真得出的实际转速,仿真数据如图16所示。 普通PID、改进后的PID、自抗扰控制器3种算法起动、加载、减载的仿真数据对比如图17所示。通过仿真可以看出利用TD改进后的非线性PID调速效果略优于普通PID,利用跟踪微分器提取转速微分信号可以提高PID中微分参数的作用,而利用函数建立的NLSEF可以根据转速偏差大小调节控制作用,有效的提高了调速性能。而利用扩张状态ESO、TD和NLSEF建立的自抗扰控制器根据柴油机转速和齿条位移输入量利用扩张状态观测器获得柴油机的状态参数,同时利用跟踪微分器提取设定转速的微分信号,利用NLSEF根据上述信号计算得出控制量,得到了更好的调速效果。 图17 3种算法仿真数据图 分别采用普通PID、改进PID和自抗扰控制器进行加减载试验,试验数据如图18~20所示。 图18 普通PID转速及齿条位移曲线 图19 改进PID转速及齿条位移曲线 图20 自抗扰控制器转速及齿条位移曲线 图21为上文所述的3种算法在加减100%负荷时的转速变化对比图,图21a)为加载时的转速变化对比,图21b)为减载时的转速变化对比。 a)加载时的转速变化对比 b)减载时的转速变化对比图21 3种算法下加减载对比曲线图 由图可以看出,在使用普通PID控制器进行调速控制时,柴油机非线性更强并具有延时性,同一组PID参数难以同时满足稳态和瞬态的需求。扰动增加使传统PID中的微分提取方式难以获得有用的微分信号。使用ADRC中的TD模块对PID进行改进后,由于更好地提取了转速的微分并加以利用,转速超调量明显减少,转速稳定时间缩短。ADRC控制器试验数据如图蓝线所示,在引入NLSEF和ESO后,非线性组合控制律根据转速偏差不同根据fal函数自动调整控制计算量的大小。通过利用扩张状态观测器的Z3信号作为控制量修正,也就是根据柴油机的输入信号观测的柴油机状态变化,其接近柴油机的负载变化,可以有效的提高加减载时的控制效果。可以看出得到试验数据中自抗扰控制器的控制效果最好,试验结果如表2所示。 表2 试验结果 基于自抗扰控制器和算法的基本原理,搭建自抗扰控制器模型,结合自抗扰控制器中的TD模块和NLSEF对常规PID进行改进,得到改进PID控制器。在Simulink中搭建出D6114型柴油机发电机组模型,利用Matlab-function自定义模块和Simulink常规模块相结合的方式搭建各个算法子模型,并替换原有双闭环控制策略中转速环的常规PID控制算法。首先在模型基础上进行离线仿真验证证明算法可行性,而后利用相关仪器及实物在试验台架上进行了调速控制试验,对比几种算法下的控制器在仿真及试验时的特性,得到结论如下。 1)在Matlab-Simulink中搭建D6114柴油机仿真模型,并进行模型验证,结果表明所搭建的柴油机模型能够较为准确的反应真实柴油机的状态。 2)依据自抗扰控制器的原理,利用Matlab-function自定义模块和Simulink常规模块相结合的方式分别建立TD、NLSEF和ESO模块,利用TD改进传统PID控制算法建立改进PID模型,上述3个模块组合建立自抗扰控制器模型,最后连接柴油机模型进行离线仿真试验。仿真结果表明ADRC控制器的调速效果优于PID,且ADRC中的模块结合PID对PID控制器的调速效果有一定的改进。 3)在D6114型电站柴油机试验台架上完成调速控制试验,控制器采用DS1103单板机结合计算机,针对动态加减载过程进行试验,对比分析常规PID、改进PID和自抗扰控制器3种不同算法下的试验数据,结果表明利用TD对PID进行改进后,控制器的稳态和瞬态调速效果均有明显提升。在改进后的PID的基础上建立的自抗扰控制器控制效果更好。2.2 自抗扰控制器基本结构
3 发动机模型建立
4 试验系统
5 试验结果与讨论
5.1 验证仿真模型
5.2 改进PID及自抗扰控制器仿真数据
5.3 自抗扰控制器加减载试验数据分析
6 结论