您现在的位置是:首页 > PLC技术 > PLC技术
S7-200 PLC自由通信口模式的应用
来源:艾特贸易2017-06-05
简介S7 - 200 PLC 自由口模式可以实现利用程序控制 S7 - 200 PLC CPU 的通信端口,通过 PC/PPI 电缆以及自由口功能,可以将 S7 - 200 PLC 连接到带有 RS - 232 兼容接口的多种设备,如条形码阅读器、调
S7 - 200 PLC自由口模式可以实现利用程序控制S7 - 200 PLC CPU的通信端口,通过PC/PPI电缆以及自由口功能,可以将S7 - 200 PLC连接到带有RS - 232兼容接口的多种设备,如条形码阅读器、调制解调器等设备,并接收和发送数据。本节通过一个仿真的打印机程序来描述数据发送,并且通过一个条形码阅读器说明数据接收的过程。 西门子S7 - 200系列的PLC机带有一个或者两个RS - 485的物理接口,可以利用通信协议来实现数据的接收和发送功能,在该接口中具有三种通信协议,分别是PPI协议、自由通信口协议和PROFIBUS协议。PPI协议主要用来编程、PPI组网、HMI接口等工作。自由通信是指用户可以自己定义通信协议,将CPU与任意通信协议隔开的设备联网,如上位计算机、打印机和变频器等。用户可以在程序中设置特殊的寄存器SMB30、SMB130的参数改变RS - 485接口的波特率以及数据格式等信息,用来适应不同的通信协议。本节介绍的是用户通过自由定义通信协议,将CPU与打印机进行数据连接,并且接入条形码阅读器的方式来说明数据的接收过程。 (1)硬件配置。欲实现整个系统的设计,对硬件的要求如表5-13所示。 表5-13 硬件配置要求 (2)设计方案。为了实现PLC的自由通信口的功能,将整个系统的硬件进行如图5-19所示的设计。
图5-19 硬件设计电路图 在图5-19所示的硬件设计电路中,将整个系统分为发送和接收两部分,发送部分主要由外设打印机、转换器和PC/PPI电缆来进行连接,接收部分主要由两个条形码、一个适配器和外接的端口构成,整个硬件电路的核心部分为PLC控制系统S7 - 200 CPU222DC/DC/DC。通过在该系统中设置特殊寄存器的方式,利用自由口模式进行数据的传送和接收功能。 PLC的自由通信口模式支持ASCII码以及二进制协议,在自由口模式下,主机处于RUN方式时,用户可以用相关的通信指令所编写的程序控制通信口的操作。当主机处于STOP模式时,自由口通信被禁止,通信口自动切换到正常的PPI协议操作。 常见的自由通信口指令包括自由口发送指令XMT、自由口接收指令RCV,S7 - 200 PLC的通信口上发送最多255个字节,发送中断通知程序发送完成。自由口接收指令RCV从通信口接收到整条信息,当接收完成后产生中断通知应用程序。需要在SM存储器中定义条件来控制接收指令开始和停止接收信息。接收指令可以根据特定的字符或时间间隔来启动和停止接收信息。接收指令可以实现多数通信协议。 通常情况下采用特殊标志寄存器SMB30(端口0)和SMB130(端口1)的各个位设置自由模式,并配置自由口通信参数,如波特率、奇偶校验和数据位。 (3) PLC的输入/输出分配表,如表5-14所示。 表5-14 PLC的输入/输出分配表
(4) PLC的接线图如图5-20所示。 (5)设计流程图如图5-21所示,条形码接收主程序的流程图如图5- 22所示,从该图中可以看出如果要想完整地启动该主程序,中断程序是必不可少的,这部分的子程序流程图如图5-23所示。
图5-20 PLC接线图
图5-21 设计流程图
图5-22 条形码主程序
图5-23 中断程序 (6)程序设计。从前面描述的功能实现中可以看到整个程序将打印机和条形码分别作为数据的接收端和输入端,在该实例中设置PLC的自由通信口模式非常重要,所需要的信息都存在于存储字节SMB30中,并且这些数据都是可查询的。发送命令XMT包含了发送信息缓冲区的起始地址,且包含了发送信息的长度。下面介绍一下具体的程序实现。 1)条形码阅读器阅读,PLC接收程序。条形码阅读器阅读数据“A”,PLC用自由口通信模式接收数据,字符“A”的ASCII码为41,用到特殊存储单元SMB2专门用于接收端口0、端口1的字符,用到特殊存储单元SMB30用于设定自由口通信模式,程序如图5-24所示。
图5-24 条形码阅读器阅读,PLC接收程序 2) PLC发送,打印机打印程序。可以模拟字符A,把16# 41送入VB101;也可以不模拟,直接把SMB2中的字符送入VB101,存储单元SMB2专门用于接收端口0、端口1的字符,字节SMB2中的接收字符为A由阅读器送入PLC的SMB2。程序如图5-25所示。
图5-25 PLC发送,打印机打印程序图
点击排行
