• 沒有找到結果。

MDn ——第采样时刻的微分项。

修改回路表中积分项前值时,应保证MX的值在0.0~1.0之间。调整积分项前

值后使输出值回到(0.0~1.0)范围,可以提高系统的响应性能。

4) PID指令运行出错条件

PID指令不检查回路表中的值是否在范围之内,所以必须确保过程变 量、给定值、输出值、积分项前值、过程变量前值在0.0~1.0之间。如果 指令操作数超出范围,CPU会产生编译错误,导致编译失败。

如果PID运算发生错误,那么特殊存储器标志位SM1.1(溢出或非法 值)会被置1,并且中止PID指令的执行。要想消除这种错误,单靠改变回 路中的输出值是不够的,正确的方法是在下一次执行PID运算之前,改变 引起运算错误的输入值,而不是更新输出值。

长沙工控帮教育科技有限公司整理

1) 控制要求

某水箱其出水口流量是变化的,进水口流量可通过调节水泵转速控 制,水位检测由差压变送器完成。现对水箱进行水位控制,使其水位保 持在满水位的75%。以PLC为主控制器,采用EM235模拟量模块实现模 拟量和数字量的转换,差压变送器送出的水位测量值通过模拟量输入通 道送入PLC中,PID回路输出值通过模拟量转化控制变频器实现对水泵 转速的调节。

3. 指令应用举例

长沙工控帮教育科技有限公司整理

2) 控制程序的实现

在以上要求中,水位测量值为过程变量PV,满水位的75%为给定值SP。

本例中过程变量PV和回路输出量归一化采用单极性方案。控制方式采用比例

、积分控制,PID参数采用如下设置:Kc=0.25,Ts=0.1s,T

I

=30min

⑴ 系统启动时,关闭出水口,用手动方式控制进水,使水位达到满水位的 75%,然后打开出水口,同时将控制方式从“手动”转为“自动”。I0.0控制 PID指令的启动,只需提供一个上升沿。

⑵ SBR_0子程序中为PID参数设置及定时中断程序的启动。

⑶ 定时中断程序INT_0中为数据的标准化、PID指令的执行、及控制量的输 出。

长沙工控帮教育科技有限公司整理

长沙工控帮教育科技有限公司整理

(1) 采用主程序、子程序、中断程序的程序结构形式,可优化程序结构

,减少周期扫描时间。

(2) 在子程序中,先进行组态编程的初始化工作,将5个固定值的参数 (SPn、Kc、Ts、T

I

、T

D

)填入回路表。然后再设置定时中断,以便周期 地执行PID指令。

4. PID指令使用说明

(3) 在中断程序中完成3个任务。

① 将由模拟量输入模块提供的过程变量PVn转换成标准化的实数(0.0

~1.0之间的实数)并填入回路表。

② 设置PID指令的无扰动切换的条件(例I0.0),并执行PID指令。使 系统由手动方式无扰动地切换到自动方式。将参数Mn、SPn、 、 MX 先后填入回路表,完成回路表的组态编程,从而实现周期地执行PID 指令。

③ 将PID运算输出的标准化实数值Mn先刻度化,然后再转换成有符 号整数(INT),最后送至模拟量输出模块,以实现对外部设备的控制。

1

PV n

长沙工控帮教育科技有限公司整理

相關文件