您现在的位置是:首页 > PLC技术 > PLC技术
PLC的PID算法
来源:艾特贸易2017-06-05
简介在模拟量的控制中,经常用到 PID 运算来执行 PID 回路的功能, PID 回路指令使这一任务的编程和实现变得非常容易。 如果一个 PID 回路的输出 M(t) 是时间的函数,则可以看作是比例项、
在模拟量的控制中,经常用到PID运算来执行PID回路的功能,PID回路指令使这一任务的编程和实现变得非常容易。 如果一个PID回路的输出M(t)是时间的函数,则可以看作是比例项、积分项和微分项3部分之和,即: 以上各量都是连续量,第一项为比例项,最后一项为微分项,中间两项为积分项。其中e是给定值与被控制变量之差,即回路偏差。Kc为回路的增益。用数字计算机处理这样的控制算式,连续的算式必须周期采样进行离散化,同时各信号也要离散化,公式如下: MPn=Kc×(SPn-PVn)+Kc×Ts/Ti×(SPn-PVn)+MX+Kc×Td/Ts×(PVn-1-PVn) 公式中包含9个用来控制和监视PID运算的参数,在PID指令使用时构成回路表,回路表的格式如表5.20所示。 表5.20 PID回路表
参数 地址偏移量 数据格式 I/O类型 描述 过程变量当前值PVn 0 双字,实数 I 过程变量,0.0~1.0 给定值SPn 4 双字,实数 I 给定值,0.0~1.0 输出值Mn 8 双字,实数 I/O 输出值,0.0~1.0 增益Kc 12 双字,实数 I 比例常数,正、负 采样时间Ts 16 双字,实数 I 单位为s,正数 积分时间TI 20 双字,实数 I 单位为分钟,正数 微分时间TD 24 双字,实数 I 单位为分钟,正数 积分项前值MX 28 双字,实数 I/O 积分项前值,0.0~1.0 过程变量前值PVn-1 32 双字,实数 I/O 最近一次PID变量值 回路表初始化程序实例: 如果Kc为0.4,Ts为0.2秒,Ti为30分钟,Td为15分钟,则可以建立一个子程序SBR0用来对回路表进行初始化。程序如图5.19所示。 图5.19 回路表初始化子程序SBR0
点击排行
