




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一个分布式监控系统的软件设计 摘 要 讨论了一个分布式监控系统的软件设计。给出了系统结构、冗余设计及软件设计要点。 系统结构 系统结构见图1,这是一个两级分布式监控系统。在现场级两台互为热备的现场计算机通过现场总线与现场设备相连,实时采集现场数据并向现场设备传送监控级发来的控制指令,同时把各种实时信息发送到监控级。在监控级,各监控计算机通过TCP/IP以太网与各现场计算机相连以获取
2、现场数据,并提供GUI以便操作人员监视及控制现场设备。 2 冗余设计 对于可*性要求较高的系统,常常采用冗余设计以提高可*性。本系统的现场计算机为双机热备,监控级计算机也可根据需要进行双机热备。 双机热备必须解决故障识别和状态镜象两个问题,但为实现快速切换,应尽量简化算法,同时尽量减少交换信息,因此如果状态信息不是很重要,则不必随主备信息一起传送。基于上述思想,定义的主备机报文格式见图2,各字段的含义如下: (1)信息标识:
3、标识报文类型,共定义了三种报文: a)普通报文:由主备机正常进行交互用的报文,称主机发往备机的报文为请求报文,备机发往主机的报文为应答报文。 b)切换报文:当主机想转为备机时,发送此报文。该报文是非常必要的,一种情况是当现场计算机与现场设备失去联系时,就需要主动进行切换。 c)退出报文:当某一台机器退出时,应发送此报文,否则对方将认为该机故障。 (2)主备标志:指示本站是否为主机,“1”表示主机,“0”表示备机。
4、160; (3)判决标志:当主备机的主备标志一致,即两者同时为主机或同时为备机时,应根据判决标志进行切换,该标志可以预先设定为一个值,也可以取IP地址或启动时间作为判决标志。判决条件可以取大于或小于。 具体实现方法为:主机定时向备机发送请求报文,备机收到后就发一个应答报文;同时另设一定时器,当收到对方的一个报文就把该定时器清0,与此同时定时器定时加。若定时器溢出,则表示对方故障,否则表示对方正常。程序包括定时发送、故障检测及接收处理三部分,它们是并行工作的,流程图见图3。通过对发送定时器及检测定时器定时间隔及检测次数的设定,可以决定切
5、换时间。 3 软件设计 系统软件分为现场级与监控级两部分,其中监控级包括人机接口及监控级自动化服务器两部分,见图4。下面讨论一下软件设计中的关键问题。 3.1 数据传输方式及通信可*性 本系统的网络操作系统为Windows NT,网络通信协议为TCP/IP,采用Windows Socket进行通信程序的设计。Windows Socket有流式与数据报两种。前者为面向连接服务,后者为无连接服务。考虑到监控系统的数据量较小
6、,而对实时性要求较高,因此采用数据报方式。 采用数据报方式的另一点考虑是,它可以广播。在本系统中,现场工控机采用定时广播的方式传输数据,这种方式有如下优点: 1) 解决了主备机之间的数据镜像问题。 2) 不需设置IP地址。这有两层含义,一方面发送方不需知道接收方的地址,因为IP广播地址是个固定地址;另一方面,各监控计算机也不必知道各现场计算机的IP地址,因为当它收到广播后,就可以获得发送方的IP地址,然后把它存在一张地址表中,以后向该现场计算机发送指
7、令时就可以直接从地址表中取出其IP地址。这种处理方法有点类似于TCP/IP协议地址解析中的动态联编1。但数据报方式的可*性不如流式高。对于现场计算机,因为数据定时广播,这种可*性的差别并无大碍。但对监控计算机而言,它发出一个请求,必须知道该请求是否被响应。因此采用了异步确认机制(见图5),处理过程为:在发送端设一张表,当发送一个请求时为该请求分配(或预先分配)一个标识,然后把该标识随同请求一起发出去,同时启动超时定时器;接收端响应该请求后,发回一个含有请求标识的应答报文;若接收端收到该应答报文,则删除表中的请求标识,同时定时器停止,否则将发生超时,表示请求未被响应。
8、160; 3.2 系统信息的处理 监控系统中主要包括如下三种数据: (1) 现场数据:包括现场信号测量值、设备运行状态、报警信息及其它由现场计算机产生的数据。 (2) 控制指令:如控制数字量输出、模拟量输出及现场设备等的控制字。 这些信息要么由现场计算机采集或产生,要么由监控计算机写入现场计算机,但最终还是要存入现场计算机并向外定时广播。前两种信息由于直接产生于或作用于现场,因此
9、存于各自的现场计算机。但系统信息是全局信息,是所有站共享的信息,这样存在着如下问题:当监控计算机写入系统信息(如登录)时,应把它发向哪个现场计算机呢?如果向所有站广播,就存在着一致性问题。正确的做法是:把一台现场计算机作为系统服务器,系统信息都写入该服务器中,然后由它向其它站广播。那么应选择哪个现场计算机,并且使所有站(包括现场级与监控级)都选择同一个现场计算机?本系统采取一种动态算法实现了这种选择,并且当该现场计算机故障时自动转移到另外的现场计算机。 具体方法参见图6:设一张表及一个定时器组,当收到一个站的信息时就把该站的IP地址存入该表中,同
10、时把相应的定时器清0;若定时器溢出,则将该站的IP地址置为无效值。当各计算机寻找系统服务器时,就顺序搜索该表,找到第一个有效IP地址,就把它作为系统服务器。 3.3 监控级自动化服务器的设计 监控级软件主要是为操作人员提供人机界面,但它同时还要与现场计算机进行通信,为把界面设计分离开来,我们采用了Microsoft ActivX自动化技术实现了这一设计思想。这样,界面设计人员可以采用目前流行的各种可视化开发工具集中精力进行界面设计,而且可以根据需要设计不同的界面,在我们的系统中就有两种界面。
11、60; 自动化技术是Microsoft ActivX组件技术中的一种,它包括自动化服务器和自动化控制器两种,其中自动化控制器是指使用和操纵自动化服务器的应用程序(如VBA),自动化技术通常是指自动化服务器。另一种最为常用的组件技术是ActiveX控件,但一个ActiveX控件只能提供一个lDispatch接口,而一个自动化服务器可以提供多个lDispatch接口。通过lDispatch接口,客户程序可以访问该接口的属性和方法。对于VBA客户程序来说,访问lDispatch接口的语法与访问VBA 对象的语法是一样的,因此,对于VBA客户程序而言,一个lDisp
12、atch接口就相当于一个对象。 自动化服务器通常采用层次结构来组织对象,Microsoft的许多自动化服务器都是这样组织的,如数据访问对象DAO。本系统的自动化服务器也采用了这样一种结构,见图7, 其中Workstation是指监控级各站,Station是指现场级各站,这只是个示意图。这种结构一方面体现了对象间的层次及包含关系,另一方面对象的创建、删除及组织也比较方便,整个服务器只需一个ProgID来标识。 客户程序创建服务器的过程为:首先利用ProgID创建顶层对象(Application),然后
13、利用该顶层对象提供的方法创建各集合并向其中添加元素,对集合的操作类似于VBA中的Collection对象,主要有Count(),ltem(),Add()等几种。应当指出,上面所讨论的对象层次结构及集合的概念只是一种设计思想,并非有现成的设计工具,我们采用VC6.0设计了自己的集合类及自动化服务器,客户端采用VB6.0 本系统是按照分布式的思想进行设计的。分布式的特点就在于各节点是平等的,在数据传输方式、冗余设计及系统服务器的选择等处理上都体现了这一思想。本文给出的冗余设计,是基于网络的一种方法,其实现不依赖于操作系统、编程语言,是一种比较通用的方法。组件技术是软件发展的方向,本系统利用自动化技术将界面设计与底层设计分离开来,各自进行独立设计,充分体现了组件技术的优越性。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 税务等级动态管理办法
- 网店美工素材管理办法
- 税务建账个体管理办法
- 企业安全生产培训政策课件
- 2025年乡村振兴战略与实践考试试卷及答案
- 2025中央一号文件考题及答案
- 统编版语文七年级上册《皇帝的新装》练习题(含答案)
- 出差报销培训课件
- 出差安全培训计划课件
- 出国留学课件
- 交通规划中智能交通信号控制技术应用2025年研究报告
- 公共空间设计培训课件
- 2025年汽车维修高级技师能力认证考试试卷及答案解析
- 2025年邮政集团招聘考试复习资料与预测题
- 2025年保险理赔员执业资格考试试题及答案解析
- 板绘插画师基础知识培训课件
- 2025至2030年中国分时度假行业市场运营现状及投资规划研究建议报告
- 孕期甲状腺功能课件
- 2025年版《煤矿安全规程》考试题库(含答案)
- 押运员持枪证考试试题及答案
- 医药代表一院一策工作汇报
评论
0/150
提交评论