(5)Input 属性,从接收缓冲区返回和删除字
符,用于接收数据。
(6) InputLen,设置并返回每次 Input 属性
从接收缓冲区读取的字符数。
(7) CommEvent,返回最近的通讯事件或错误。
计算机虚拟电梯的通讯过程如图 3 所示。
3.2 PLC 通讯程序
西门子 S7-200PLC 提供了 PPI(point to
point)、MPI(multi point)和自由口(free port)
3 种通讯方式,自由口通讯方式可以使 S7- 200
与任何具有串行口的设备进行通讯,自由口通讯
使用 RS-485 接口,在程序中可以使用接收中断、
发送中断、发送指令(XMT)和接收指令(RCV)等来
控制通讯操作。通讯过程中,计算机作为主站通
过 COM 口发送指令到 PLC 的 PORT0 口,PLC 通过
Rcv 接收指令,然后对指令译码后实现指令要求
的操作,并返回指令执行的状态信息。
PLC 通讯程序采用中断方式,S7- 200 系列
PLC 内部的特殊存储字节 SMB30 和 SMB 130 用来
为通讯端口 0 和 1 在自由口通讯方式下选择波
特率、奇偶校验和数据位数。利用 XMT 指令发
送缓冲区的内容,发送完后会产生一个中断事
件。利用 RCV 指令接收数据,接收完后也会产生
一个中断。
PLC 的通讯过程如图 4 所示。
3.3 系统的工作过程
虚拟电梯系统的通讯过程同样分为计算机
和 PLC 两部分,计算机部分通讯过程是:虚拟
电梯的仿真界面运行后,每过一定的时间(设
定为 100ms),计算机就将虚拟电梯仿真界面上
的鼠标指令以及电梯的状态发送给 PLC,PLC 接
收数据后,将其作为输入端口数据运行电梯的
控制程序,产生输出数据,并将数据按协议格
式传递给计算机,计算机接到后对数据进行解
析,然后根据控制指令来进行电梯的运行和信
号的指示。
4 结束语
通讯程序的设计是虚拟电梯中的重要一环,
它决定了系统能否实现真正运行的功能,以及扩
展性和通用性。本系统设计了可扩展的通讯协议
格式,使用 VB 语言和西门子 S7-200PLC 开发
了计算机和 PLC 的通讯程序,实现了计算机与
PLC 的实时通信。并将该通讯技术成功应用在了
多电梯的虚拟系统中。该虚拟电梯系统作为 PLC
开放式实验室的一个虚拟对象,在 PLC 单电梯和
多电梯控制中得到了很好的应用,也为开发电梯
控制系统以及电梯操作人员的培训提供了良好的
图 3 计算机通讯过程
Fig.3 communication process of computer
程序开始
发送后延时,处于接收状态
设置通讯
接收 PLC 数据
把数据发送给 PLC
通讯程序结束
校验是否正确
数据处理
N
Y
通讯中断程序开始
设置通讯初始化
调用 RVC 接收数据
通讯中断结束
校验程序
调用输入子程序
N
Y
状态字?
调用输出子程序
Y
N
调用 XMT 发送数据
图 4 PLC 通讯过程
Fig.4 communication process of PLC