一、材料说明:
1、温湿度传感器说明
卡轨温湿度传感器485工业级车间内置探头modbus协议导轨壳变送器,温湿度传感器实物图如下:
温湿度传感器的通讯说明:
2、西门子S7-200 SMART PLC 型号ST20
实物接线如下:
二、程序如下:
STL语句:
Network 1
// 初始化
LD SM0.1
R M2.0, 8
R M4.0, 8
R M0.0, 2
Network 2
LD M0.0
EU
S M0.1, 1
Network 3
// modbus初始化,温湿度传感器的默认波特率是4800
LD SM0.0
= L60.0
LD SM0.0
= L63.7
LD L60.0
CALL SBR1, L63.7, 4800, 0, 0, +1000, M0.0, MB1
Network 4
// 温湿度传感器默认的从站地址为1,,温度传感器的储存器起始地址为40001
LD SM0.5
= L60.0
LD SM0.5
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 0, 40001, +2, &VB100, M2.2, MB4
Network 5
// 如果modbus通讯错误,则MB4为1,则FILL_N执行给2个0填充到vw202开始的2个位置
LD M2.2
AB<> MB4, 0
FILL +0, VW100, 2
Network 6
// VW100为湿度(VD110为湿度显示) VW102为温度(VD112为温度显示)
LD SM0.0
LPS
ITD VW100, VD110
AENO
DTR VD110, VD110
AENO
/R 10.0, VD110
LPP
ITD VW102, VD112
AENO
DTR VD112, VD112
AENO
/R 10.0, VD112
三、运行效果图:
西门子plc的FILL_N指令用法:填表(或者清空表)
FILL_N相信大家都用的比较多,主要是用来清空表的内容的,网上查到的内容多不够白话,特写一下教程,方便初学者理解,
FILL_N指令包含两个个输入和一个输出。下面这个例子就是讲2个0填充到vw100开始的2个位置,相当于清空表。如果modbus通信错误,则会执行清空温湿度数据的操作。
读取的数据效果: