使用Modbus 协议建立S7-200 与威纶通触摸屏之间的通讯 在使用西门子S7-200 时,在不增加其它通讯接口模块时,威纶通触摸屏可以通讯PPI 协议与S7-200 直接通讯。但这种通讯方式由于受通讯协议本身限制,在通讯数据较多时,通讯速度相对较慢,使用Modbus协议则通讯速度可以提高约一倍。下面就介绍一下怎么使用Modbus 协议建立S7-200 与威纶通触摸屏之间的通讯: 硬件连接 在使用Modbus 协议时,计算机与S7-200 之间通讯直接使用PPI 通讯电缆即可。 选配一触摸屏通讯端口 我们这里以MT6070IH2 和 s7-200 进行通讯 S7-200 的通讯端口是一个 9 孔(famel)D 型插头,针脚分布如下所示: S7-200 通讯端口(端口0)与威纶通触摸屏的通讯连接,如下图所示: S7-200 编程及设置 在缺省情况下 S7-200 的通讯端口是不支持 Modbus 协议的,要想实现 Modbus 通讯必需在PLC 的主程序模块中调用Modbus 通讯子程序。Modbus 通讯子程序可以从“STEP 7-Micro/WIN Add-On: Instruction Library (STEP 7-Micro/WIN 附件:指令库)”中获得。在安装了“STEP 7-Micro/WIN 附件:指令库”后,在导航树“指令/库”下面我们可以找到“Modbus Protocol”。在其下面包含了 MBUS_INIT 和 MBUS_SLAVE 两个子程序,MBUS_INIT 用于对Modbus 通讯进行初始化,MBUS_SLAVE 用于在指定端口上提供Modbus 从站通讯服务。下在介绍如何在主程序中调相关子程序及环境参数设置: 调用Modbus 通讯初始化命令 首先为MBUS_INIT 命令建立一个触发条件(只触发一次),如:SM0.1;从导航树“指令/库/ Modbus Protocol”下面,将MBUS_INIT 指令拖拽到主程序块中。再就是正确设置MBUS_INIT 各项调用参数和执行结果输出地址,我们可以建立一下如下图所示初始化调用过程: Mode:协议类型,1-Modbus 协议;0-PPI 协议。 Addr: PLC 地址,1~247,。 Baud: 通讯波特率,1200、2400、4800、9600、19200、38400、57600 或 11520。 Parity: 校验方式,0-无校验;1-奇数校验;2-偶数校验。 Delay:信息结束超时时间,0~32767,有线连接设置为0 即可。 MaxIQ:0~128,映射在离散输入寄存器或离散输出寄存器中的 I 或 Q 数。建议为:128。 MaxAI:0~32;映射在模拟输入寄存器中AIW 数;CPU 221 为0,CPU 222 为16,CPU 224、226 和226XM为32。 MaxHold:V 内存映射在保持寄存器中的寄存器数。 HoldStart:V 内存的映射...