PLC温度控制程序

  • 格式:doc
  • 大小:37.50 KB
  • 文档页数:4

比例带 : DM51

积分时间 : DM52

微分时间 : DM53

滞后值 : DM54

控制周期 : DM55

偏移量 : DM56

数据刷新 : 22905

l PLC程序部分

002:PID的输入字

102:PID的输出字

[NETWORK]

Name="Action Check" //常规检查

[STATEMENTLIST]

LD 253.13 //常ON

OUT TR0

CMP 002 #FFFF //确定温控单元是否完成初始化

AND NOT 255.06 //等于

OUT 041.15 //初始化完成

LD TR0

AND 041.15

OUT TR1

AND NOT 040.10 //不在参数设置状态

MOV DM0050 102 //将设置温度DM50传送给PID输出字

LD TR1

MOV 002 DM0057 //将002传送到DM57

[NETWORK]

Name="Setting Start"//设置开始

[STATEMENTLIST]

LD 253.13

OUT TR0

AND 229.05 //触摸屏上的开始设置开关

DIFU 080.05 //设置微分

LD TR0

AND 041.15

AND 080.05

SET 040.01 //开始设置标志位1

SET 040.10 //开始设置标志位2

[NETWORK]

Name="Poportion"//比例带设置

[STATEMENTLIST]

LD 040.01 OUT TR0

AND NOT 042.01

MOV #C110 102 //读输出边与输入边的比例带

CMP 002 #C110 //比较输入字是否变成C110

AND 255.06 //等于

SET 042.01 //设置比例带标志

LD TR0

AND 042.01

MOV DM0051 102 //将比例带的设定值写入输出字

CMP 002 DM0051 //是否写入

AND 255.06

RSET 040.01 //复位标志1

RSET 042.01 //复位比例带标志

SET 040.02 //向下继续设置标志

[NETWORK]

Name="Integral"//积分时间设置

[STATEMENTLIST]

LD 040.02

OUT TR0

AND NOT 042.02

MOV #C220 102 //读输出边与输入边的积分

CMP 002 #C220 //比较输入字是否变成C220

AND 255.06

SET 042.02 //设置积分标志

LD TR0

AND 042.02

MOV DM0052 102 //将积分的设定值写入输出字

CMP 002 DM0052 //是否写入

AND 255.06

RSET 040.02

RSET 042.02

SET 040.03 //向下继续设置标志

[NETWORK]

Name="differential"//微分时间设置

[STATEMENTLIST]

LD 040.03

OUT TR0

AND NOT 042.03

MOV #C330 102 //读输出边与输入边的微分

CMP 002 #C330 //比较输入字是否变成C330

AND 255.06

SET 042.03 //设置微分标志 LD TR0

AND 042.03

MOV DM0053 102 /将微分的设定值写入输出字

CMP 002 DM0053 //是否写入

AND 255.06

RSET 040.03

RSET 042.03

SET 040.04 //向下继续设置标志

[NETWORK]

Name="Hysteresis"//滞后值设置

[STATEMENTLIST]

LD 040.04

OUT TR0

AND NOT 042.04

MOV #C440 102 //读输出边与输入边的滞后值

CMP 002 #C440 //比较输入字是否变成C440

AND 255.06

SET 042.04 设置滞后值标志

LD TR0

AND 042.04

MOV DM0054 102 /将滞后值的设定值写入输出字

CMP 002 DM0054 //是否写入

AND 255.06

RSET 040.04

RSET 042.04

SET 040.05 //向下继续设置标志

[NETWORK]

Name="Period"//控制周期设置

[STATEMENTLIST]

LD 040.05

OUT TR0

AND NOT 042.05

MOV #C550 102 //读输出边与输入边的控制周期

CMP 002 #C550 //比较输入字是否变成C550

AND 255.06

SET 042.05 //设置控制周期标志

LD TR0

AND 042.05

MOV DM0055 102 将控制周期的设定值写入输出字

CMP 002 DM0055 是否写入

AND 255.06

RSET 040.05 RSET 042.05

SET 040.06 //向下继续设置标志

[NETWORK]

Name="Shift"//偏移量设置

[STATEMENTLIST]

LD 040.06

OUT TR0

AND NOT 042.06

MOV #C660 102 //读输出边与输入边的偏移量

CMP 002 #C660 //比较输入字是否变成C660

AND 255.06

SET 042.06 //设置偏移量标志

LD TR0

AND 042.06

MOV DM0056 102 //将偏移量的设定值写入输出字

CMP 002 DM0056 //是否写入

AND 255.06

RSET 040.06

RSET 042.06

SET 040.00

[NETWORK]

Name="Return"//返回

[STATEMENTLIST]

LD 040.00

OUT TR0

AND NOT 042.00

MOV #C070 102 //读输入边的处理值

CMP 002 #C070 比较输入字变成C070

AND 255.06

SET 042.00 //返回标志

LD TR0

AND 042.00

MOV DM0050 102 将设定温度值写入输出字

RSET 040.00

RSET 042.00

RSET 040.10