1 接口定义 S7—200 的通讯口为 RS485 物理口(9 针口),其引脚定义如下图所示
2 接线将端口 0 或者端口 1 的引脚 3 接安科瑞仪表的通讯端子的 A+,引脚 8 接安科瑞仪表的通讯端子的 B-
3 说明S7-200 CPU 上的通信口在电气上是标准的 RS—485 半双工串行通信口,此串行字符通信的格式:1个起始位;7/8 位数据位;1 位奇/偶/无校验;1 停止位
通信波特率可以设置为1200、2400、4800、9600、19200、38400、57600 或 112500,符合这些格式的串行通讯设备可以和 S7—200 进行自由口通讯,Modbus RTU 指令库就是使用自由口编程实现的
4 Modbus RTU 主站库使用 Modbus 主站指令库时需要注意的几点:需要 S7-200 的编程软件是 Micro/WIN V4
0 SP5 及以上版本;Modbus RTU 主站库对 CPU 的版本有要求,CPU 的版本必须为 2
00 或者 2
01(即订货号为 6ES721*-***23—0BA*);Modbus 主站可读/写的最大数据量为 120 个字(指每一个 MBUS_MSG 指令);Modbus 主站库支持 Port0 和 Port1(从站库只支持 Port0 口),本例中用 Port0;使用 Modbus 库时必须对库存储区进行分配,见下图设置,而且分配的空间不能和程序中其它空间冲突,否则编译调用会报错
图 4 库存储区设置Modbus 主站库支持的功能码和地址对应关系: Modbus 地址读 / 写Modbus 从站须支持的功能00001~09999读功能 1:读输出点 数字量输出写功能 5:写单个输出点 功能 15:写多个输出点10001~19999读功能 2:读输入点 数字量输入30001~39999读功能 4:读输入寄