一个分布式监控系统的软件设计
来源:华强电子网
作者:华仔
浏览:369
时间:2016-08-10 14:18
标签:
摘要:
;;;; 摘 要 讨论了一个分布式监控系统的软件设计。给出了系统结构、冗余设计及软件设计要点。 ;;;; 关键词: 分布式系统 网络通信ActiveX自动化 ;;; 1 系统结构 ;;;;; 系统结构见图1,这是一个两级分布式监控系统。在现场级两台互为热备的现场计算机通过现场总线与现场设备相连,实时采集现场数据并向现场设备传送监控级发来的
;;;; 摘 要 讨论了一个分布式监控系统的软件设计。给出了系统结构、冗余设计及软件设计要点。 ;;;; 关键词: 分布式系统 网络通信ActiveX自动化 ;;; 1 系统结构 ;;;;; 系统结构见图1,这是一个两级分布式监控系统。在现场级两台互为热备的现场计算机通过现场总线与现场设备相连,实时采集现场数据并向现场设备传送监控级发来的控制指令,同时把各种实时信息发送到监控级。在监控级,各监控计算机通过TCP/IP以太网与各现场计算机相连以获取现场数据,并提供GUI以便操作人员监视及控制现场设备。 ;;; 2 冗余设计 ;;; ; 对于可靠性要求较高的系统,常常采用冗余设计以提高可靠性。本系统的现场计算机为双机热备,监控级计算机也可根据需要进行双机热备。 ;;; ; 双机热备必须解决故障识别和状态镜象两个问题,但为实现快速切换,应尽量简化算法,同时尽量减少交换信息,因此如果状态信息不是很重要,则不必随主备信息一起传送。基于上述思想,定义的主备机报文格式见图2,各字段的含义如下: ;;; (1)信息标识:标识报文类型,共定义了三种报文: ;;;; a)普通报文:由主备机正常进行交互用的报文,称主机发往备机的报文为请求报文,备机发往主机的报文为应答报文。 ;;;; b)切换报文:当主机想转为备机时,发送此报文。该报文是非常必要的,一种情况是当现场计算机与现场设备失去联系时,就需要主动进行切换。 ;;;; c)退出报文:当某一台机器退出时,应发送此报文,否则对方将认为该机故障。 ;;; (2)主备标志:指示本站是否为主机,“1”表示主机,“0”表示备机。 ;;; (3)判决标志:当主备机的主备标志一致,即两者同时为主机或同时为备机时,应根据判决标志进行切换,该标志可以预先设定为一个值,也可以取IP地址或启动时间作为判决标志。判决条件可以取大于或小于。 ;;; 具体实现方法为:主机定时向备机发送请求报文,备机收到后就发一个应答报文;同时另设一定时器,当收到对方的一个报文就把该定时器清0,与此同时定时器定时加1。若定时器溢出,则表示对方故障,否则表示对方正常。程序包括定时发送、故障检测及接收处理三部分,它们是并行工作的,流程图见图3。通过对发送定时器及检测定时器定时间隔及检测次数的设定,可以决定切换时间。 ;;;3 软件设计 ;;;; 系统软件分为现场级与监控级两部分,其中监控级包括人机接口及监控级自动化服务器两部分,见图4。下面讨论一下软件设计中的关键问题。 ;;;; 3.1 数据传输方式及通信可靠性 ;;;; 本系统的网络操作系统为Windows NT,网络通信协议为TCP/IP,采用Windows Socket进行通信程序的设计。Windows Socket有流式与数据报两种。前者为面向连接服务,后者为无连接服务。考虑到监控系统的数据量较小,而对实时性要求较高,因此采用数据报方式。 ;;; ; 采用数据报方式的另一点考虑是,它可以广播。在本系统中,现场工控机采用定时广播的方式传输数据,这种方式有如下优点: ;;;; 1) 解决了主备机之间的数据镜像问题。 ;;;; 2) 不需设置IP地址。这有两层含义,一方面发送方不需知道接收方的地址,因为IP广播地址是个固定地址;另一方面,各监控计算机也不必知道各现场计算机的IP地址,因为当它收到广播后,就可
分享到: