J.F. Dunne
工程与设计系,工程与信息学院,苏塞克斯大学,Falmer,Brighton BN1 9QT,英国
摘要
本文提出了一种新的控制方法,用于跟踪在氢气驱动下运行的共振自由活塞发电机的理想活塞轨迹,该方法能够应对状态测量噪声和燃烧气体压力未知波动的影响。理想活塞轨迹是通过最大化效率同时满足规定的压缩比和空燃比来获得的。采用了一种新颖的跟踪方法,该方法首先将目标轨迹分为压缩阶段和膨胀阶段,并用两个无外力作用的等效线性模型来表示,从而构建出最优控制律。这些控制律随后由非线性硬件(或相应的非线性仿真模型)用来跟踪目标路径。所提出的方法即使在状态向量测量存在高幅度的高斯噪声的情况下也表现出很高的效率和计算效率,但在处理燃烧气体压力的大范围未知波动时单独使用效果不佳。通过在膨胀阶段根据路径误差及其积分来额外控制一个关键发电机参数,可以非常有效地抑制由未知压力波动引起的干扰。通过使用发电机硬件的非线性仿真模型对这种组合策略进行了测试,结果表明该方法在计算上非常高效且具有很强的鲁棒性。对于一台14千瓦的机器,预计所提出的跟踪方法仅会使整体发电机效率降低约0.2%,而其理想效率为55.42%。
1. 引言
自由活塞发动机发电机(FPEG)相比传统的发电机组(即直接连接到内燃机上的电动发电机)具有显著优势,包括更高的效率、更好的质量和体积能量密度、可扩展到更高功率,以及易于实现的可变压缩比,从而提供了燃料灵活性和更大的使用零碳燃料的能力[1]、[2]、[3]。线性FPEG有多种形式[2],但大多数都配备了缓冲室来吸收燃烧过程中释放的能量。共振FPEG[4]、[5]、[6]、[7]使用刚性弹性元件(作为弹簧)来创建一个能够发生机械共振的质量-弹性系统。研究表明[8],配备弹簧回弹装置的FPEG相比其他类型具有最高的效率。此外,共振FPEG更易于控制,因为每个循环产生的能量理想情况下与燃烧释放的热力学能量相匹配,而在任何时刻都只占系统总能量(势能加动能)的相对较小部分。旋转共振FPEG[7](如图1概念性所示)相比线性共振FPEG有一个重要优势,即它不会受到不对称性的影响[1]。不对称性可能对运动稳定性和动态平衡产生关键影响,因为尽管FPEG经历自激运动,但共振通常是一种受阻尼控制的运动。旋转FPEG还有潜力利用迷宫密封结构来消除环状填料及相关未燃烧的碳氢化合物。而采用机械弹簧而非缓冲室的超方形(短行程)FPEG设计可以在高于60赫兹的频率下运行,并具有可接受的疲劳寿命。高频运行提供了更高的质量功率密度,但同时也给控制带来了挑战,因为采样率必须超过每循环1600次,导致在一个时间步长内完成所有复杂控制的在线计算所需的时间可能少于10微秒。
下载:下载高分辨率图片(95KB)
下载:下载全尺寸图片
图1. 旋转共振自由活塞发电机概念[7](其中弹性元件仅为概念性表示为螺旋弹簧)。
实际上,对于FPEG来说,有两种特定类型的控制问题受到了关注,尽管对共振FPEG的研究相对较少:i) 启动控制;ii) 成功启动后的FPEG运行控制,这可能涉及活塞位置控制或活塞轨迹跟踪。启动控制问题在[5]、[9]、[10]和[11]中得到了详细讨论,并提出了各种策略。这些问题很重要,因为共振FPEG必须通过利用机械共振或最优控制从静止状态启动。然而,本文不讨论启动控制问题,而是重点关注理想活塞轨迹的跟踪控制。如何在满足功率、压缩比和空燃比要求的同时,为使用氢燃料的共振FPEG设计程序构建这些轨迹以最大化效率并最小化NOx排放,在[7]中已经得到了全面讨论。但是,实现这一目标所需的跟踪控制策略尚未被提出。
在回顾FPEG控制时,两篇非常详细的综述[1]和[2]总体上讨论了FPEG控制问题。在[1]中,作者确定了两种主要的控制策略组:线性FPEG控制和“其他”FPEG控制方法。线性FPEG控制进一步细分为四个主题:活塞运动控制、线性电机控制、切换控制和组合控制。“其他”FPEG控制方法分为五个子类别:自由活塞斯特林发动机、半自由活塞旋转发动机、微型FPEG、全自由活塞线性压缩机控制和自由活塞线性压缩机控制。在[1]引用的236篇参考文献中,很少有研究使用模糊逻辑、神经网络控制或PID加遗传算法等先进控制策略。作者对2008年至2019年间发表的FPEG控制研究进行了详细的统计分析,以了解文献关注的焦点。从不同控制技术的发表情况来看,共识别出15种不同的方法,尽管许多方法被用于解决活塞位置控制问题,但尚未获得最优解。在[2]中,作者回顾了118篇文献,重点介绍了两种主要控制方法:活塞位置控制和活塞轨迹控制。总结[2]中的文献时发现,活塞位置控制占据了主导地位。作者强调了系统级和非线性动态描述在控制设计中的重要性,并指出应关注在运行和发电过程中的活塞轨迹控制。
具体到相关文献,例如在参考文献[12]中,作为液压线性发动机、四冲程自由活塞发动机(FPE)和内燃机之间的比较,开发了一个以控制为导向的模型来调节每个冲程结束时的FPE活塞间隙高度。线性化和线性二次技术的应用使控制器能够跟踪间隙设定点,保持参考间隙在0.5毫米以内。在参考文献[13]中,也使用了控制导向模型来为二冲程FPEG生成BDC和TDC位置的控制分析方法,实现了基于分析的压缩比控制。这是基于从能量守恒原理推导出的线性控制导向模型。开发了两种控制器:比例积分(PI)控制器和线性二次调节器(LQR)。该方法应用于四种不同的FPEG配置,证明了其通用性。在参考文献[14]中,作者使用现场可编程门阵列(FPGA)实现了非线性模型预测控制(NMPC)来解决发动机怠速控制问题,认识到NMPC需要重复在线解决非线性最优控制问题(计算负载是实时应用NMPC的主要挑战)。在参考文献[15]中,扩展了[10]中提出的FPEG启动方法,形成了用于运行中的单缸FPEG的周期内多阶段NMPC方法。仿真结果显示,NMPC方法在开环和闭环控制TDC和BDC位置方面都非常有效,包括管理失火问题。作者建议可能的简化措施可以大幅降低NMPC的计算负担。在参考文献[16]中,作者提出了一种MPC方法来控制FPEG的活塞位置并管理系统约束。使用扩展状态观测器估计了TDC位置误差。仿真结果表明,所提出的方案能够跟踪目标活塞高度,减少了电气负载瞬时变化引起的波动。在参考文献[17]中,引入了两个前馈控制特性来改进现有控制系统在50千瓦液压对置活塞对置缸自由活塞发动机上的跟踪性能。现有控制系统包括一个内部反馈线性比例控制器和一个外部“重复”控制器。其中一个前馈控制器是线性的,另一个是非线性的。改进后的系统在实验硬件上得到了实现,并显示出提高了目标正弦活塞轨迹的跟踪精度。在参考文献[18]中,提出了一种在线轨迹跟踪控制策略来精确控制FPEG的TDC和BDC位置。参考轨迹基于满足关键运动学信息,并在线进行了迭代优化。测试表明,当燃料质量流量有15%的波动时,该策略能够实现稳定控制。
特别关注FPEG跟踪控制的最新技术和其局限性,参考文献[19]开发了一种新方法,专门用于处理(“传统”)二冲程线性自由活塞发电机的非线性、逐循环变化和周期性干扰。采用了一种高阶多项式路径规划方法(最高七阶多项式),利用遗传算法来最优选择目标轨迹以匹配最佳发电机运行条件。然后使用基于滑模控制的双环分段活塞运动控制器[20]来跟踪计划的活塞轨迹。该策略在实验硬件上进行了测试,在正常燃烧条件下表现良好,但被认为需要改进以应对燃烧中的不确定性。
共振自由活塞发电机(使用机械弹簧作为弹性元件)的轨迹跟踪利用了其固有的设计优势,即电机力远低于“传统”自由活塞发电机。参考文献[21]指出,传统的基于PID的跟踪控制器不足以处理作者所称的不对称“振动燃烧能量转换器”的复杂性,尤其是在存在非线性、逐循环变化和周期性干扰的情况下。为了解决这一挑战,在构建的动态模型中,燃烧干扰被替换为输入能量的变化。为了进行轨迹跟踪,使用了“回退”方法,该方法保留了系统的固有非线性。主要目的是避免燃烧波动后的不稳定性。这种“回退”方法通过仿真测试表明,在低幅度波动下效果良好,但在较大波动存在时会导致跟踪误差增加。在处理状态测量噪声方面,线性化和线性二次技术可以隐式处理非线性系统中的噪声。模型预测控制也可以以随机形式制定来管理噪声测量,但在存在强非线性时,控制的性能和精度可能会受到影响,这证明了使用机器学习等工具来改进噪声管理的必要性。总之,显然需要一种鲁棒的跟踪方法,至少能够处理由燃烧气体压力的显著(未知)波动以及传感器测量中的大量噪声引起的较大干扰。现有的NMPC方法需要在线解决非线性最优控制问题,这具有较高的计算成本。FPGA实现虽然可以应对这一挑战,但会带来较高的硬件成本。相比之下,当压力波动超过50%时,PID控制的跟踪误差会增加一个数量级,从而无法满足氢燃料FPEG的高精度要求。
在本文中,为了解决[1]中观察到的对最优解的需求,以及[2]中指出的需要使用非线性动态描述来控制活塞轨迹的问题,在状态向量测量存在显著噪声和燃烧气体压力逐循环不确定性较高(这会对响应产生显著影响[22]的情况下,开发了一种新的鲁棒跟踪方法。这种新的计算高效方法几乎所有的计算都可以离线完成,非常适合高频FPEG跟踪,因为像NMPC这样的方法(至少需要在线状态估计)在没有昂贵计算硬件的情况下速度不够快。本文的目的是通过使用完全非线性的硬件仿真来测试所提出的跟踪方法。2. 开发一种次优轨迹跟踪算法本节重点介绍了一种新的策略,用于在存在状态测量噪声和燃烧气体压力逐周期未知波动的情况下跟踪理想的活塞轨迹。理想的二冲程目标活塞轨迹是使用[7]中描述的两阶段数值程序构建的,并在此简要总结。这些目标活塞轨迹的设计目的是使以氢燃料运行的共振自由活塞发电机尽可能紧密地遵循奥托循环,以最大化效率,同时满足功率、空气燃料(当量)比和压缩比的设计规范。跟踪策略的开发将遵循这一两阶段程序的总结。策略的测试使用的是非线性仿真模型,而不是实际硬件,这是通过利用[7]中构建的发电机的完全非线性动态模型来实现的。2.1. 构建理想活塞轨迹简而言之,两阶段程序[7]使用完全非线性的发电机动态模型来找到目标轨迹和关键参数。找到的关键气缸位置参数是:Xsc和Xhr(如图2所示),以及参数α。参数Xsc是扫气开始时的气缸位置,参数α定义了等效的下止点位置,因为x=αXsc表示扫气开始之后的位置。参数Xhr定义了热释放位置。程序的第一阶段包括从活塞位移x=αXsc到x=Xsc的恒压扫气,然后是绝热压缩直到热释放活塞位移x=Xhr(图2中的所有位置参数都是投影到气缸中心线上的弧长)。下载:下载高分辨率图像(138KB)下载:下载全尺寸图像图2. 二冲程旋转共振自由活塞发电机一侧的活塞位置变量(所有位置参数都是投影到气缸中心线上的弧长)。在x=Xhr处由于热释放而产生的名义上瞬时的压力上升之后,发生绝热膨胀到活塞位移x=Xsc,然后在扫气压力下进行排气和扫气到活塞位移x=αXsc,之后循环重复。两阶段程序利用了通过对活塞和电气机械应用牛顿第二定律构建的非线性模型,得到运动方程:(1)mx¨+f(x,ẋ)=et-AP(xt)-AundPund(x(t))其中m是发电机一侧的等效移动组件质量,f(x,ẋ)是形式为(2)fx,ẋ=(afsignẋ+cg+bf+cemẋ+kspringxEq. (2)的能量耗散和存储模型。该模型包括涉及参数af、bf的机械摩擦力以及电气机械功率损失参数cem;功率生成通过cgẋ项实现,应变能量存储通过弹簧刚度kspring实现。方程(1)中的Px是气缸压力(作用在活塞面积A上),而在活塞压力Pund作用下作用在略微减小的面积Aund上(以考虑活塞杆的存在)。项e(t)是驱动(激励)力。函数f(x,ẋ)的耗散部分代表机械阻尼模型,已使用[23]中从共振FPEG硬件获取的测量数据进行了实验验证。动态模型方程(1)、(2)中的参数对应于旋转共振FPEG的一侧。这些等效参数与角模型参数的关系如下:m=I/r2,fx,ẋ=fθx/r,ẋ/r/r,e(t)=Mtθ/r,以及Pxt=Pθx/r,其中x=θr表示逆时针角位移θ的弧长,r是气缸中心线半径,等效旋转系统参数:I是质量的第二矩;eθt是驱动扭矩,Pθθ是作为角位移函数的气缸压力。特别是,fx,ẋ中的两个参数之间的关系如下:kspring=kθ/r2,其中kθ是扭转弹簧刚度,cg=cgθ/r2,其中cgθ是电气机械常数的角版本。考虑这些模型参数关系的优点是,旋转共振FPEG的模型包括了线性共振FPEG的模型作为极限情况。燃烧发动机中的瞬时热释放通常是一个有问题的假设。例如,在Eriksson和Sivertsson [24]的出版物中指出,当没有损失时,奥托循环是最有效的。但是当包括损失时,存在一个最优的热释放曲线来最大化效率。[24]中开发的方法针对汽油内燃机进行了调整,考虑了热传递和漏气损失,但足够通用,可以应用于FPEG。更近期在[25]中,为了确定具有摩擦、压力降和热传递的实际奥托循环的最优活塞运动,使用了最优控制理论和有限时间热力学。与氢燃料相比,参考文献[26]通过实验表明,对于以1300 rpm运行且喷射定时适当的稀薄分层充气(无自动点火)的发动机,火花事件与总热释放之间的延迟时间小于7度CA(或0.89 ms)。排除初始延迟后,总热释放在0.5 ms内完成。[26]表明确实可以产生理想的奥托循环。在使用方程(1)、(2)进行压缩和膨胀阶段时,通常需要额外的假设,首先是操作的对称性,以证明只需关注机器一侧的动态。这个假设对于旋转共振FPEG来说很可能是成立的,但对于线性共振FPEG来说则不太可能成立。第二个假设是等效的电气发电机力与速度成线性比例,即cgẋ,对于永磁(PM)机器来说,这可以从法拉第定律中得到证明(因为在线性假设下,cg=(NBl)2/R,其中N是定子线圈的匝数,B是(永久)磁通密度,l是长度尺寸,R是线圈电阻)。第三个假设是与电气机械‘常数’cg相关的参数值至少可以在压缩和膨胀过程中切换到不同的值,以确保遵循‘条件稳定’的循环。这里的功率生成是通过设计在压缩和膨胀冲程之间切换的。选择电气机械是为了能够在循环内通过功率电子切换来改变生成的功率。这不是一个假设,也不是纯粹的建模修改。最初的假设仅仅是电气机械具有功率切换能力。这种功率切换能力使得能够遵循条件稳定的循环。条件稳定的循环是指循环的最终状态精确返回到循环的初始状态。之所以称为‘条件’,是因为在测量噪声、模型不确定性和气缸压力波动的情况下,系统可能会变得不稳定。现在将使用方程(1)的改编形式来开发和测试理想的活塞轨迹跟踪策略,以模拟具有状态测量噪声和燃烧气体压力未知变化的硬件。2.2. 非线性共振FPEG跟踪策略现在开发了一种新的跟踪策略,用于跟踪(非线性)共振自由活塞发电机硬件。线性二次调节器(LQR)是线性二次跟踪器的一个特例(参见参考文献[27]的第151页,了解自由端边界条件二次跟踪算法)。然而,这里实际上并没有应用线性二次跟踪算法,而是将基于新构建的具有固定端边界条件的线性二次跟踪算法得出的控制律直接应用于非线性发电机模型。此外,为了考虑气缸压力的未知波动,在膨胀过程中,控制根据路径误差及其积分按比例应用于一个关键的发电机参数。总之,所提出的跟踪策略的新颖之处在于将二冲程循环分为两个阶段:压缩阶段和膨胀阶段。每个阶段的非线性最初是通过找到一个无外力线性模型来处理的,该模型用于计算相应的最优控制律。然后使用这两个相应的控制律在每个阶段进行跟踪,并恢复相应的完全非线性特性。压缩阶段结束和膨胀阶段开始之间的过渡,即热释放期间的气体膨胀,为压缩阶段提供了相应的最终边界条件,以及膨胀阶段的初始条件,被视为适合氢燃烧的瞬时(不连续)事件[26]。图3中总结的跟踪算法有可能对受到加性零均值不相关高斯噪声n(t)污染的状态向量测量x=xc+n(t)的发电机硬件进行次优控制,其中xc是未受污染的状态向量。此外,在方程(1)的动态模型适应中定义了燃烧气体压力的未知逐周期变化ΔP,以表示硬件:(3)mx¨+cgẋ+fx,ẋ+A(P(xt+ΔP)-AundPundxt=u(t)下载:下载高分辨率图像(709KB)下载:下载全尺寸图像图3. 共振自由活塞发电机目标活塞轨迹跟踪算法。闭环(反馈)控制u(t) = U^t是通过解决特定的Riccati方程和向量方程获得的,如现在所解释的。通过分别关注理想活塞轨迹的压缩和膨胀阶段(但不包括热释放压力上升本身),算法的第一步(如图3所示)是通过找到从各自起始和结束阶段开始的两个无外力近似线性系统来分别线性化这两个阶段。压缩和膨胀阶段的起始压力隐含在为无外力线性模型获得的等效线性刚度参数中。特别是,膨胀阶段的热释放压力通过一个比压缩模型更高的位移依赖参数隐含地纳入等效线性膨胀模型中(两者都代表等效的机械刚度)。由于最初利用了构建理想轨迹的相同非线性模型的形式线性化,因此简要解释了获得两个无外力线性模型的线性化过程。最终指定了三个参数,其中两个最初是通过形式线性化找到的,然后用作数值最小化的起始值。第三个参数(即等效的整体线性机械刚度)对于压缩和膨胀阶段,用已知的非线性周期和通过最小化找到的一个参数(即等效线性阻尼)来表示。获得两个无外力线性模型后,使用[27]中提出的方法构建了一个最优LQG跟踪算法。特别要求是,这个LQG算法必须在压缩和膨胀阶段的开始和结束满足固定边界条件。在计算上,该算法涉及解决一个逆矩阵Riccati方程和一个相关的向量方程,以提供最优反馈律和一个显式的最优控制函数U^(t)。反馈律可以用来使无外力等效线性模型跟踪理想轨迹(如果合适的话)。但是实际系统(硬件)是非线性的。因此,直接将最优控制U^(t)应用于非线性系统并不严格合适。然而,在这里,最优控制反馈律确实被非线性系统直接采用(无论是硬件还是用于仿真的非线性动态模型)。这可以被视为一种次优控制。具体来说,对于t=t0和最终时间t=tf时的初始和最终状态都指定的情况,可以构建一个LQG算法来跟踪形式为:(4)ẋ=Atx+Btu(t)的线性系统,其中全状态向量xt作为输出,以及(二次成本)性能指标:(5)J=1/2eT(tf)F(tf)e(tf)+1/2∫t0tfeT(t)Q(t)e(t)+uT(t)R(t)u(t)dt,目标向量跟踪误差为:(6)et=zt-xt,其中zt是目标向量。固定的初始和最终边界条件声明为:xt0=x0和xtf=xf。与方程(4)、(5)、(6)相关的LQG最优解的形式,基于Pontryagin最大原理[27],可以方便地表示为2n个哈密顿正则(矩阵)方程的形式:(7)ẋ∗(t)λ̇∗(t)=At-Et-Qt-Atx∗λ∗+0Q(t)zt,其中λ是共态向量,Et=BR-1BT,*符号表示最优性。对于许多类型的问题,可以应用相关的边界条件,从而通过方程(7)得到解决方案。然而,对于这里所述的边界条件,即初始状态和最终状态条件都是固定的情况,方程(7)的常规边界条件不适用。另一种方法[27]是假设状态向量x和共态向量λ之间存在以下关系:(8)x∗=Mtλ∗+V(t),其中M(t)是一个未知矩阵,Vt是一个未知向量。通过对方程(8)和规范方程(7)进行操作,可以得到M(t)的逆Riccati方程:(9)Ṁt=MtQtMt+MtATt-AtMt-E,以及一个向量方程:(10)V̇t=[MtQt+At]Vt+MtQ2(t)zt。由于λ∗是可选的,因此可以在t0时刻施加边界条件,即:(11)Mt0=0和Vt0=x0;或者在tf时刻施加边界条件,即:(12)Mtf=0和Vtf=xf。然而,在t=tf时刻必须应用后一组边界条件,因为如果应用前一组边界条件(即在t=t0时刻),解将无法了解最终状态xf。最优控制律的封闭形式为:(13)u∗=-R-1BTλ∗=-R-1BTM-1x∗-Vt,将其代入状态空间模型方程(4)后,可以得到封闭形式的跟踪反馈控制。这里提出的跟踪算法使用两个形式如方程(4)的(无外力)等效线性系统来生成矩阵M(t)和向量Vt,然后直接将反馈律(13)应用于非线性系统方程(3),其中状态向量x∗现在代表非线性系统的状态向量。在第4节中使用硬件的仿真模型测试此跟踪算法之前,现在将提供有关线性化过程的更多细节。
2.3. 理想活塞轨迹的等效无外力线性模型
回到构建理想轨迹的压缩和膨胀阶段的等效无外力线性模型的过程,通过最小化两个阶段之间的误差来找到最佳线性模型,从而得到两个形式如下的状态空间模型:(14)ẋ=Ax+c。这涉及到在方程(14)中为压缩阶段找到三个参数,在膨胀阶段找到三个不同的参数。为了找到这些参数,首先采用了一种形式化的线性化程序,通过泰勒级数展开非线性模型方程(3)中的非线性项(这在构建理想轨迹的两阶段程序[7]中首次使用)。将非线性方程(3)写成状态空间形式得到:(15)ẋ1ẋ2=x2f2x,t+01mu。上面的状态方程(15)已经是线性的,而下面的状态方程可以通过将非线性项关于任意点x=x0=x01x02进行泰勒级数展开来线性化。通过截断展开后的下面方程(15),线性项可以写为:(16)ẋ2=f2x,t+∂f2∂x1(x1-x01)+∂f2∂x2(x2-x02)+u/m 或 (17)ẋ2=∂f2(x0)∂x1x1+∂f2(x0)∂x2x2+C2+u/m,其中常数C2为:(18)C2=f2x0,t-∂f2(x0)∂x1x01-∂f2(x0)∂x2x02,由此得到线性化的状态空间模型:(19)ẋ1ẋ2=01α2β2x1x2+C1C2+01mu,其中α2=∂f2(x0)∂x1,β2=∂f2(x0)∂x2,C1=1。方程(19)可以写成:(20)ẋ=Ax+c+Bu,其中矩阵A和向量c取决于每个选定的状态向量展开点。通过考虑这些项的平均值,即A^和向量c^,并引入一个新的(线性变换的)状态向量:(21)xnew=x+A^-1c^,将原始状态向量代入方程(20)中,得到一个以新状态向量定义的状态空间模型,即:(22)ẋnew=A^xnew+Bu。现在假设方程(22)中的(标量)控制输入为零,即u=0,该模型成为一个无外力常系数线性模型,这涉及到为压缩阶段找到一组三个参数α2、β2和C2(如方程(19)所定义),以及为膨胀阶段找到一组不同的参数。通过最小化无外力线性模型响应与完全非线性目标轨迹之间的误差来找到参数β2和C2。在最小化过程中,用于决定无外力线性模型拟合优度的标准是线性模型误差LME,即线性模型位移预测与目标轨迹位移之间的均方根误差(RMSE),加上一个加权的末端位移误差,即:(23)LME=sqrt1T∮zt-xtTzt-xtdt+sqrtεE(zthr-xthrT(zthr-xthr),其中(无量纲的)末端误差权重参数εE的选择幅度εE= 1/T,T是周期(或在分别计算压缩或膨胀阶段时的相应周期)。方程(23)显示了两个误差分量:第一个代表位移RMSE,第二个分量是加权末端位移误差。仅使用末端位移误差、末端速度误差或最小二乘误差无法得到良好的无外力线性模型表示,或者在减小离散步长时无法收敛。后者问题在使用末端速度误差时最为明显。由于LME中的末端位移误差起着重要作用,通常需要用因子εE对末端误差进行加权。由于多变量最小化的效率取决于起始值,因此仅使用泰勒级数展开进行形式化线性化来计算β2和C2的平均值,然后使用Matlab函数fminsearch进行非线性最小化。在方程(17)中的形式化线性化过程中,还使用了函数bth × tanh(bth ẋ)代替sgn(ẋ)函数来计算∂f2∂x2,以便进行微分,为最小化程序提供起始猜测。当获得参数β2和C2后,通过利用目标压缩和膨胀阶段轨迹的已知(非线性)半周期值Tnon/2来获得参数α2,这些值分别用β2和Tnon表示。对方程(17)中的完整非线性模型进行形式化线性化,以在最小化过程中提供两组参数β2和C2的初始选择,但实际上根据轨迹上的膨胀点,会得到不同的值,而实际上需要的是单一值。为了解决这个问题,使用了沿整个轨迹平均的名义平均值。然而,由于β2和C2都是x1和x2的函数,现在将更具体地说明如何获得平均值β2和C2以及参数α2。
估计β2和C2的平均值
估计β2和C2的平均值的过程如下:对于压缩阶段,首先对目标压缩轨迹进行离散扫描,确定状态向量值和相应的绝对时间值。使用方程(17),在压缩轨迹上的每个状态向量x0和变量t处分配一个局部值β2=∂f2(x0)∂x2,并进行适当的局部体积和压力计算。从方程(18)获得C2的瞬时值。下一步是计算理想轨迹上的累积弧长,因为通常β2和C2是状态向量值的函数。然后可以通过对状态空间内的弧长对应的值进行平均来获得β2和C2的平均值。使用平均值定理计算平均值涉及在(x1,x2)空间中对弧长S进行线积分,这利用了沿路径C的线积分的标准表达式,该路径C涉及两个变量x和y [28],即:(24)∫fx,yds=∫abfxt,ytdxdt2+dydt2dt。然后,例如利用β2的平均值定理,其中路径C是目标轨迹,得到平均值≪β2≫,使用方程(24)表示为:(25)≪β2≫=∫β2x,ẋds=(∫abfxt,ytdxdt2+dẋdt2dt)/Ṡ,其中目标(压缩)轨迹的弧长S的常用表达式为:(26)S=∫αXscXhr1+dẋdt2dx。再加上类似于方程(25)的表达式来获得参数C2的平均值,以及类似于方程(23)、(24)的表达式来获得膨胀阶段的平均值。
获得参数α2
参数α2完全是根据参数β2和目标非线性周期Tnon来确定的。为了说明这种联系,考虑一个二阶振荡器模型:(27)my+¨cẏ+ky=p(t),通过除以质量m,可以写成:(28)y+¨2ξωnẏ+ωn2y=Q(t),其中方程(28)中的位移依赖参数是α2=ωn2=k/m,速度依赖的阻尼参数是β2=2ξωn。与方程(28)相关的阻尼自然频率为ωd=1-ξ2ωn=2π/Tnon。用β2和Tnon表示ξ得到:(29)ξ=β24(2πTnon)2+β22,然后用ξ和Tnon表示α2得到:(30)α2=-2πTnon211-ξ2。在涉及β2和C2的最小化过程的每个阶段,因此使用局部β2值(和已知的Tnon值)来计算参数α2。
为了展示所描述拟合过程的质量,并进行后续比较,检查了一个共振FPEG测试案例,其发电机一侧的目标功率为7 kW(即两侧共14 kW)。选择的关键发电机参数值(至少保留4位有效数字)为m= 2 kg,kspring= 284244.60 N/m,A= 0.0010 m2,Aund=0.0009250 m2。模型参数的数值大小为:af=3,cg=7.686(压缩),cg= 122.02(膨胀),bf= 2,cem=2。气缸位置参数为Xsc= -0.0247 m,Xhr=0.0242 m,α= 1.1074。该系统的强迫周期性运动直到x=Xhr的结果是非线性振荡周期= 0.0152 s,或非线性频率为65.71 Hz。将60 Hz的线性频率(在没有绝热压缩的情况下)与65.71 Hz的非线性频率进行比较,表明系统达到顶部死中心位置x=Xhr的非线性强度。对应于14 kW机器的动态模型参数不是基于实验测量的,但阻尼模型的形式已经通过实验验证[23]。刚度的非线性完全来自于使用理想气体热力学,涉及绝热压缩和膨胀,没有热量损失。图4显示了理想压缩和膨胀阶段轨迹的相平面图以及相应的最佳无外力线性模型响应。压缩阶段参数的大小为:α2=-158900,β2=53.0968,C2=-684.0431;膨胀阶段参数的大小为α2=-205950,β2=-219.6117,C2= −2310.296。
下载:下载高分辨率图像(120KB)
下载:下载全尺寸图像
图4. 理想目标路径(实线)及其对应的最佳无外力线性模型响应(虚线)的相平面图。使用方程(23)得到的最小拟合误差分别为0.12 mm(压缩阶段)和0.32 mm(膨胀阶段);(垂直虚线左侧标识了扫气区域)。获得的两个无外力线性模型可以用来构建逆Riccati方程(9)和向量方程(10),解决这些方程后,可以得到最优反馈律(13),以使完全非线性的共振自由活塞发电机在状态测量噪声存在的情况下跟踪理想活塞轨迹。接下来将在第4节测试没有附加状态测量噪声时的次优跟踪情况,以及有噪声时的情况。还将测试在燃烧压力有额外波动的情况下,有无测量噪声时的情况。
3.3. 在状态测量上有随机噪声时的最优跟踪
在使用完全非线性动态模型的共振自由活塞发电机(代表硬件)测试第2节开发的次优跟踪算法之前,需要考虑如何计算发电机效率。这很重要,因为使用最优策略的总体目的是最大化效率。此外,当电气机器应用次优控制时,原则上可以利用驱动和发电作用以积极的方式提高系统效率,使其超过无控制时的水平。此外,考虑效率计算有助于在性能指数方程(5)中合理选择努力权重矩阵R的大小。
3.1. 计算次优控制的发电机效率
考虑控制是由电气机器提供或吸收的时变力,从而计算发电机效率。这可以根据次优控制力u∗与状态速度ẋ的乘积的符号,在一个周期内贡献于驱动和发电。例如,当控制u∗和速度都为正时,表示驱动;而当u∗为负且速度为正时,表示发电。一般来说,电机-发电机模式的符号约定遵循这样的原则:当力u∗与速度ẋ的乘积为正时,表示驱动;当该乘积为负时,表示发电。在一个周期内,会有驱动阶段和发电阶段。通过遵循符号约定,可以得到一个关于最优控制发电机效率的表达式。一般来说,效率可以定义为:(31)η=输出功率/输入功率。每个周期的平均输出功率由三个部分的平均值给出,即:(32)输出功率=发电模式功率+驱动模式功率,其中驱动模式功率(用于控制)是从目标发电机功率中抽取的(导致功率减少),而发电模式功率则由燃烧能量转换器使用的额外(少量)燃料提供。因此,平均输入功率由以下表达式给出:(33)输入功率=目标输入功率+(发电模式功率)η转换,其中真正的发电模式输入功率必须考虑来自额外(少量)燃料的能量转换效率η转换。这里的转换效率η转换是指自由活塞发电机在控制模式下工作的效率,通常可能与自由活塞发电机的整体效率η不同,在这种情况下,整体发电机效率表示为:(34)η=发电功率-(驱动模式功率)+abs(发电模式功率)η转换。当可以假设η转换与整体发电机效率η相同时,方程(34)简化为:(35)η=发电功率-(驱动模式功率)目标输入功率。特别感兴趣的是,使用次优控制、存在状态测量噪声或发生未知的峰值气缸压力变化(控制算法对此没有先验知识)是否会导致效率显著变化。这些方面将在本节和第4节中讨论。图5a显示了一个完整周期内的次优控制u∗,该控制直接应用于非线性模型方程(3),并使用了图3中所示的跟踪算法以及反馈控制律中的最佳线性模型Riccati和向量解。测量状态上的噪声为零,燃烧气体压力也没有变化,即Δp = 0。方程(5)中的“努力”权重矩阵[R](在这种情况下是一个标量)被选择为R = 200(在噪声存在的情况下选择R的合理依据将在后面提供)。下载:下载高分辨率图像(97KB)下载:下载全尺寸图像图5a。使用最佳线性模型Riccati解在非线性模型的反馈控制律中对1个周期进行最优控制。R = 200。测量状态上的噪声为零,燃烧气体压力也没有变化,即Δp = 0。图5b显示了将跟踪算法应用于非线性模型并与理想目标轨迹进行比较的效果。这些结果表明,在没有噪声或燃烧气体压力未知变化的情况下,跟踪策略在跟踪非线性模型的目标路径方面非常有效。这是一个使用方程(1)模拟硬件的比较。下载:下载高分辨率图像(105KB)下载:下载全尺寸图像图5b。使用最佳线性模型Riccati解在非线性模型的反馈控制律中跟踪理想的非线性目标轨迹(实线)。R = 200。测量状态上的噪声为零,燃烧气体压力也没有变化,即Δp = 0。(垂直虚线左侧标识了扫气区域);跟踪RMSE = 0.015毫米。性能指数权重矩阵[r]的合理分配通常,在最优跟踪应用中,性能指数方程(5)中的权重矩阵[Q]和[R]的选择是设计考虑因素(通常通过试错妥协来实现)。压缩和膨胀阶段的两状态矩阵Qcomp和Qexp被选择(并固定)为对角矩阵,对角元素分别由相应的循环自然频率ωcomp和ωexp加权,即Qcomp=1/2ωcomp001和Qexp=1/2ωexp001,以便跟踪位移和速度误差分量的大小相似。由于矩阵R是一个标量,单独改变R的大小会改变最优跟踪对跟踪误差与努力的相对权重。因此,R的值应该选择得适中,以便方程(5)中的跟踪误差成本不会被努力成本所主导,但也不能太小,以免最优控制U^的绝对值变得不可接受地大。那么问题就是:应该选择多大的参数R值?回答这个问题需要考虑三个因素:i) U^的绝对值,ii) 作为R函数的跟踪均方根误差(围绕周期平均),以及iii) 效率(使用方程(34)计算),以及参数R如何影响效率。这里只关注膨胀阶段的跟踪RMSE,使用方程(6)给出的误差e定义为:(36)跟踪RMSE=DeReRTDT)/N,其中eR是一个2×N的跟踪误差向量,(频率)权重矩阵[D]定义为:(37)[D]=[11/ωexp]。方程(36)给出了膨胀阶段跟踪RMSE(以毫米为单位)作为R的函数,速度分量由1/ωexp2加权,即非线性(膨胀)循环频率ωexp的倒数平方。图6显示了在没有燃烧气体压力变化的情况下,以及有附加测量噪声的情况下,这三个因素作为R的函数。这些因素包括使用方程(36)计算的膨胀跟踪误差(在左侧对数刻度轴上),成本函数中绝对最优控制U^的峰值幅度(也在左侧对数刻度轴上),以及使用方程(34)计算的效率,相比之下,右侧(线性刻度)轴是相关的。最初关注图6中没有噪声的结果,这些结果显示最优控制U^的绝对值范围随着R的变化而显著变化。例如,对于R = 4(在不遇到计算困难的情况下可实现的最小值),U^的峰值幅度接近2 kN,而对于R = 350,峰值降至20 N。在没有噪声的情况下,平均膨胀跟踪误差随着R的增加而单调减小。对于R > 100,平均跟踪误差接近0.01毫米,而对于R < 50,它迅速增长到大约2毫米的不可接受水平。在这个不可接受的跟踪误差区域内,效率预测也显得不可靠;而对于R > 300,效率已收敛到55%的值。下载:下载高分辨率图像(211KB)下载:下载全尺寸图像图6。在没有噪声的情况下(实线)和有噪声的情况下(虚线),成本函数中最优控制的绝对值、效率和平均膨胀跟踪误差的峰值幅度作为R的函数,测量状态向量上的高斯噪声标准差约为状态变量范围的2.5%;燃烧气体压力没有变化。图6还显示了向测量状态向量x添加实际噪声水平的结果。零均值加性随机高斯噪声的标准差幅度为:σx = 0.001和σẋ = 0.5,其中一个标准差代表活塞位移和速度各自范围的2.5%。图6中的结果是通过重复20次与无噪声情况相同的三个因素计算,然后对每个R值的结果进行平均得到的。正如预期的那样,有噪声时,这三个因素作为R的函数而波动。“有噪声”情况下最优控制的峰值绝对幅度和效率的波动是预期的一致的。为了实现最高效率,应尽可能选择较大的R值。对于R > 100,“有噪声”时的平均膨胀跟踪误差并不单调减小,但保持不变。然而,随着R的增加,对跟踪精度的权重减少,而控制努力的权重增加,控制的幅度进一步减小,使系统对噪声更加敏感。因此,R的选择是一个折中。这里选择R = 300作为后续的折中值。图7a显示了一个周期内的重建原始状态位移和速度分量以及噪声。就跟踪性能而言,图7b显示了使用非线性模型(方程(3))直接模拟硬件的跟踪性能,尽管有状态测量的附加噪声(但燃烧气体压力没有变化)。这表明,尽管测量噪声水平很高,所提出的跟踪算法仍然非常准确地跟随目标路径。下载:下载高分辨率图像(198KB)下载:下载全尺寸图像图7a。状态向量分量带有附加高斯噪声(左:位移,右:速度),R = 300;测量状态上的噪声标准差约为状态变量范围的2.5%;燃烧气体压力没有变化,即Δp = 0。下载:下载高分辨率图像(119KB)下载:下载全尺寸图像图7b。使用最佳线性模型Riccati解在非线性模型的反馈控制律中跟踪理想的非线性目标轨迹(实线),R = 300。测量状态上的高斯噪声标准差约为状态变量范围的2.5%;燃烧气体压力没有变化,即Δp = 0。(垂直虚线左侧标识了扫气区域);跟踪RMSE = 0.15毫米。4. 带有热量释放压力波动的次优跟踪一个重要的问题是,第3节中描述的跟踪策略对燃烧压力的未知变化有多敏感(最优控制计算对此并不知情)。为了评估这种效应(实际上是跟踪鲁棒性的测试),仅考虑膨胀阶段(因为在理想的奥托循环中,压缩不会受到这种变化的影响)。为了测试鲁棒性,在模型方程(3)中引入了燃烧气体压力的变化Δp,表示奥托循环中热量释放位置的名义燃烧压力上升了40%。跟踪算法不知道这种气缸压力的变化。同样,这是为了直接模拟假设发生这种压力变化的硬件跟踪应用。图8a显示了在没有状态测量噪声的情况下,将图3中的跟踪算法应用于模型方程(3)的结果,其中Δp变化了40%。这表明跟踪算法对这种变化的管理非常差。为了解决这个缺点,一种简单的策略被证明非常有效,可以与跟踪策略结合使用。下载:下载高分辨率图像(112KB)下载:下载全尺寸图像图8a。使用最佳线性模型Riccati解在非线性模型的反馈控制律中跟踪理想的非线性目标轨迹,与R = 300但没有比例-积分参数控制的目标路径进行比较。测量状态上的噪声为零,但燃烧气体压力变化了+40% Δp。(垂直虚线左侧标识了扫气区域)。通常,这是在膨胀阶段根据总路径误差及其积分按比例改变方程(2)中的电气机器常数cg,即:(38)cg=cgNOM×cgscalefactor,其中cgNOM是电气机器常数的名义值,cgscalefactor是一个比例因子,在膨胀阶段开始时其值为cgscalefactor=1,并定义如下:(39)∊∊cgscalefactor=(1+Kp∊velt+Ki∫∊veltdt),其中路径误差∊∊vel(t)是通过修改方程(6)得到的:(40)∊∊vel(t)=ωn(z1t-x1t)+(z2t-x2t),其中包括由非线性膨胀频率ωn加权的位移和膨胀阶段的速度分量,其中状态向量测量xt受到噪声的干扰。这是一种PI参数控制形式,其中常数Kp和Ki可以分别视为比例和积分“增益”。图8b显示了将提出的策略方程(36)、(37)、(38)以及图3中的跟踪算法应用于模型方程(3)的结果,其中Δp变化了40%,但状态测量上没有噪声。名义峰值压力为87.9巴,因此随着40%的上升,这个周期的模拟峰值压力在x=Xhr时为123巴。这表明图8a中存在的偏差效应已被完全消除。使用的“增益”值为Kp=8和Ki=200在方程(39)中,发电机参数的幅度为cgNOM=122.02在方程(38)中。下载:下载高分辨率图像(113KB)下载:下载全尺寸图像图8b。使用最佳线性模型Riccati解在非线性模型R=300的反馈控制律中跟踪理想的非线性目标轨迹(实线),并与目标路径进行比较,同时采用比例-积分参数控制。测量状态下的噪声为零,但燃烧气体压力变化了+40%(垂直虚线左侧标识了扫气区域);跟踪均方根误差(RMSE)为0.33毫米。图9展示了相同的组合应用,但现在除了代表Δp变化40%的大压力升高外,状态测量还加入了实际水平的高斯噪声(即与图6和图7中的结果相同)。下载:下载高分辨率图像(113KB)下载:下载全尺寸图像。图9. 使用最佳线性模型Riccati解在非线性模型的反馈控制律中跟踪理想的非线性目标轨迹(实线),并结合比例-积分参数控制(点)。R=300。测量状态下的高斯噪声(即标准差约为状态变量范围的2.5%),并且燃烧气体压力变化了+40%(垂直虚线左侧标识了扫气区域);跟踪RMSE=0.37毫米。4.1. 跟踪控制对计算出的发电机效率的影响。与获得的结果相关的计算效率的影响很有趣,特别是跟踪控制是否会导致整体系统效率的增加或减少。在没有状态测量噪声的情况下,使用方程(34)可以给出稳定且可重复的预测。然而,加入噪声后,效率预测变成了一个随机变量。效率预测的变异性完全取决于方程(34)中分子中的平均发电功率项的计算方式。例如,直接在方程(34)中使用循环积分:(41)Generatedelectricalpower=∮cgẋ2dt/period会导致非常高的效率预测变异性。另一种方法是根据气体压力减去机械摩擦和电气机器损耗来计算平均发电功率,即使用方程(2)中的损耗模型来得到另一种效率预测,即:(42)Generatedelectricalpower=(∮(APx-AundPund)dx-∮(afsignẋ+bfẋ)ẋdt-∮cemẋ2dt)/period,其中所有方程(34)、(35)中的参数都是在方程(1)之后定义的。在没有运动学测量噪声且燃烧气体压力没有未知波动的情况下,使用方程(34)、(35)在方程(34)中产生的效率差异小于0.07%。效率差异高达0.07%的原因在于方程(42)(与方程(41)不同)涉及的是对位移的积分而不是时间积分。位移变量在时间上最初是等间距的,但在空间上不是等间距的。因此,为了进行积分,需要进行插值以获得等空间间距,这导致与使用方程(41)相比效率差异较小。然而,当存在噪声和燃烧气体压力的未知波动时,使用方程(41)计算的发电功率对参数cg的噪声诱导波动非常敏感,从而导致使用方程(34)计算的效率波动非常大。相比之下,在完全相同的条件下,使用方程(42)几乎不会产生效率波动,因为参数cg不出现在方程(42)中。因此,建议在方程(34)中使用方程(42)。为了评估噪声和压力波动对效率计算的影响,分别使用方程(34)、(35)在方程(34)中,表1显示了与噪声水平和压力变化相关的参数范围内的统计分析,给出了压力波动在−50%到+25%范围内的效率平均值和标准差,以及与状态变量范围2.5%和5%相关的噪声水平。表1. 通过方程(39)、(40)分别在方程(34)中计算的效率的平均值和标准差(样本量=50)。空白单元噪声水平:范围2.5%噪声水平:范围5%通过方程(41)在方程(34)中的效率通过方程(42)在方程(34)中的效率通过方程(41)在方程(34)中的效率通过方程(42)在方程(34)中的效率空白单元μ=-5.09%σ=115.82%μ=46.74%σ=0.015%μ=18.30%σ=98.03%μ=46.69%σ=0.031%空白单元μ=52.88%σ=52.30%μ=53.17%σ=0.0085%μ=31.02%σ=42.87%μ=53.15%σ=0.016%空白单元μ=57.13%σ=40.86%μ=55.19%σ=0.0095%μ=57.79%σ=31.33%μ=55.18%σ=0.010%空白单元μ=64.68%σ=25.57%μ=56.18%σ=0.0073%μ=52.82%σ=28.27%μ=56.17%σ=0.011%空白单元μ=61.00%σ=20.62%μ=56.76%σ=0.0075%μ=62.42%σ=21.16%μ=56.75%σ=0.0096%表2显示了通过方程(32)、(40)计算效率的各个组成部分与通过方程(31)获得理想轨迹效率的组成部分的比较。包括了0%和5%的范围噪声水平,以及−50%、0%和+50%的未知压力变化,表明在可比条件下,理想的发电机效率从55.42%通过最优跟踪降低到55.19%,即减少了0.23%。表2. 通过方程(32)、(40)计算效率的(半)功率组成部分的平均值和标准差,对于14千瓦的发电机(样本量=50);理想轨迹效率组成部分。效率组成部分空白单元噪声水平:0%噪声水平:5%压力变化压力变化−50%0%+50%−50%0%+50%压力功率(在方程(42)中)平均值1296瓦4131瓦6965瓦1297瓦4131瓦6966瓦标准差0000.34瓦0.76瓦1.16瓦机械摩擦功率损失(在方程(42)中)平均值136.12瓦135.29瓦134.74瓦136.12瓦135.36瓦134.81瓦标准差0000.30瓦0.34瓦0.36瓦电功率损失(在方程(42)中)平均值115.58瓦114.74瓦114.19瓦115.57瓦114.82瓦114.26瓦标准差0000.28瓦0.32瓦0.34瓦发电功率方程(42)平均值1045瓦3881瓦6716瓦1045瓦3881瓦6717瓦标准差0000.45瓦0.76瓦1.04瓦电机模式功率平均值17.74瓦17.89瓦18.02瓦19.04瓦19.14瓦19.40瓦标准差0000.34瓦0.42瓦0.35瓦发电模式功率平均值31.76瓦32.66瓦33.49瓦33.05瓦33.96瓦34.75瓦标准差0000.44瓦0.52瓦0.58瓦目标输入功率平均值2199瓦7000瓦11801瓦2199瓦7000瓦11801瓦标准差000000η转换平均值47.52%55.45%56.91%47.53%55.45%56.92%标准差0000.00020%0.00010%0.000088%通过方程(34)计算的效率平均值46.74%55.19%56.76%46.69%55.18%56.75%标准差0000.026%0.014%0.0094%理想轨迹效率(无噪声、压力变化或最优跟踪)输出功率−−7000瓦−−−−输入功率−−3879瓦−−−−理想轨迹效率方程(31)−−55.42%−−−−结果讨论总体而言,结果表明,使用图3中的算法与基于方程(36)、(37)、(38)的扩展阶段PI参数控制相结合,成功地实现了对理想目标活塞轨迹的稳健跟踪。由于压缩阶段被理想化为绝热压缩扫气空气(视为理想气体),随后是适合氢燃烧的瞬时热释放,因此Pl参数控制仅用于处理燃烧峰值压力不确定变化的影响,因此它对压缩阶段没有影响。特别是图5b、7和9中的结果证实,压缩过程中的跟踪似乎完全过滤掉了状态测量中的噪声影响。这归因于压缩阶段与膨胀阶段相比系统的线性。即使在膨胀阶段,跟踪仍然非常好,跟踪路径上的波动水平也非常低。为了定量比较所提出的算法(图3)与另一种跟踪方法在一系列噪声水平和未知干扰下的跟踪精度,使用了标准PID控制器。在没有状态测量噪声且没有任何不确定压力干扰的情况下,比例控制器在跟踪目标轨迹方面非常有效(增益值Kp可以低至零)。在噪声和峰值压力不确定的情况下,表3显示,对于样本量为10的情况,所提出的算法(图3)与PID跟踪的平均跟踪RMSE(以毫米为单位)。当手动调整增益值Kp=50、Kd=35和Ki=50时,在一系列噪声水平和未知压力变化下,PID控制器证明相当有效,但从未达到所提出算法的精度,特别是在燃烧压力变化为名义峰值的−50%的情况下,PID跟踪误差的幅度最大,比所提出算法大一个数量级。表3. 所提出的算法(图3)与PID跟踪的平均跟踪RMSE(以毫米为单位),增益Kp=50、Kd=35和Ki=50,在噪声水平为范围2.5%和5%以及未知压力变化为−50%到50%的情况下(样本量=10)。压力变化噪声水平:范围2.5%噪声水平:范围5%所提出的算法跟踪误差(毫米)PID跟踪误差(毫米)相对跟踪误差PID/所提出的算法所提出的算法跟踪误差(毫米)PID跟踪误差(毫米)相对跟踪误差PID/所提出的算法−50%0.526.5312.440.576.4811.29−25%0.274.5516.470.374.6112.3300.132.8120.560.282.829.96+25%0.251.455.730.361.544.24+50%0.421.323.080.501.332.63作为对所提出方法鲁棒性的最终测试,在10%的噪声水平和±60%的未知燃烧气体压力波动下进行了极端测试。对于+60%的燃烧压力波动,跟踪RMSE=0.72毫米,效率=56.88%。对于−60%的燃烧压力波动,跟踪RMSE=0.77毫米,效率=36.80%。这展示了所提出方法在极端条件下的鲁棒性。所提出方法的一个显著优势是Riccati和向量解只需要(离线)获得一次。使用Matlab初始值求解器ode45,在配备第九代CORE i5处理器的台式计算机上,计算方程(9)、(10)的Riccati和向量解以达到相对和绝对容差精度1e-6,只需不到1个CPU秒。之后的计算需求,涉及方程(36)、(37)、(38),非常小,每个时间步长所需的浮点运算少于20次。因此,对于使用相对便宜的计算硬件的硬件实现,经济和计算成本对于实时应用来说是完全现实的。与NMPC [16]和前馈控制 [17] 相比,所提出策略的优势从四个核心指标中进一步凸显出来:跟踪误差、计算量(浮点运算/时间步长)、效率变化和硬件成本。在使用数学模型测试所提出的跟踪控制方法时,做了一些假设,特别是假设瞬时热释放、弹簧刚度组件的线性和非线性阻尼模型的形式。一般来说,如果这些假设被违反,并且使用了非氢燃料,那么所提出的控制方法的性能很可能会变得次优。然而,在氢燃料内燃机 [26] 中,随着适当的喷射时间和稀薄分层充气,热释放几乎是瞬时发生的,紧随理想的奥托循环之后。如果违反弹簧刚度组件的线性假设,这不会过度影响整体刚度,因为它包括了绝热压缩的主要效应,而在大振幅下,绝热压缩本质上是非线性的。就研究限制和未来方向而言,由于研究的重点是共振自由活塞发电机的理想活塞轨迹的稳健和高效跟踪,因此获得准确的非线性阻尼模型非常重要。为了抵消这种影响,建议特定发电机硬件的阻尼模型应基于物理硬件验证,包括实验测量和系统识别(如当前研究中使用的共振FPEG硬件和测量数据 [20])。此外,尽管仿真模型使用非线性来表示硬件,但实际硬件组件引入了延迟。功率电子开关、电气机器驱动和传感器的响应时间可能会影响控制方法的稳定性,需要根据实验硬件验证进行评估和考虑。机器学习也可以用来通过优化性能指数方程(5)中的矩阵参数 [Q] 和 [R] 的选择来提高跟踪精度。如果使用其他燃料,其特性与氢不同(并且已经构建了理想轨迹),则可以通过将循环分成多个部分(即超过两个部分)并将膨胀阶段视为一系列较小的瞬时热释放过程来调整所提出的跟踪方法。构建等效的线性模型以及随后为非线性模型的不同膨胀阶段构建相应的控制律,都可以离线计算。此外,由于PI参数控制策略可以以其当前形式应用,所提出的算法有潜力跟踪涉及不同燃料运行的共振FPEG的轨迹。使用方法 [7] 根据指定的功率、压缩比和空气-燃料比构建理想目标活塞轨迹。这些目标轨迹被称为理想的,因为它们最大化了发电机效率。当指定不同的功率时,计算出的理想目标轨迹将会改变,原则上,应使用多个预先计算的理想活塞轨迹来最大化不同指定功率的效率。随后使用图3中给出的所提出的算法跟踪这些预先计算的理想活塞轨迹,也需要预先计算多对等效线性模型,以及多组Riccati方程(9)和向量方程(10)的解。但是,尽管所提出的跟踪策略旨在跟踪对应于特定功率的理想活塞轨迹,没有理由它不能跟踪不同功率下的非理想目标轨迹。在特定功率下跟踪非理想目标活塞轨迹的问题在于,必须接受发电机效率通常会低于采用与该特定功率相对应的理想目标轨迹时的效率这一事实。5. 结论:提出了一种新的次优控制策略,并在模拟数据上进行了测试,以跟踪使用氢燃料运行的共振自由活塞发电机的理想活塞轨迹。该策略涉及在状态测量存在加性高斯噪声的情况下进行非线性跟踪,以及燃烧后气缸压力的未知波动。所提出的方法首先采用LQG算法来跟踪理想活塞轨迹。在反馈律中使用了离线生成的Riccati方程和向量方程解,以使非线性发电机能够跟踪理想活塞轨迹。即使在状态测量存在实际噪声的情况下,这种方法也被证明在轨迹跟踪方面表现优异。然而,仅靠这种策略本身无法有效应对气缸燃烧气体压力在一个周期内的大幅未知波动。因此,在膨胀阶段提出并测试了一种额外的控制方法,该方法采用基于跟踪误差的比例积分参数控制策略。通过使用非线性发电机模型进行仿真测试,证明这种组合控制策略在计算效率和高鲁棒性方面表现良好。所提出方法的一个显著优势是,Riccati方程和向量方程解只需离线计算一次,而实现比例积分参数控制所需的计算量每个时间步长不到20次浮点运算。这可以使用非常廉价的计算硬件来实现。因此,考虑到所达到的跟踪精度和最小的在线计算成本,该方法完全适用于实时应用。关于跟踪控制是降低还是提高整体系统效率的问题已经得到了解答。结论是,次优跟踪控制会略微降低整体系统效率。对于所研究的14千瓦系统功率,所提出的跟踪方法仅会使整体发电机效率从理想轨迹效率55.42%降低约0.2%。最后,在实际硬件上部署所提出算法时可能遇到的主要挑战包括:i) 需要确定由方程(1)、(2)给出的非线性发电机模型,并为特定发电机分配适当的参数值;ii) 选择合适的传感器硬件以适当的采样率测量状态向量x;以及iii) 确保电气机器参数cg能够在周期内以所需频率进行适当切换。
CRediT作者贡献声明:
J.F. Dunne:撰写——原始草稿。