(系统工程专业论文)综合监控前置机系统组态软件的设计.pdf_第1页
(系统工程专业论文)综合监控前置机系统组态软件的设计.pdf_第2页
(系统工程专业论文)综合监控前置机系统组态软件的设计.pdf_第3页
(系统工程专业论文)综合监控前置机系统组态软件的设计.pdf_第4页
(系统工程专业论文)综合监控前置机系统组态软件的设计.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(系统工程专业论文)综合监控前置机系统组态软件的设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

硕士论文 综合监控前置机系统组态软件的设计 摘要 组态软件( c o n f i g u r a t i o ns o f t w a r e ) 是指在软件领域内,操作人员根据应用对 象及控制任务的要求,配置用户应用软件的过程。简而言之,组态软件是“应用程序 生成器”。随着控制自动化技术、计算机技术、通讯技术的迅速发展,组态软件正成 为近年来监控领域中十分活跃的部分前置机f e p ( f r o n t e n dp r o c e s s o r ) 在中央 主机和用户终端( 或个人工作站、外围设备) 之间实现数据的上传下达工作,不仅可以 有效地减轻主机系统的工作负担;提高系统的工作效率,而且也能起到保护主机系统 安全的作用。对f e p 进行组态,对于实现f e p 在系统中的功能起到至关重要的作用。 本文基于对f e p 系统的研究及其组态软件的开发,对组态软件的设计以及 v i s u a lc + + 6 0 在组态软件中的应用进行了系统的研究本文首先对组态软件的概 念作简单介绍,并指出本课题的f e p 组态软件与常规组态软件在功能上和设计上的区 别同时还介绍了f e p 系统的结构以及几个与组态软件相关的重要概念和重要技术 文中重点介绍了f e p 组态软件的结构和设计,并详细介绍了多线程技术、f t p 文件传 输技术、串口通讯技术和w i n s o c k 网络通信技术在f e p 组态软件中的应用和相关实现, 同时也介绍了软件工程思想在组态软件的开发过程中的体现。本文的最后总结了完成 的工作,以及日后需要改进和完善的地方 本课题相关的软件己通过相关部门的验收。该组态软件界面友好,简单,易操 作,符合工程人员操作习惯。具有较高的可靠性、实时性、通用性、容错性和高效性。 关键词:组态软件,f e p ,软件工程 堡主丝苎竺竺堕丝塑里垫至竺丝查茎竺竺堡生 a b s t r a c t c o n f i g u r a t i o ns o f t w a r ei st h ep r o c e s si nt h ef i e l d so fs o f t w a r et h a tt h eo p e r a t o r s c o n f i g n r et h ea p p l i c a t i o ns o r w a r eo f u s e r sa c c o r d i n gt ot h ed e m a n d so f a p p l i c a t i o no b j e c t s a n dc o n t r o lt a s k s i naw o r d ,c o n f i g u r a t i o ns o f t w a r ei sa na p p l i c a t i o np r o g r a mm a k e r w i t ht h er a p i dd e v e l o p m e n to fa u t o - c o n t r o l ,c o m p m c rs c i e n c ea n dc o m m u n i c a t i o n t e c h n o l o g y , c o n f i g 搬a d o ns o i b v a r ei sb e c o m i n ga n a c t i v ep a r ti nt h em o n i t o r i n gf i e l d f e p ( f r o n t - e n dp r o c e s s o r ) u p l o a d sa n dd o w n l o a d sd a t ab e t w e e nh o s tc o m p u t e ra n d t e r m i n a lo rb c d a r e c ni n d i v i d u a lw o r k s t a t i o na n dp e r i p h e f a l e q u i p m e n t s f e pc a n s a f e g u a r dh o s tc o m p u t e rs y s t e m , a n di n c r e a s et h ee f f i c i e n c yo f t h es y s t e m c o n f i g u r i n gf o r f e p p l a y sa ne s s e n t i a lp a r ti na c c o m p l i s h i n gt h ef u n c t i o no f i t b a s e d0 1 1t h ed e s i g na n dd e v e l o p m e n to ft h ec o n f i g u r es o f t w a r ef o rf e p , b o t ht h e d e s i g no ft h es o r w a r ea n dt h ea p p l i c a t i o no fv i s u a lc + + 6 0i ni t 瓣s y s t e m a t i c a l l y i n t r o d u c e d i nt h i sd i s s e r t a t i o n , f i r s t l y , t h ec o n c e p to fc o n f i g u r es o f t w a r ei sp r e s e n t e d , a n d t h ed i f f e r e n c eb e t w e e nu s u a lc o n f i g u r es o r w a r ea n dt h ec o n f i g u r es o f t w a r ei nt h i sp a p e ri s e x p l a i n e d a f t e r w a r d s ,t h es t r u c t u r eo ff e pa n ds o m ei m p o r t a n tc o n c e p t sa n dt e c h n i q u e s a r ci n t r o d u c e d t h es t r u c t u r ea n dt h ed e s i g no ft h ef e p c o n f i g u r es o f t w a r ea r et h em a i n c o n t e n t so ft h ep a p e r , i n c l u d i n gm u l t i t h r e a d i n g ,f 1 es e r i a ld a t at r a n s f e r , v f m s o c ka n ds o o n a n dt h e nh o wt h ei d e ao fs o f t w a r ee n g i n e e r i n gr e f l e c t si nt h ec o n f i g u r a t i o ns o f t a r ei s d e s c r i b e d i nt h ee n d , w h a tih a v ew o r k e d0 1 1a n dw h a ts h o u l db ei m p r o v e di nt h ef u t u r ei s c o n c l u d e d t h es o f t w a r er e l a t e dt ot h ep r o j e c th a sb e e nc h e c k e da n da c c e p t e d i ti sn o to n l y e f f e c t i v e ,d e p e n d a b l e ,r e a l - t i m e ,a l l - p u r p o s e , f a u l t - t o l e r a n ta n de a s yt oo p e r a t eb u ta l s o p o s s e s s e do f af r i e n d l y , s i m p l ea n dg l o r i o u si n t e r f a c e k e yw o r d s :c o n f i g u r es o f t w a r e ,f e p , s o f t w a r ee n g i n e e r i n g 声明 本学位论文是我在导师的指导下取得的研究成果,尽我所知,在 本学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发 表或公布过的研究成果,也不包含我为获得任何教育机构的学位或学 历而使用过的材料。与我一同工作的同事对本学位论文做出的贡献均 已在论文中作了明确的说明。 研究生签名: 彳年7 月3 日 学位论文使用授权声明 南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅 或上网公布本学位论文的全部或部分内容,可以向有关部门或机构送 交并授权其保存、借阅或上网公布本学位论文的全部或部分内容。对 于保密论文,按保密的有关规定和程序处理。 研究生签名: 妒年7 月;日 硕士论文综合监控前置机系统组态软件的设计 l 绪论 1 1 课题背景 北京地铁五号线是北京地铁首次采用和建设综合监控系统( i s c s ) ,同时北京地 铁五号线也是2 0 0 8 年北京奥运会的重要基础项目之一i s c s 系统承当着b a s 、f a s 、 p s c a d a 、f s d 等多个子系统设备进行监控的重大任务,是地铁正常运营和救灾指挥的 基本保证,涉及到人身和设备的安全因此,为保证北京五号线综合监控系统这样一 套技术复杂、集成度高并且工期很紧的监控系统能够安全、可靠运行并保证实时响应 的速度,选择具有她铁工程实施经验、成熟先进的综合监控软件平台,并在此平台上 根据北京地铁五号线的具体情况进行全面的分析设计是至关重要的。 综合监控系统与各个子系统有两种方式的分界面,一种是直接接入,一种是前端 处理器f e p ( f r o n t e n dp r o c e s s o r ) 硬件隔离。在轨道交通监控系统中,直接接入 是各个子系统直接接入车站局域网,经f e p 硬件隔离是各个子系统首先接入f e f ,再 由f e p 接入车站局域网。采用f e p 隔离方式,在以下几个方面可以保护系统:综合监 控系统的不正常不会影响各子系统的运行,即使综合监控系统全部瘫痪,各个子系统 能继续正常工作,保证地铁基础层的监控功能;某个子系统的异常不会影响综合监控 系统的运行,综合监控系统将各个子系统加以集成,其故障后影响面很大,通过f e p 的隔离,可使子系统的数据干扰范围得到控制;f e f 把各个子系统不同的协议转换成 综合监控系统统一的协议,生熟数据分开,只有经过授权的指令才能发送到现场,有 效保护了系统的安全性。综上考虑,北京地铁五号线的i s c s 系统采用f e p 作为硬件 隔离。 工业控制组态软件一词源于c o n f i g u r a t i o n ,它指在软件领域内,操作人员根据 应用对象及控制任务要求,配置用户应用软件的过程。在工业控制组态软件的帮助下, 控制系统的设计工程师们通过分析工业被控对象,根据该对象的系统需求,制定出控 制系统的组成结构与控制策略,并据此对工业控制组态软件进行“组态”,从而将工 业控制组态软件“升级”为一个专用的、面向具体对象的工业控制系统软件。在使用 过程中,该软件将通过人机界面与最终用户( 生产操作人员) 进行实时交互,通过i o 设备对工业对象进行实时监控。因此工业控制组态软件实际上是一种能由用户根据 自己的需要进行二次开发的软件开发平台。 f e p 的某些硬件设备的参数是可以通过f e p 显示屏和小键盘来设置的,但这种设 置的方式很不方便,而且只能设置某些参数,很多f e p 的参数是无法通过f e p 自身来 设置的,同时,f e p 为完成某些通讯或其他任务,也需要设置很多例如任务、节点或 转发库等的各种参数,这些复杂的操作只能通过方便友好的人机界面来实现。另外, l 硕士论文 f e p 除了很多参数需要设置外,工程人员还需要能够实时、直观地查看f e p 报文。所 以,为了对f e p 的参数进行设置及修改,同时对f e p 各通讯任务通道中的报文进行监 控,使用一实时有效的组态软件对f e p 进行配置便成为必要。市场上有很多种工业组 态软件可供选用,它们大都有较全面的功能,人机界面强大,组态方便,灵活,扩展 接口丰富,但除了价格昂贵之外,也不适合北京地铁五号线综合监控系统的f e p ,很 多功能在p e p 组态时并不需要,这样对资源是种浪费,同时,实际应用时还有一些参 数和功能是这些组态软件所不具有的。所以综上原因,自己根据实际需要,开发一套 适用于f e p 系统的组态软件,便成了f e p 系统开发的一个重要组成部分。鉴于其重要 性,该组态软件需要严格依照软件工程思想,按照一定的软件开发流程进行设计和开 发,完成后的组态软件要通过专家和工程人员的验收合格。 1 2 f e p 在i s c s 系统中的功能介绍 1 2 if e p 基本概念 前端处理器f e p ,国内工程人员习惯称为前置机,通常是指在一个较大的计算机 系统中,位于系统主机前端,扮演着中介角色的计算机它的主要功能是在中央主机 和用户终端( 或个人工作站、外围设备) 之间实现数据的上传下达工作,不仅可以有效 地减轻主机系统的工作负担,提高系统的工作效率,而且也能起到保护主机系统安全 的作用m f e p 可以作为综合监控系统与各子系统之间的分界面,可以实现主系统和子系统 之间的硬件隔离。如图1 i 所示: 2 图i 1 各子系统以f e p 硬件隔离 硕士论文 综合监控前置机系统组态软件的设计 1 2 2f e p 基本功能介绍 f e p 可以获取系统的实时数据,也可以向各子系统发送控制命令。f e p 与子系统 之间通过基于t c p i p 或串行通道的各种通信协议实现通信其主要功能一般有如下 几点: , 1 ) 是核心s c a d a 的协议接口; 2 ) 采集各子系统数据; 3 ) 处理异常报告和主动请求与子系统的通信( 如果子系统支持时) ; 4 ) 如果需要,可以充当遥测数据的时间戳; 5 ) 向子系统发送监控命令; 6 ) 为用户提供对主系统与子系统间通信堵塞进行分析以及手动发送通信请求的 接口; 7 ) 进行热故障切换; 8 ) 实现主线路与冗余线路之间自动切换的通信线路管理; 9 ) 统计从子系统获取的大量数据; 1 0 ) 支持运行时间配置,包括增加、修改和删除f e p 对象( 如某子系统) 的功能。 1 2 3f e p 在i s c s 系统中的作用 在本i s c s 系统中,f e p 充当综合监控系统与子系统间的硬件物理隔离。综合监 控系统和子系统之间用f e p 构筑物理隔离层,各个子系统的数据不会直接进入综合监 控系统,需经过f e p 协议转换。综合监控系统的数据进入各子系统同样经过f e p 的缓 冲,f e p 相当于安全网关。f e p 选用高性能的处理器,既使得综合监控系统与各个子 系统相互独立互不干扰,又不影响隔离引起的实时性和可靠性。f e p 保证了即使综合 系统全部瘫痪,各子系统也能正常运行。当某个子系统数据流量异常时,也不会影响 综合监控系统的运行。 f e p 管理i s c s 与各被集成和互联系统的接口,并进行规约转换和初步的数据处 理;采用专用工业级产品,并且具有支持多种协议转换、支持多种通信接口的模块; 具有足够的网络口、串口,以接入各子系统的数据;各功能模块具有自诊断功能。单 点故障不影响系统功能;f e p 是冗余配置;f e p 的插槽预留5 0 的余量。每个f e p 通 过l o o m b p s 以太网接口与i s c s 交换机相联。 1 3 组态软件概述及f e p 组态软件的特点 随着工业自动化水平的迅速提高,计算机在工业领域的广泛应用,人们对工业 自动化的要求越来越高,使得传统的工业控制软件已无法满足用户的各种需求。工业 3 硕士论文 自动化组态软件的出现为解决实际工程中的问题提供了一种崭新的方法,因为它能够 很好地解决传统工业控制软件存在的种种问题,使用户能根据自己的控制对象和控制 目的的任意组态,完成最终的自动化控制工程。它是工业自动化应用软件中较为基础 的也是目前应用较广泛的一种软件,它为整个工业控制系统的设计与应用注入了新的 活力,己成为工业控制领域中的关键性产品。但很多组态软件并不能总是满足实际工 程需要,实际应用中总会存在功能和资源上的不足或浪费,鉴于f e p 系统对组态软件 的特殊性要求,必须运用常规组态软件设计思想,根据实际需要,设计符合f e p 系统 要求的组态软件,所以,该组态软件必定会与常规组态软件存在一些差异。 1 3 1 组态软件的基本概念 组态的英文是c o n f i g u r a t i o n ,含义是使用软件工具对计算机及软件的各种资源 进行配置,达到使计算机或软件按照预先设置,自动执行特定任务,满足使用者要求 的目的简而言之,组态软件是“应用程序生成器”用户可使用组态软件根据应用 对象及控制任务的要求,以“搭积木”的方式灵活配置、组合各功能模块,构成用户 应用软件。一改过去软件通用性差、对不同应用对象都要重新设计修改,每套系统软 件都是新的,可靠性低,系统对某一个软件人员依赖性大等缺点,已成为提高系统成 套速度、保证软件成熟性和可靠性的重要因素鲫 “组态”的概念是伴随着集散型控制系统d c s 的出现才开始被广大的生产过程自 动化技术人员所熟知的。由于每一套d c s 都是比较通用的控制系统,可以应用到很多 的领域中,为了使用户在不需要编代码程序的情况下便可生成适合自己需求的应用系 统,每个d c s 厂商在d c s 中都预装了系统软件和应用软件。而其中的应用软件,实际 上就是组态软件,但一直没有人给出明确的定义,只是将使用这种应用软件设计生成 目标应用系统的过程称为“组态( c o n f i g ) ” 组态软件应该能支持各种工控设备和常见的通信协议,并且通常应提供分布式数 据管理和网络功能。对应于原有的h m i ( 人机接口软件,h u m a nm a c h i n ei n t e r f a c e ) 的概念,组态软件应该是一个使用户能快速建立自己的h m i 的软件工具,或开发环境。 在组态软件出现之前,工控领域的用户通过手工或委托第三方编写h m i 应用,开发时 间长,效率低,可靠性差;或者购买专用的工控系统( 通常是封闭的系统) ,选择余 地小,往往不能满足需求,很难与外界进行数据交互,而且升级和增加功能都受到严 重的限制。组态软件的出现,把用户从这些困境中解脱出来,可以利用组态软件的功 能,构建一套最适合自己的应用系统。随着它的快速发展,实时数据库、实时控制、 s c a d a 、通讯及联网、开放数据接口、对i o 设备的广泛支持等已经成为其主要内容, 可以预测,随着技术的不断进步,监控组态软件将会不断被赋予新的内容。 4 硕士论文综合监控前置机系统组态软件的设计 1 3 2 f e p 组态软件与常规组态软件的差别 在具体的工程项目中,很多组态软件并不能总是满足实际工程需要,实际应用中 总会存在功能和资源上的不足或浪费。所以实际工程中的组态软件并不需要具有组态 软件的全部功能,只需按照实际要求,根据具体工程,具体系统,具体装置,开发合 适的组态软件。 f e p 组态软件与常规组态软件在功能和具体设计上存在一定的差异。f e p 组态软 件更多的侧重于f e p 参数的配置,以及与f e p 的通信,并不需要实现对f e p 系统的控 制功能,也未实现组态软件。应用程序生成器”的作用,实际上是一个对应于设备的 参数配置与通讯组态软件。同时,f e p 组态软件并未直接实现常规组态软件实时数据 库,历史数据库等功能,只是为这些功能提供了基本的参数和数据,f e p 的底层应 用软件会根据这些参数,按照一定的规则来组织这些数据进而完成这些功能。 1 3 3 组态软件的开发环境的选择 组态软件的开发工具以c + + 为主,也有少数开发商使用d e l p h i 或c 十+ b u i l d e r 。 一般来讲,使用c + + 开发的产品运行效率更高,程序代码更短,运行速度更快,但开 发周期要长一些,其他工具则相反“1 d e l p h i 和c + + b u i l d e r 除了使用的语言不同,其余几乎相同。 v i s u a lc + + 采用的应用程序框架( a p p l i c a t i o nf r a m e ,有时也称为对象框架) 是 m f c ( m i c r o s o f tf o u n d a t i o nc l a s s e s ) ,m f c 不仅仅是人们通常理解的一个类库( 同 样,d e l p h i 和c 抖b u i l d e r 使用的v c l 的概念也不仅仅是一个控制库) 。如果选择了 职c ,也就选择了一种程序结构,一种编程风格。m f c 早在w i n d o w s3 x 的时代就出 现了,那时的v i s u a lc + + 还是1 6 位的。经过这些年的不断补充和完善,m f c 已经十 分成熟。但由于原型出现得比较早,m f c 相比于v c l 落后了一个时代。 c + + b u i l d e r 的v c l 比v i s u a lc + + 的i i f c 的先进之处在于异常处理,但它的异常 处理代码中有b u g ,有时会无端抛出异常。而对v c 的框架,m f c 经历了多年的发展和 完善,m f c 功能非常全面,而且十分稳定,b u g 很少。其中可能遇到的b u g 更少,而 且有第三方的专门工具帮助开发者避开这些b u g 。程序稳定、运行可靠是组态软件开 发的基石,所以,作者选用v c 作为组态软件的开发环境。 v i s u a lc + + 6 0 能够成为当今最流行的软件开发工具之一,与其卓越的性能是分 不开的。它汇集了微软公司的技术精华,不仅全面贯彻了面向对象的技术,而且在编 译优化技术上较其他同类产品具有明显的优势: ( 1 ) 使用c + + 编程的源代码效率更高。 ( 2 ) v i s u a lc + + 6 0 开发环境十分友好,其高度的可视化开发方式和强大的向 绪论硕士论文 导工具能够帮助用户轻松地开发出多种类型的应用程序。 ( 3 ) 由于微软在p c 操作系统市场上的垄断地位,使用m i c r o s o f t 发行的编程工具 能够提供与w i n d o w s 操作系统的最大兼容性。 ( 4 ) 作为桌面操作系统的霸主,微软自己开发的编程工具v i s u a lc + + ,不仅能够 提供强大的图形支持,而且能够使应用程序与硬件相互独立。 ( 5 ) m f c 类库和w i n d o w sa p i 为实现应用程序功能提供了强大的功能支持。可以 设想,w i n d o w s 这样强大的操作系统都是在此基础上建立的,那么只要对m f c 类库和 w i n d o w sa p i 有深入的了解,实现复杂的高性能的程序也不会很困难。 ( 6 ) v i s u a lc + + 6 0 为用户提供了许多有用的工具,能够帮助用户寻找错误和 提高程序效率。 i 4 课题内容及本人所做工作 1 ) 课题内容 本人的课题内容是f e p 组态软件的开发与设计。该组态软件要严格按照软件工程 思想进行设计和开发,界面友好,简单,易操作,符合工程人员操作习惯,具有较高 的可靠性、实时性、通用性、容错性和高效性。工程人员可以使用该组态软件对f e p 进行参数设置和在线报文监控。 2 ) 课题难点 由于此工程项目的重要性和f e p 系统的复杂性以及各方面主客观因素的限制,在 本课题进行的过程中,存在着如下的技术难点: ( 1 ) 需要全面深入地了解f e p 系统各方面的相关知识,以便能准确地做好需求 分析; ( 2 ) 需要对开发环境、开发过程有相当的了解; ( 3 ) 软件质量要求很高,所以软件要严格按照软件工程思想进行开发和设计: ( 4 ) 对软件的设计和实现所需要的工作量较大; ( 5 ) 软件系统要有很好的可维护性和扩展性。 3 ) 本人所做工作 整个f e p 系统规模庞大,是由多人合作完成的。本人所做工作包括以下几点: ( 1 ) 参与完成了整个系统的需求分析及整体设计; ( 2 ) 参与讨论了系统的硬件设计及驱动程序的开发: ( 3 ) 独立完成了整个组态软件的设计,开发,调试以及文档的制作。 1 5 论文结构 全文组织为:第一章为绪论部分,第二到第四章为主体部分和结束语 硕士论文综合监控前置机系统组态软件的设计 第一章绪论 综述本文的选题背景、研究内容和整体组织,并介绍了f e p 系统的概念 及作用,组态软件的定义,f e p 组态软件的特点和开发环境的选择,以及 本课题主要的难度和本人主要做的工作。 第二章f e p 系统介绍 本章主要简单介绍f e p 系统应用方案,包括系统结构、硬件、底层软件 设计,以及设计过程中几个较重要的内容,包括节点、任务、转发数据 表等。 第三章组态软件结构介绍和程序设计 本章是本文的重要部分,主要介绍本组态软件的功能、结构、界面、以 及具体实现过程,同时还介绍了商用软件开发流程管理在本软件设计过 程中的体现。 第四章相关技术及具体实现 本章也是本文的重要部分,介绍了相关技术在本组态软件中的应用。主 要介绍了多线程技术、f t p 文件传输技术、串口通信技术和w i n s o c k 网络 通信技术在组态软件中的应用和具体实现。 最后对本文进行了总结,并指出了需要进一步完善的工作 7 硕士论文综合监控前置机系统组态软件的设计 2 f e p 系统介绍 2 1f e p 应用方案 以下是f e p 系统的功能框架图: 1 0 0 m 以太网 一一一一一 预留的1 0 0 m 以太网 一串行口 2 2f e p 硬件介绍 图2 if e p 系统功能结构图 f e p 选用e p s b s 公司的s c m - 7 0 2 4 型p c i 0 4 模块。其性能特点如下: i ) x 8 6 兼容6 4 位微处理器,支持m 嗽指令集扩展,速度可达3 0 0 m h z 2 ) s v g a 显示接口支持c r t 及t f t 9 f e p 系统介绍 硕士论文 3 ) 在板内存可达1 2 8 m 4 ) 1 6 k bl 1 回写缓存 5 ) 支持p s 2 键盘及鼠标 6 ) 支持软驱、i d e 硬盘 7 ) 两串一并接口 8 ) 两个u s b i 1 接口 9 ) 四个l o l o o b a s e t 以太网接口 1 0 ) 1 6 位p c 1 0 4 总线 1 1 ) p c 1 0 4 兼容 另外,由于该模块并不能满足全部要求,p c l 0 4 底板必须重新设计p c l 0 4 底板 的功能主要有: 1 ) 引出p c i 0 4 模块上的2 个串口,4 个以太网口。 2 ) 采用4 个1 6 c 5 5 4 芯片,扩展1 6 个串行口。 3 ) 扩展2 个c a n 网口 4 ) 扩展若干指示灯,用于监视c p u 工作状态 5 ) 所有r s 2 3 2 接口实现按口切换。 2 3f e p 关键功能介绍 2 。3 1 节点功能 。节点”是实时数据库的最基本元素。这一理念来自于c 3 0 1 通信控制器。一般 情况下一个节点对应一台现场测控设备,例如:一条线路的四合一装置、一台主变测 控单元等。每个节点存储了其所对应的测控设备所采集的所有信息,如信号量、模拟 量、电度量、设备工况等。由于考虑采用动态内存分配方式,信息的规模可根据实际 情况灵活定义。对于每种信息少则可以没有,多则可以数千个。 之所以采用节点作为f e p 实时数据库的最基本元素主要是从实际应用的角度来 考虑的。各个节点的信息来自于同一台测控装置,当这台测控装置发生故障后,其所 有实时信息均应使其无效,所有对其的控制操作均应闭锁;当新上一台测控装置时, 只要在内存中为其新申请一块内存,新建一个节点,而不会影响已有节点的实时数据 更新;当要重新配置某个已经定义的节点时,只需要对这个节点进行初始化,不会影 响其他节点数据。 根据运行的需要,可能会停用某台设备,那么只要将该设备对应的节点置为停用, 就可闭锁对该节点的所有数据更新及控制命令。由于采用动态内存分配技术,理论上, 对一台f e p 内可以定义多少个节点只受p c 1 0 4 模块上的内存大小的限制。节点同时 1 0 硕士论文综合监控前置机系统组态软件的设计 也是冗余双机系统之间数据同步的基本单元。对于不能按照测控装置上送信息的子系 统,那么可以将整个子系统当作一个大节点来处理。 在以往类似的设备中( 如c 3 0 2 ) 节点的定义是静态的,其在内存中的起始地址、 信息容量等在程序编制或编译的时候就分配好了的,所以对实时数据的索引也非常简 单,定位某一节点就是根据在组态时定义的节点顺序。但这种方式在索引遥控的时候 会带来问题。 在现有的调度规约中,无论是部颁c d t 规约,还是1 0 4 规约,或者d n p 规约,其 对遥控对象的定义都是通过遥控号( 或者信息体地址) 来表示的。这是一维线性表示 方法而f e p ( 或通讯控制器) 必须将其转换成“某个节点的某个遥控对象”。那么 在以往的设备中是如何转换的呢? 假如系统定义了3 个节点,第一个节点有8 个遥控 对象;第二个节点有4 个遥控对象;第三个节点有4 个遥控对象那么第一个节点的 遥控就对应调度遥控号o 7 ,第二个节点是8 1 1 ,第三个节点是1 2 1 5 。调度发 遥控命令下来,遥控号是9 ,那么就转换成“第二个节点的第二个遥控对象”。 如果根据运行要求,删除第二个节点。调度发遥控命令,遥控号还是是9 ,这时 候实际操作的就会是原来“第三个节点的第二个遥控对象”显然这是非常危险的。 因此,要删除节点的时候,必须要求调度的遥控表随之变更。而变更调度遥控表又会 带来管理方面的一系列麻烦。 为了避免出现以上情况,f e p 开发考虑引入“节点标识”的概念。在节点定义的 时候,人为为每个节点定义一个整数,称为“n o d e _ i d ”组态软件必须保证每个节点 的n o d ei d 是唯一的。在定义转发表的时候全部用n o d e _ i d 来区分节点。如遥信转发 表描述遥信时表示为( n o d e _ i d y x _ n o ) 。遥控也时如此。如果删除某个节点,在系统 中找不到该n o d e _ i d ,也就不会造成错误,调度也不用修改遥控表。在f e p 中所有对 节点的索引操作均通过n o d e _ i d 来实现。在系统组态定义n o d e _ i d 的时候,要求 n o d ei d 不能大于 ,这由组态软件来保证。_ 2 5 6 2 3 2 通道功能 1 ) 通道的定义 在通常意义上,一个串行口、一个现场总线接口、一个以太网口都可称为一条通 道。但在实际应用中并非如此简单。如:对于现场总线,可能会同时使用两个现场总 线接口完成一个通讯任务;对于以太网则更为复杂,我们不能简单地把一个网口认为 就只是一个通道。实际上,由于有t c p i p 协议栈的支持,使得我们可以在一条以太 网物理通道上建立多个t c p i p 链接,从而形成多个逻辑通道。而网络通讯还有其特 殊之处,就是完成一个通讯任务往往可能需要多个逻辑通道混合使用。例如,有的网 络协议要求既要有t c p 连接支持,又要有u d p 报文收发。 1 1 f e p 系统介绍 硕士论文 为应对上述复杂多样的通道问题,f e p 设计时对通道的定义必须是抽象的。因此 有必要提出“任务通道”的概念。 为处理一个通讯任务而使用的一个或多个通道称之为一个“任务通道”。 与节点相似,对任务通道的描述采用“任务通道标识”的方式,既每条任务通道 都有一个t a s k _ c h a n n e l _ i d 而每个t a s k _ c h a n n e l _ k ) 对应一个通讯任务。 与n o d ei d 不同的是,多个物理或逻辑通道可以共用一个t a s kc 扎蝴ld , 这表示这些通道是给同一通讯任务同时使用的。对于互为冗余的f e p 双机,互为冗 余的通讯端口必须使用相同的t a s kc h a n n e li d 。 对于串行口及现场总线,每个接1 :3 都可以定义一个t a s k _ c h a n n e l。而对_id 于以太网,在组态时根据需要先定义一个或多个t c p 、u d p 链路,每个链路认为是 一条逻辑通道。每条逻辑通道定义一个1 a s kc h a m e ld 。 2 ) 任务通道基本功能 ( 1 ) 创建网络收发任务 如果在组态参数里定义了网络通道,那么首先建立一个网络收发任务。这个任务 在初始化的时候根据组态参数建立相应的t c p 客户端s o c k e t 、t c p 服务端 s o c k e t 、u d p 客户端s o c k e t 或u d p 服务端s o c k e t 等。每个s o c k e t 就是一 条链路,或者称为一个逻辑通道。网络收发任务管理f e p 中的所有s o c k e t ,负责 所有网络报文的收发。由于网络通讯是高速的,因此为了保证其实时性,网络收发任 务具有较高的任务优先级。对于规约任务( 规约程序) ,s o c k e t 是不可见的。网络 收发任务与规约任务之间通过环形缓冲进行的数据交互;对于链路状态及链路控制, 通过接口函数进行交互。 ( 2 ) 初试化通道参数 通道参数包括:t a s k _ c h a n n e l _ i d ,规约号,转发表号,节点列表等。转发表 号用于数据转发任务,为数据转发提供转发表索引;节点列表主要用于数据采集任务, 表示挂在该通道上的所有节点的n o d e _ i d ,数据采集任务以此为依据接收相关节点 的信息。 ( 3 ) 创建通讯任务 每条任务通道对应一个通讯任务,这个任务里运行的是指定的规约程序。规约程 序由规约号来表示。f e p 中建有一张静态的规约列表。任务创建程序根据规约号索引 规约程序的入口地址。 ( 4 ) 任务通道消息队列 f e p 为每个任务通道创建一个消息队列,该消息队列用于接收来自其他任务的消 息。例如,某个转发任务收到遥控指令,先根据转发表找到对应节点的n o d e ,_id 通过n o d e _ i d 获取该节点所属通道的t a s k _ c h a n n e l _ i d ,然后把遥控消息以一 1 2 硕士论文综合监控前置机系统组态软件的设计 定的格式发给该通道的消息队列。任务通道不断的检查消息队列里是否有新的消息, 如果有则处理该消息。 任务通道消息包括:控制命令消息、通道切换消息、通道停用消息、通道删除消 息、节点停用消息、节点删除消息、节点增加消息、节点修改消息等, 3 ) 冗余通道切换 对于按通道进行冗余的双机系统需要具有通道切换功能,既能将本机通道从备用 状态切换成值班状态,也能将本机通道从值班状态切换为备用状态。通道切换分为两 种,一种是自动切换,另一种是人工切换。 以数据采集任务为例,自动切换分两种情况:一种是本机通道处于值班状态,但 是与所有节点的通讯都中断。此时,本机通道任务向冗余f e p 对应的通道发出切换 请求消息,对方应该给予确认。收到对方的确认消息后,自动将本机通道及此通道上 的所有节点置为备用状态;另一种情况是本机通道处于备用状态,则通道任务实时任 务监听冗余f e p 对应通道的心跳。如果对方心跳超出一定时间,则向对方发出切换 请求。对方应该给予应答,如果超出一定时间没有应答,则自动将本机通道切为值班 状态。 人工切换就是通过监控软件包发送通道切换命令给对应的通道,要求强制切换。 2 3 3 转发数据库 转发数据库的功能是将实时数据库中的实时数据经过筛选,按数据类型进行分类 存储,从而为转发任务提供转发数据。 1 ) 数据结构 与实时数据库不同,转发数据库并非按照节点存储数据,而是按照数据类型进行 存储。 基于以上考虑,转发数据库将由“遥测数据表”、“遥信数据表”、“电度数据表”、 “c o s 队列”、“s o e 队列”等部分构成。同种数据按转发顺序连续存储。其结构如 下图所示: 遥测数据表 遥信数据表 电度数据表 c o s 队列 s o e 队列 图3 2 转发数据库结构 2 ) 转发参数表 转发参数表由组态软件生成,以文件的形式存于电子盘上,在系统初始化时将其 1 3 f e p 系统介绍 硕士论文 调入内存,并以此为依据动态生成转发数据库每张转发参数表生成一个对应的转发 数据库,转发数据库中的数据来源由转发参数表定义。本f e p 中拟定最多可支持到8 张转发参数表,也就是说最多可支持8 个转发数据库 转发参数表的基本构成如下图所示: 遥测转发数 遥信转发数 电度转发数 遥控转发数 遥测转发表 遥信转发表 电度转发表 遥控转发表 图2 3 转发数据表结构 转发表中的每条记录均以( n o d e _ i d ,i n d e x ) 来表示;其中i n d e x 表示欲转 发的数据在n o d e - i d 这个节点中的序号 3 ) 转发数据库的刷新 转发数据库中的遥测、遥信、电度数据并不是实时刷新的,只对当前要转发的数 据进行刷新,暂时不转发的数据不刷新。这样做有两个好处:一是可以降低c p u 的 负荷;另外就是可以保存上次转发的值,便于转发任务判断变化数据。 4 ) 无效数据 转发数据库中对每个数据设置一个无效标志。当f e p 中某个节点工况退出,或 节点被封锁,或节点被删除,则转发数据库中与此节点相关的数据均设为无效;当转 发任务试图读取该数据时,会被告知此数据无效,并返回最后一次有效时刷新的值; 转发任务可以根据情况做出相应处理。 5 ) 转发数据库的接口 转发数据库的接口主要是与数据转发任务的接口。数据转发任务只能使用转发数 据库提供的接口函数访问转发数据库,转发数据库接口函数负责对转发任务所提交的 参数进行有效性检查。转发数据库实体及转发参数表对数据转发任务是不可见的 2 4 本章小结 本章主要简单介绍了f e p 的具体开发方案,包括硬件和底层软件的简单介绍,以 及与组态软件相关的一些关键技术的设计,其中包括实时数据库、通道功能和转发数 1 4 硕士论文 综合监控前置机系统组态软件的设计 据库。作者主要参与了实时数据库基本元素节点的确定和节点索引的引入;任务通 道概念的提出及其功能设计;转发数据库的数据结构和转发数据表的设计。 硕士论文综合监控前置机系统组态软件的设计 3 组态软件的具体设计 本软件按照软件工程思想开发和设计,包括可行性和需求分析,具体程序设计、 调试和改错以及文档的制作等。该组态软件主要功能包括以下几项: 1 ) 系统基本组态的创建。基本组态的主要内容有系统组态、节点组态、任务组 态以及转发数据表组态。其中,系统组态包括系统信息,串口、以太网口、c a m 网的 参数设置;节点组态主要包括节点属性、型号、地址、各种数据量以及其他众多参数; 任务组态主要包括规约、介质、转发表和节点列表等参数;转发表组态主要有遥测量、 遥信量、双位遥信量、遥控量、遥调量,遥脉量和通用数据量的组态。 2 ) 在本机中生成组态参数文件,并能将本机的参数文件导入到组态软件中,在 界面中显示。 3 ) 在计算机与f e p 之间通过f t p 进行申请和下装组态参数文件 4 ) 与f e p 通过以太网和串口进行连接 5 ) 分别通过以太网或串口对f e p 中任务通道( 以太网、串口和c a n 网) 的报文 进行监视,并在界面中显示数据。 本章除了介绍软件的需求分析和功能要求外,主要介绍软件的界面部分,整个软 件界面主要可以划分为以下个模块: 1 ) 主框架部分:负责窗口管理、功能选择,信息显示等; 2 ) 基本组态部分:负责参数设置,包括系统参数,节点参数、任务参数、转发 表参数的显示、设置与修改; 3 ) 报文监控部分:负责显示f e p 中各任务通道数据; 4 ) 组态文件操作部分:负责参数文件的导入和导出,以及上传与下装。 下面就对软件的具体设计过程进行介绍。 3 1 需求分析及功能要求 需求就是指明必须实现的目标的规格说明。它描述了系统的行为和属性,是再开 发过程对系统的约束嘲。系统需求分析的任务不是具体地解决客户的问题,而是准确 地回答“目标系统必须做什么”的问题阿。 用户了解他们所面对的问题,知道必须做什么,但是通常不能完整准确地表达出 他们的要求,更不知道怎样利用计算机解决他们的问题;软件开发人员知道怎样用软 件实现人们的要求,但是对特定用户的具体要求并不完全清楚。因此,系统分析员在 需求分析阶段必须和用户密切配合,充分交流信息,以得出经过用户确认的系统需求。 该组态软件属于公司开发的北京地铁五号线的综合监控系统( i s c s ) 的f e p 系统 软件部分的一个内容。由于该项目意义重大,所以对软件的要求很高。 1 7 组态软件的具体设计硕士论文 需求分析的任务是确定用户对软件系统的需求。具体包括以下几部分: 1 ) 功能需求 软件必须要完成的功能。该组态软件要完成的功能主要有基本组态参数设置,参 数文件的导入、导出、上传和下装,f e p 报文监控等。除了上述功能,为了使界面友 好,操作简便,提高软件性能等原因,还要适当添加其他辅助功能以进一步完善该软 件。 2 ) 性能需求 软件的安全性、可靠性,可维护性、精度,错误处理、适应性、用户培训等。该 软件要求有较高的可靠性、实时性、通用性、容

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论