想找个例如温度控制之类的小程序,低温启动加热器,高温断开加热器,详细的程序,对这个有些迷惑,想参考学习,那位老师不吝赐教
问题补充:
用温度传感器,4-20ma
最佳答案
譬如 你的模拟量输入模块 接入的是标准型的PT100 地址为pi256 读进来的温度值除以10就可以了
程序:先转换下,读进来的温度值
A(
A(
L PIW 256
T #TEMP0
SET
SAVE
CLR
A BR
)
JNB _001
L #TEMP0
DTR
T #TEMP1
SET
SAVE
CLR
_001: A BR
)
JNB _002
L #TEMP1
L 1.000000e+001
/R
T DB30.DBD2
_002: NOP 0
根据工艺,进行相应的温度控制,当t1<DB30.DBD2<t2 就关闭 加热器 q
程序
O(
L #t1
L DB30.DBD2
<R
)
O(
L DB30.DBD2
L #t2
>R
)
= #temp2
当DB30.DBD2>T2 或是DB30.DBD2<T1 就打开 加热器 q
程序
A(
L DB30.DBD2
L #t1
<=R
)
A(
L DB30.DBD2
L #t2
<=R
)
AN #temp2
= #q
你把三端程序转化为梯形图看看就明白了!
问题补充:
接入的是4-20ma的传感器信号,对应的数字量为0-27648 ,你可以进行线性转换。
PLC的模拟量输入模块把采集到的标准模拟信号(比如4~20mA)转换成0-27648的整数值,放进PIW的缓存区。这时候,在PLC里监视到的PIW数值,不管它是以什么格式显示的,(比如实数)。实际上,它都是一个0-27648的整数。
此时的PIW里存储的数值,并不是传感器采集到的物理量。而是和这个物理量有线性关系的
一个整数。你需要用一个量程转换才能把它转换成需要显示的物理量。实际上西门子提供了一个专用的功能块,就是调用FC105,你只需要输入模拟量的量程和PIW的地址,就可以直接得到物理量的数值。
那么这个物理量的值就是你需要的工程值。
编程思路跟上面的加热控制一样。用这个工程值根据工艺,进行数据的比对,进行判别,实现你要的工艺控制!
提问者对于答案的评价:
谢谢左传,只是转化不成梯形图,有错误
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc249542.html