基于通讯服务器的上位机软件构架及其应用
2018-03-07蒋晓峰
蒋晓峰
摘 要:用于監控水电站系统的装置中包含不同种类的智能装置,这些装置用于维持通讯的畅通,是用于监控整个系统的关键装置。本文分析了整个监控系统中这些智能装置具有的通讯特点,从而提出建立通讯服务器,该通讯服务器的功能主要是通过面向对象的技术来进行实现的;同时提出以多通讯服务器的水电站监控系统为基础,建立上位机软件构架,同时对该软件的具体应用进行了详细描述。
关键词:通讯服务器 上位机软件 计算机监控系统
中图分类号:TV73 文献标识码:A 文章编号:1674-098X(2017)11(b)-0131-02
在水电站监控系统中因为厂家众多,同时是不同厂家是使用单独的通讯协议,上位机与不同的智能装置之间要实现通讯,就会在整个系统中产生重复工作。因此我们设计了一种软件,名字为通讯服务器软件,可以解决这个问题。这个软件是目前所存在的所有通讯协议的集合,在使用过程中,工程人员只需要简单地进行配置就可以实现正常的通讯功能。如果有新的协议出现,软件可以将其嵌入。本文对其所使用的技术的基本概念进行阐述,同时对开发的通讯服务器的基本构造和其在水电站中的应用进行了论述。
1 面向对象的技术基本概念
所谓对象的概念是这样定义的:由实体和实体间的关系组成了我们客观世界中的所有问题,把客观存在的实体进行抽象化,就成为了对象,存在问题域中。面向对象的方法具有抽象、继承、封装和多态性4个基本特征[1]。面向对象方法具有4个主要优点,包括:用人类习惯思维来解决问题、系统具有稳定性良好的特点、可以重复使用同时系统的维护工作较简单,更新方便,容易升级。
2 面向对象协议类生成及其具体协议派生类
尽管通讯协议的多种多样,但研究发现了它们的一个共同点,即所有的协议都需要对数据进行输送、编码、校验以及处理接收数据等。把这个特征进行抽象化的处理后就形成了我们所定义的“协议类”——CProtocol。这个协议类是所有协议抽象化后的产物,可以囊括所有协议所具有的共同特征,而不是某一个具体的数据结构。在使用协议类的过程中,会有在不同工程中协议类的参数是不一样的情况发生,所以在实际应用于每个单独的工程时,协议类被具体化,成为一个独立的对象,在实际中得到应用。协议类和其对象的关系见图1。
3 通讯服务器端口协议链表及其运行
虽然不同通讯设备名称、功能都不相同,但设备使用的通讯协议和数据的具体内容才是我们关注的重点,所以在通讯角度上,每个设备需要进行抽象化处理成为协议的对象来进行应用。而所连接的设备就被抽象成了协议链表,如图2所示。本文中就不详细介绍链表的数据结构和具体的操作方法[2]了。协议链表的概念是按照得到的协议要求发出相对应的协议要求,对于接收的数据首先进行编码处理,然后发送出去[3]。设备类型不同协议节点就不同,就会形成独特的协议链表。
4 工程应用
我们设计的协议类应用在了金银台水电站,该水电站位于嘉陵江上游,拥有4台单机45MW的水轮发电机组的配置。这个水电站中计算机监控系统包括两层,一层为站控层,另一层是现地控制层。为了维持两层之间的正常通讯,使用了光纤以太网。
针对该水电站的监控系统结构,使用如图3所示的软件架构。
通过通讯服务器配置软件来设计协议链表,整个配置过程只需要1h的时间,由此看出该软件可以使复杂的设备通讯问题快速且较好地得到解决。
5 结语
通过通讯服务器的建立,解决了不同种类智能装置之间维持正常通讯的问题,服务器的建立主要依靠面向对象的技术来实现。进而在多通讯服务器的水电站监控系统的基础上建立了上位机软件构架,然后将所开发出的软件以及通讯服务器在金银台水电站进行了应用,结果发现效果良好。所以这种基于通讯服务器的上位机软件构架可以实现将复杂的设备通讯问题快速且完美地解决。
参考文献
[1] 甘玲.面向对象技术与Visual C++学习指导[M].2版.北京:清华大学出版社,2005.
[2] 严蔚敏.数据结构C语言版[M].北京:清华大学出版社,1998.
[3] 谭浩强.C++程序设计[M].北京:清华大学出版社,1998.endprint