4 组态王与西门子S7-200的几种通信方式
4.1 组态王的通讯机制
组态王把每一台与之通讯的设备看作是外部设备,为实现和外部设备的通讯,组态王内置有大量的设备驱动作为外部设备的通讯接口。在开发过程中,只需根据工程浏览器提供的“设备配置向导”,一步步完成连接过程,即可实现组态王和相应外部设备驱动的连接。在运行期间,组态王可以通过驱动接口和外部设备交换数据,包括采集数据和发送数据或指令。组态王的驱动程序采用ActiveX技术,每一驱动都是一个COM对象,这种方式使驱动和组态王构成一个完整的系统,从而保证运行系统的高效率,如图1所示。因此,组态王可以与一些常用I/O设备直接进行通讯,如可编程控制器(PLC)、智能模块、板卡、智能仪表等。组态王与I/O设备之间的数据交换采用五种方式:串行通讯方式、DDE方式、板卡方式、网络节点方式、人机接口卡方式。
图1 组态王与外部设备通讯示意图
4.2 组态王与S7-200的PPI通信方式
PPI(Point-to-Point)是西门子专为S7-200系列开发的一个通讯协议,为主/从协议,PC机为主站,S7-200为从站。该方式下有两种硬件连接方法,一种是使用PPI电缆将PC机串口和S7-200的通讯口相连,采用串行通讯方式。另一种是PC机通过CP5611通讯卡与S7-200相连。在第一种方式下,使用PLC编程软件STEP 7-Micro/WIN32安装通讯硬件,在“SET PG/PC Interface”对话框中配置PC/PPI cable,选择Interface Parameter Assignment为PPI,并设置PPI参数默认值,双击通讯框中得刷新图标后建立与S7-200的通信连接。在第二种方式下,将CP5611卡安装在PC机的插槽中,用连接带缆将CP5611卡与S7-200的PORT口相连,安装STEP 7-Micro/WIN32和STEP 7 V5.0 +ServicePack5(或STEP 7 V5.1+ServicePack 2),运行PG/PC-interface parameterisation,将用户界面配置为CP5611 (PPI)方式。这两种方式的上位机组态王的设置基本相同,首先使用“设备配置向导” 定义外部设备,分别选择西门子S7-200系列PPI通信和西门子S7-200系列通讯卡通信,并设定如下通信参数:波特率9600bps,数据位8位,停止位1位,偶校验。在设定PLC地址时,两种方式有所不同,前者将PLC地址设为默认地址2。后者采用“PLC地址.2”地址格式,小数点前的数字为有效地址PLC的地址(即站号),小数点后为数字2,所设定的地址范围为2.2~126.2,其中PLC的地址可通过编程软件STEP 7-Micro/WIN设置来实现。
在组态王的“数据字典”中定义相关变量,选择变量类型为I/O型,并选择连接设备,指定所访问的寄存器名及寄存器类型。注意,组态王只支持V寄存器,如果要监控Q、I、M寄存器,可以先在PLC程序中将Q、I、M寄存器传至V寄存器,组态王通过对V寄存器的操作来实现对Q、I、M寄存器的监控。另外,组态王不支持直接以I/O离散变量的定义,需以字节(BYTE)形式存取,每一BYTE类型(8个BIT位)对应8个开关量的输入或输出状态,即BYTE的0~7位分别对应输入或输出的0~7开关量通道,如果要显示或控制某一开关量通道的状态,可以使用组态王提供的BIT()或BITSET()函数进行取位或置位。在制作好的监控画面中,将画面的图素与定义的变量建立“动画连接”,在TouchVew中运行,即可建立实时通信,得到一个反映工业现场的监控画面。