MCScomm控件在基于Visual Basic空调监控系统中的应用
2016-10-21袁志远穆圣广韦超旺陈国林
袁志远 穆圣广 韦超旺 陈国林
【摘要】本文介绍了MSComm控件,然后介绍了利用MSCoom控件编写的基于Visual Basic某企业精密实验室空调监控系统,证明充分利用Windows环境下已有的串行通信控件MSComm可以很好地进行监控软件的开发和设计。
【关键词】MSCoom控件;Visual Basic;監控系统
引言
企业的精密实验室的对温度和湿度的要求异常苛刻,一般都需要恒温恒湿环境,所以此类实验室的空调设备较为复杂且并且需要长期运行,因此,空调设备运行的效率高低和可靠性问题是精密实验室设备管理的首要问题。空调监控系统的研制,直接关系到空调设备能否满足温湿度要求,同时也有助于提高空调设备管理的信息化。
由于目前Windows操作系统处于主流地位,大多数监控软件是在Windows环境下开发。Visual Basic作为一种可视化编程工具,支持面向对象的程序设计,在开发监控系统中具有其独特的优势,更为重要的是其可以利用Windows环境下的串行通信控件MSCoom控件,可以利用其开发串行通讯的系统程序,用户无需深入进行串行通信编程,只需设置几个参数就可按查询或事件驱动方式实现串行通讯,使通讯编程大为简化,因此非常适合编写Windows环境下的监控程序。本文以本人设计的某企业的精密实验室空调监控系统为例,说明MCScomm控件在基于Visual Basic的空调监控系统中的应用。
1.MSComm控件介绍
MSComm控件(Microsoft Communications Control)是美国Microsoft公司开发的Windows环境下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法。MSComm控件包装在MSComm32.OCX文件中,是串口通信常用的控件之一,其功能是通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm控件提供两种数据处理方式,第一种是事件驱动方式,由MSComm的Oncomm事件自动捕获并处理数据或者通信错误;第二种是查询方式,通过定时查询MSComm控件CommEvent属性的值来判断事件和错误。每个被使用的MSComm控件对应着一个串行端口,如有多个串行端口,则必须设置多个MSComm控件。MSComm控件提供了很多重要的属性,主要属性和功能如下表所示:
2.系统组成
本系统通过RS-485通讯将中央空调控制器上的数据传输给监控计算机,监控计算机端采用RS-485与RS-232通讯转换,将采集回来的参数值显示并存储监控计算机,同时可以在监控计算机端远程对空调进行开关机操作和参数设置
3.程序设计
在设计通信程序时,采用了事件驱动法,主要是在comEvReceive(接收到数据)事件发生时响应并获取缓冲区中的数据.以下是在PC机上开发串口通信的程序的一般步骤及部分程序。
MSCoom控件的设置如下:
(1)在窗体上设置一个MSComm控件,作为串行通讯的通道。
(2)设计MSComm控件属性。
在窗体onload事件中加入以下代码设置控件属性:MSComml.CommPort=1‘设置端口号,端口号不能和计算机上的端口发生冲突;
MSComml.Settings=“1200,N,8,l”‘设置波特率,必须和通讯设备的波特率相同
MSComml.InputMode=comlnputModeBinary‘传输模式为二进制形式;MSComml.PortOpen=True‘在使用串口前必须先打开通讯端口;
MSComml.RThreshold=1‘设置接收1个字节产生OnComm事件。
(3) 建立响应Mscomm事件的处理函数。
接收部分需要准确采集现场上传的适时参数,如温度湿度等,是通讯程序设计的重点,通过VB中MSComm控件的OnComm事件来完成。码示例如下:
4.结束语
这套Visual Basic的空调监控系统已经安全运行半年,在此期间,空调完美地达到业主方对于精密实验室苛刻的温湿度要求,实践证明该系统设计合理,运行稳定可靠,同时也证明通过MSComm控件实现串行通信控制效果良好。
参考文献
[1]田添.利用控件MSComm实现计算机的串口通信[J].数字通信.2012(25):95-97
[2]王春香,翁新华,杨汝清,李光布.基于VB的远程监控系统设计[J].计算机应用研究. 2012(9):110-111,157
[3]王建川,马立元,马剑.利用MSComm控件实现与GPS接收器的串口通讯.科学技术与工程.2006(6):3204-3206.