摘 要: 对传统的PID 控制算法进行了深入的分析, 结合电动汽车充电电源项目, 对原PID 算法中的积分部分进行了改进, 先后采用了分段积分, 变速积分, 非线性变速积分等方法。经过实验验证, 相比传统的PID算法, 上述改进方法的效果十分显着。
1 引 言
PID算法是单片机实际应用中普遍采用的控制方法, 在电力、机械、化工等行业中获得广泛应用。但是, PID算法并非完美无缺, 它也存在一些问题。
例如: PID 控制中的积分作用主要是用于消除稳态误差(静差) , 而在动态过程中过强的积分作用却可能使系统的稳定性变坏, 主要表现在超调与积分饱和。当设定值作大幅度改变或者设定值与反馈值之差很大时往往出现太大的超调量或过渡时间长。
PID控制算法中, 积分控制用来消除系统的稳态误差, 因为只要存在偏差, 它的积分所产生的信号总是用来消除稳态误差的, 直到偏差为零, 积分的作用才停止。系统对积分项的要求是: 偏差大时积分作用应减弱甚至全无, 而偏差小时则应加强。这样既保持了积分的作用, 又减少了超调量, 使得控制性能有较大的改进。基于这个思想, 作者结合实际工程项目, 在论述了数字PID基本原理的基础上, 着重对积分项进行了研究分析。
实际工程项目是75KW 纯电动汽车充电电源系统, 此充电电源的额定输出为500V /150A。当电网电压波动时, 充电电源输出的电压电流上下波动范围在正负1% 以内, 其采用的是改进的PID 算法, 实验证明, 对积分部分的优化处理效果显着。
2 PID算法简介
PID 控制技术是基于反馈的控制方法。反馈理论的要素包括三个部分: 测量、比较和执行。将所要控制的变量经过反馈电路得到的测量值与给定值相比较, 用它们之间的偏差E 进行比例( P)、积分( I)、微分( D )的计算, 所得结果U 作为执行器的输入, 执行器的输出调节控制对象, 进而实现对系统的控制。比例部分的作用可以减少稳态误差, 提高系统的动态响应速度。
微分部分的作用, 实质上是和偏差的变化速度有关, 也就是微分作用跟偏差的变化率有关系。微分控制能够预测偏差, 产生超前的校正作用, 因此,微分控制可以很好的改善动态性能。Td 为微分常数, Td 越大, 微分作用越强, 反之微分作用越弱。
积分作用可以消除系统的稳态误差, 提高控制的稳态。Ti 为积分常数, T i 越大, 积分作用越弱, 反之则积分作用强。但是积分作用因产生负相移, 将使控制系统稳定裕度下降, 系统动态性能变差。当系统在强扰动作用下, 或给定输入作阶跃变化时, 系统输出往往产生较大的超调和长时间的振荡。
3 积分部分的优化处理
传统数字位置式PID表达式如下:
在传统的PID算法中, 积分常数K i 在整个调节过程中其值不变。但系统对积分的要求是: 偏差大时, 积分作用减弱或为零; 反之则加强。否则, 当偏差大时会产生超调, 甚至出现严重的积分饱和。针对这种情况, 有几种积分部分的优化方法。
3. 1 分段积分
根据偏差大小改变积分增益值。把偏差|E |分成不同的区间, 每个区间对应一个增益常数k, 分段积分表达式如下所示:
上式中, 传统积分项变为,即在累加积分前加上了增益系数k。k 取值情况如下:
实际应用中, 可根据偏差|E |的大小分为更多的区间, k的取值也可根据实际情况确定。
3. 2 变速积分
分段积分相比传统PID对控制效果有了显着的提高, 但是分段积分也有自己的缺点。例如电池充电过程中电池总电压变化比较缓慢, 积分系数k 取大了会产生超调, 甚至积分饱和, 取小了又迟迟不能消除静差. 如果根据测量值和设定值的偏差变化, 设定不同的分段积分系数, 能在一定程度上改善过程的稳定性、响应速度和超调, 但所设置的分段积分系数人为经验因素较多, 没能很好地反映偏差的变化,会对系统性能指标产生一定的影响。
变速积分也是为了满足系统对积分项的要求,既偏差大时积分作用应减弱甚至全无, 而在偏差小时则应加强。电池充电过程的总电压变化比较缓慢, 积分系数取大了会产生超调, 甚至积分饱和, 取小了又迟迟不能消除静差。针对这一问题, 在电动汽车充电电源中根据电压的测量值和设定值的偏差大小, 改变PID算法中积分项的累加速度, 取得了显着效果。
该充电电源系统采用的是位置式PID 算法, 其中原表达式中积分部分为:
我们引入一个与偏差E ( k )有关的函数f (E( k) ), 使积分部分变为:
这样, 当偏差|E |增大时, 积分部分的作用变小, 当偏差|E |变小时, 积分部分的作用变大, 而且这种变化跟|E |有关系, 能更好的适应系统状况的变化。其中f (E ( k) )的表达式如下所式:
3. 3 非线性变速积分
变速积分基本消除了积分饱和现象, 同时大大减小了超调量, 容易使系统稳定。但对于在大范围突然变化时产生的积分饱和现象仍不能很好地消除, 这时可采用非线性变速积分的PID 算法。非线性变速积分算法的思想是将PID 调节器输出限定在有效的范围内, 避免U ( k )超出执行机构动作范围而产生饱和。程序的框图如图1所示。
图1 非线性积分程序的框图
4 基于非线性变速积分PID 算法的电动汽车充电电源
此75KW (额定输出500V /150A )充电电源是专为纯电动大巴设计的大功率充电机, 由一个充电机控制器和三个并联充电模块组成。充电模块采用隔离型全桥式DC /DC 变换器作为主体结构。充电机控制器以单片机( 型号为MC9S12DT128)为。
MC9S12DT128有三路CAN, 其中CAN0 和CAN1都扩展成隔离的接口分别和充电模块及车上的电池管理( BMS)通信。CAN0网络负责充电机控制器控制充电模块的启停、往充电模块发送电压电流指令, 充电模块往控制器发送电压电流数据、故障(过流, 过压, 过温等)信息、当前状态(停止、充电)等; CAN1网络负责BMS控制充电机的启停、往充电机发送充电电压电流指令、发送当前电池的主要数据信息(单体电池电压, SOC, 电池温度等)。图2为充电机-电动汽车网络结构框图。
图2 充电机-电动汽车网络结构框图
图3 为基于非线性变速积分的充电电源原理图。其控制思想如下: 采用电压外环, 电流内环双闭环控制方式。充电机控制器通过数字PID实现对电压环的调节, 充电模块通过模拟PID 实现对电流环的调节。限制电压给定Vr 由控制器的按键板输入,输出电压反馈Vf 由霍尔电压传感器HNV025A 采集输出母线电压后送入单片机的A /D口, 采样时间为3. 3m s。充电机一旦启动, 单片机就运行非线性变速积分PID 算法的子程序(采用中断方式, 每3. 3ms中断) , 之后得到充电机运行电流指令I’r, 再将I‘r 除以充电模块的台数n, 就得到每一个模块的电流指令I’r。控制器通过CAN0 网络将电流指令I’r以广播方式发送充电模块, 终实现并联模块的均流。
图3 基于非线性变速积分的充电电源原理图
5 实验结果
图4为充电机从启动到运行过程中(输出为400V /120A )的电压波形图, 其中图4 ( a) 采用传统的PID 算法; 图4( b)采用非线性变速积分PID 算法。可以看出, 图4( a)由于启动阶段过程中积分饱和, 存在明显的电压尖峰(约为440V ), 超调量大(约为10% ) , 过渡时间长(约为8s) ; 图4( b )避免了积分饱和, 几乎没有超调量, 且过渡时间较短(约为6s), 系统稳定性好。
( a)采用传统的PID 电压波形
( b )采用非线性变速积分电压波形
图4 充电机启动阶段输出电压波形。
6 结束语
分段积分, 变速积分, 非线性变速积分等优化方法相对于传统PID 算法都有很大改进, 其中非线性变速积分更为完善, 它既有控制速度快、超调小、线性控制高等特点, 又有防止积分饱和的优势, 有很强的实用性。
[1]. MC9S12DT128 datasheet https://www.dzsc.com/datasheet/MC9S12DT128_1022330.html.
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。