基于VB的PLC和上位机通信的实现方法

2015-04-29 00:00:00林晰明
知识文库 2015年2期

摘要:笔者在本研究中对实现上位机通信的主要方法进行了详细的介绍,并深入分析了基于VB的PLC和上位机通信之间的通信协议,提出了基于VB的PLC和上位机通信的软件实现方法,给出了基于VB的PLC上位机通信的软件流程。此外,编写出的上位机通信软件在数据采集和监控系统得到了广泛的应用,证明了它能够可靠且稳定的运行,值得推广和使用。

关键词:VB;PLC;上位机通信

1基于VB的PLC和上位机通信之间的通信协议

基于VB的PLC和上位机通信的编程所占据的空间比较小,运行速度快,功能更加全面,不仅支持开放网络,还能够紧密地将机器与机器之间连接起来,以达到更高的数据信息共享效率。为保证基于计算机VB的PLC总线和上位机之间可以连接可以精确的交换信息,必需制定科学合理的通信协议。这种通信协议一般选择主从轮询的方法:上位机通信应该具有优先进行传输数据的权利,且全部的通信应该都通过上位机来运行。每个通信单元接收到指令之后,将指令传达给PLC执行,再把执行的结果传达回上位机,这两部分以帧为基本单位互相进行信息的交换。上位机向基于VB的PLC传输信息或者从基于VB的PLC中采集信息都是通信单元以帧的形式进行传输的,对于通信单位发来的指令帧,上位机使用回复帧进行回复。在指令帧或回复帧中含有需要进行通信的信息,必需按照标准进行判别,这样才可以准确的提取出有用的动态数据和信息,才可以把需要进行传输的信息及时传达给用户。

2基于VB的PLC和上位机通信的软件实现

2.1基于VB的PLC控件

通过采用VB提供的PLC控件,能够实现基于VB的PLC和上位机通信。基于VB的PLC控件是麦斯寇索芙特公司提供的简化Windows环境中下上位机通信程序编制的艾克提姆科斯控件,它利用上位机传输和采集信息,这种控件的操作非常简单便捷,性能也比较稳定且安全可靠。基于VB的PLC控件包括两种处理通信问题的方式:事件驱动方式和查询方式。事件驱动方式的优势是程序运行时占据的CPU较小,响应时间比较短,可靠性和安全性高,在出现新字符传输到上位机端口的状态发生改变或错误的情况下,基于VB的PLC控件会自动启动OnComm程序,当应用程序运行这个指令之后,会自动检测基于VB的PLC控件的Comm事件属性,以此来得到所出现的错误情况,进而采取相应的措施。在本系统中采用事件驱动方式的常用的属性包括Commport属性、Settings属性、PortOpen属性、Input属性以及Output属性。Commport属性是用于设置或返回通信连接端口号码。Settings属性是用于设置初始化参数。以字符串的形式设置或返回传输速率、校验位、数据位及停止位等4个参数。格式为“BBBB,P,D,S”,其中BBBB为传输速率;P表示校验检查方式;D表示数据位数;S表示停止位数。默认值是“9600,N,8,1”,本系统采用系列PLC,通信初始化参数设置为“9600,E,7,2”,它表示所使用的通信端口是以每秒9600位的速度作传输,作偶校验的检查,每个数据是7位,而停止位是2位。PortOpen属性是用于设置或返回通信连接端口的状态。Input属性是用于从输入缓冲区返回并删除字符。

2.2基于VB的PLC上位机通信的软件流程

基于VB的PLC上位机通信软件是通过基于VB的PLC控件来实现上位机通信的。软件的具体流程如下:通过PLC编程软件对计算机硬件进行科学合理的信息设置;建立上位机连接端口,并对上位机参数进行初始化,把打开的上位机号、输送的波频率、奇偶校验以及停止位等参数进行设置;上位机判别来自PLC传输的指令。为了保证上下位机之间的准确及时的通信,上位机所传输的指令帧必需是准确的,在发送完指令帧之后,上位机便处于等待状态,直到接收到PLC的回复帧为止,分析结束码,判断是否有错误,正常情况下,回复帧的代码为“oo”,出错则显示错误代码,之后PLC再根据错误类型作相应的纠错处理。

2.3基于VB的PLC上位机通信程序实例

在数据采集和监控系统中,基于VB的PLC上位机通信程序实例主要用在表示和分析从传感设备接收到的信息。在该系统中能够利用设置定时器控件的英特威尔属性,确定收集信息的时间间隔,通常情况下,系统设定为一百毫秒的时间间隔,这样能够有效提高信息采集的速率。在系统的操作界面上,用户能够根据实际情况自由的选择上位机通信端口和模块编号;在地址文本框中可设定读取PLC存储区的地址。鼠标左键单击打开上位机通信端口的窗口,启动定时器,程序代码会不断地通过中间程序发送,并收集得到信息数据的指令,及时处理得到的指令结果,并在窗体上显示模拟输入值,绘出模拟量变化的曲线图。

3 结语:

本研究对基于VB的PLC和上位机通信之间的通信协议进行了深入的研究,通过基于VB的PLC控件达到了基于VB的PLC的上位机通信。基于VB的PLC控件程序所编写的上位机通信软件在数据采集和监控系统中得到了广泛地应用,证实了这种上位机通信的可靠性和安全性。此外,利用上位机通信对基于VB的PLC的判别,还实现了实时的信息自动收集,能够在很大程度上对工业现场设备进行高效的监测和管理。

参考文献:

[1]高钦和.可编程控制器应用技术与设计实例[M].北京:人民邮电出版社,2014:49-50.

[2]陈常祥,王强,张天桥等.MS(X)MM与程序接口函数实现PLC上位机通信比较[J].工业控制计算机,2012,19(10):9-10.

作者简介:林晰明(1989.6-)吉林长春热你,国家新闻出版广播电影电视总局523台助理工程师,本科

(作者单位:国家新闻出版广播电影电视总局 523台)