以下是PLC程序,为了方便贴出,已转换为STL
TITLE=程序注释: Modbus 主站读写程序
Network 1
// 第一扫秒周期, 复位各标志位和起始位
LD SM0.1
R M0.0, 2
Network 2
// Modbus 主站初始化完成后, 启动读写指令
LD M0.0
EU
S M0.1, 1
Network 3
LD SM0.0
AN M0.2
TON T40, 15
Network 4
LD T40
= M0.2
Network 5 // 网络标题
LD SM0.0
= L60.0
LD SM0.0
= L63.7
LD L60.0
CALL SBR1, L63.7, 9600, 0, 1000, M0.0, MB1
Network 6
// 读取从站保持寄存器的数据
LD M0.1
O M0.2
= L60.0
LD M0.1
EU
LD M0.2
EU
OLD
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 0, 40002, 13, &VB1000, M2.1, MB2
Network 7
// 读取从站保持寄存器的数据完成,复位请求
LD M2.1
R M0.1, 1
R M0.2, 1
Network 8
LD SM0.0
MOVW VW1000, VW1000
MOVW VW1002, VW1002
MOVW VW1004, VW1004
MOVW VW1006, VW1006
MOVW VW1008, VW1008
MOVW VW1010, VW1010
MOVW VW1018, VW1018
MOVW VW1020, VW1020
MOVW VW1022, VW1022
MOVW VW1024, VW1024