组态软件在火电机组中的DCS(集散控制系统)应用

来源 :电脑知识与技术·学术交流 | 被引量 : 0次 | 上传用户:llwjm
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:近年来,用电需求量的不断增加,火电单元机组不断向大容量、高参数方向发展。为保证机组运行的安全性、经济性和稳定性,机组运行的难度也相应地增加,以往用常规仪表进行过程监控的办法已经不能适应大机组安全经济运行,代之而起的是以4C技术(计算机Computer、通讯Communication、控制Control、显示终端CRT)为基础发展起来的集散控制系统。因而新建机组及一些老机组的改造都无一例外地采用了DCS(集散控制系统)。重点介绍了如何有效的实现利用组件对象模型技术(COM技术)、面向对象技术和可视化软件的实现方法开发研制了组态软件,在火电机组中的一个DCS的实例应用。
  关键词:组态软件;火电机组;DCS;实例设计
  中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)33-1522-03
  为了满足国民经济迅速增长带来的用电需求量的不断增加,提高电力工业生产的经济效益,火电单元机组不断向大容量、高参数方向发展。随着机组容量的增大,为了保证机组运行的安全性、经济性和稳定性,机组运行的难度也相应地增加,运行过程中需要监督控制的参数越来越多,以往用常规仪表进行过程监控的办法已经不能适应大机组安全经济运行,代之而起的是以4C技术为基础发展起来的集散控制系统。因而新建机组及一些老机组的改造都无一例外地采用了DCS(集散控制系统)。
  1 集散控制系统及其组态软件设计思想
  集散控制系统的实质是利用计算机技术对生产过程进行集中监视、操作、管理和分散控制,实现危险分散。集散控制系统概括起来由集中管理部分、分散控制监测部分和通讯部分组成。集散控制系统软件部分是由实时多任务操作系统、数据库管理系统、组态软件和各种应用软件所组成,其中组态软件的概念是设计的重点。
  集散控制系统的软件一般是较为成熟的模块化结构,系统的图形显示功能、数据库管理功能、控制运算功能和历史存储功能等全有成熟的软件模块。但通常不同的应用对象,对这些内容要求有较大的区别。所以一般的DCS提供一个(或一组)功能很强的软件工具包,即组态软件。该组态软件提供友好的用户界面,使用户在不需要编写什么程序代码的情况下,便可生成自己需要的应用软件。
  随着分布式计算机控制系统的发展,人们越来越注重系统的软件组态和配置功能,即系统中配有一套功能十分齐全的组态生成工具软件。组态软件应当具有很强的通用性,能够适用于一大类应用对象,而且系统的执行程序代码部分一般是固定不变的,为使用不同的应用对象只需由组态软件生成不同的数据实体(包括图形文件、报表文件、数据库文件、脚本文件等)即可。这样,既大大提高了系统的成套速度,又保证了系统软件的成熟性和可靠性。
  2 实时监控系统及其组态生成系统
  从国外引进的大机组及其配套的DCS系统固然有其无可比拟的优越性,但代价十分昂贵。在现有机组上进行技术改造,提高机组的自动化水平,减少工人的劳动强度,增加系统运行的安全性、经济性,对大多数电厂来说是一条切实可行的途径。国内许多根据集散控制系统的设计思想开发的实时监控系统,其功能相当于集散控制系统的一个子集,能够根据电厂生产的实际需要和资金状况进行灵活配置。在这些实时监控系统中,无论是计算机控制系统,还是数据采集系统(DAS系统),直接的流程画面显示和实时数据库都是必不可少的功能。利用显示实时数据库数据的过程监控画面来代替传统的庞大的模拟仪表屏,使得运行人员不需要时刻在排列的仪表盘上检查各仪表的数据,或巡视整个模拟屏来得到生产过程的运行情况,而只需轻松地坐在CRT终端前面就可以观看整个流程的工作概况,又可以逐层细化入微,观察每个调节回路的工作细节,即利用计算机强大的信息处理能力,实现系统的集中管理和显示。实时监控系统的过程监控画面不但可以显示生产过程的流程图和实时数据,还可以支持各种趋势图、棒图的显示、报表的显示和打印以及报警信息和操作指导等。
  对一幅实时监控画面进行分析,可以发现它是由许多符号组成的,如流程画面中的各种设备表示,进一步分解发现它是由许多基本的几何图形组成的,如直线、折线、矩形、多边形、圆、椭圆、文本等,这些基本的图形被称为图形中的图元。图元具有一些属性,如边线的颜色、粗细、类型,内部填充的颜色以及在显示器上的显示位置等,另外,实时监控系统画面还须有动态显示属性,如开关符号根据实时参数的变化呈现打开或闭合状态、棒图的动态填充、曲线的连续变化等等。编制一幅监控画面时需要加入上述的静态和动态的属性特征。
  “设备”包含五个子项目:“COM1”、“COM2”、“DDE”、“板卡”和“网络节点”。主要是支持与I/O设备的四种通讯方式:串行通讯方式、DDE(动态数据交换)方式、板卡方式和网络节点通讯方式。
  “系统配置”包含七个子项目:“设置开发系统”、“设置运行系统”、“报警配置”、“网络配置”、“用户配置”、“打印配置”和“历史数据记录”,主要是对以上七个方面设置一些配置信息。
  3 控制系统(Make)实例
  功能方面对本图形组态软件进行了划分,它从功能上可以分为四大模块:工程管理器、画面开发系统、画面运行系统和实时数据库。其中子系统画面开发系统主要由菜单、固定工具条、绘图工具箱和画面编辑窗口组成,如图2所示。
  3.1 菜单
  菜单分为“文件”、“编辑”、“查看”、“排列”、“工具”、“颜色”、“帮助”和“画面”8个主菜单。“画面”菜单列表显示已经打开所有的画面(显示内容为画面名称),并可方便地在各画面之间进行切换。
  4 组态软件的技术实现
  下面将从MFC提供的基本应用程序框架入手,详细介绍工程浏览器和画面开发系统的图元类库、文档类、视图类和实时数据库的实现技术。
  程序框架及框架类:本组态软件系统具体实现,是在Visual C 6.0平台上利用系统工具生成的比较重要的程序框架基础类。
  利用Visual C 6.0工作平台的AppWizard为本系统建立一个名为Make的项目(Project),并生成具有以下特征的应用框架:
  
  图1 工业控制计算机系统组态软件功能
  
  1) 多文档界面(MDI:Multiple Documents Interface),支持文档视图结构;
  2) 既是OLE容器又是OLE服务器,支持ActiveX文档和ActiveX控件;
  3) 在程序主框架中初始化工具条和状态条;
  4) 在视图中支持打印和打印预览;生成源文件中加入注释;
  5) 生成的是MFC标准类型的项目;使用动态连接的MFC类库。
  AppWizard为本系统生成出九个类,其中应用类、主框架窗口类、子框架窗口类、视图类和文档类构成了一个多文档应用程序的主要部分。这五个主要的类通过调用相互的公共成员函数以及传递消息,进行相互间的通讯和数据交换。表4.1简述了本系统中四种主要类的特征。
  在程序框架中,上述五个主要的类除继承其父类全部可继承的功能以外,还重载了一些虚拟函数和添加了一些其他函数。下面对这部分成员函数进行说明:
  4.1 CMakeApp
  CMakeApp由CWinApp派生,是应用程序类。完成应用程序实例的初始化、登记文档模板、生成主窗口及系统的退出结束处理等。其重载函数包括:
  1) 构造函数CMakeApp():构造应用程序实例对象;
  2) 虚函数InitInstance():初始化应用程序实例,再此需要登记将使用的文档模板。文档模板提供了MFC用来将文档、视图和框架窗口结合在一起的框架结构,实际上是文档模板为应用程序创建新文档和新视图。文档模板常以两种形式出现:用于单文档(SDI)程序的CSingleDocTemplate和用于多文档(MDI)程序的CMultiDocTemplate。本组态软件使用的是多文档模板,主框架窗口也是以此模板为基础生成。其实现代码如下:
   pDocTemplate = new CMultiDocTemplate(
   IDR_MAKETYPE,
   RUNTIME_CLASS(CDrawDoc),
   RUNTIME_CLASS(CChildFrame), // custom MDI child frame
   RUNTIME_CLASS(CDrawView));
  AddDocTemplate(pDocTemplate);
  m_pDrawTemplate=pDocTemplate;
  m_pDrawTemplate是应用程序对象的公有成员变量,其他类的对象可以通过应用程序对象来取得该文档模板,从而可以新建、打开文件等。
  由于工程浏览器需要通过COM接口访问实时数据库对象来访问存放数据点信息的Access数据库,所以在初始化函数中需要对COM库进行初始化:
  CoInitialize(NULL); //初始化COM库
  工程浏览器与画面开发系统是不同的两个框架窗口,主窗口是画面开发系统,因而在初始化过程中还需要创建工程浏览器的框架窗口,工程浏览器框架窗口类是通过ClassWizard工具从CFrameWnd继承,关于工程浏览器窗口类将后面介绍。在此新建CProjectFrame的一个对象(即窗口)并显示,代码如下:
  
  图3程序执行步骤
  4.4 CDrawView
  CDrawView是由滚动视图CScrollView派生而来,其初始成员函数包括:
  构造、析构函数;
  GetDocument():一个视图只能与一个文档相联系,该函数返回与该视图相联系的文档类对象指针,返回类型为CDrawDoc *,即CDrawDoc类对象的指针;
  虚函数OnInitialUpdate():是视图的初始化函数;
  虚函数OnDraw():用于更新视图窗口;
  以上简单介绍了AppWizard为本组态软件生成的主要类的基本功能,并对本软件应用类作了较为详细的介绍。其中,对文档类的派生类CDrawDoc的成员和功能扩充后,就可实现画面开发系统的文档管理器功能;对视类CDrawView、主框架类CMainFrame、子框架类CChildFrame进行扩展,并与一些另外定义图元类、图元工具类相结合即可实现画面开发系统的编辑环境;工程浏览器则是由自定义的框架类和视图类来实现。
  从应用框架的角度来讲,本组态软件的执行步骤如图3所示:
  1) 调用CWinApp类构造函数;
  2) 程序入口函数WinMain()接收控制,调用InitInstance()函数进行初始化,创建工程浏览器和画面开发系统框架;
  3) WinMain()进入处理消息的循环;
  4) 用户可以通过菜单命令启动画面运行系统;
  5) WinMain()退出,程序终止执行;
  6) 如果启动了画面运行系统View,可终止View。
  其中,程序入口函数WinMain()是在MFC内定义的。
  5 结束语
  在本组态软件的设计过程中,充分体现了面向组件对象的设计思想,将画面的开发、运行和实时数据库可分成不同的模块,通过COM接口实现相互访问,在软件扩充时只需加入不同功能的模块并实现相应的接口,使本组态软件有较好的可扩充性;本软件采用了面向COM和面向对象的设计方法,在COM库和MFC类库的强大功能支持下开发完成,将各个模块的方法和数据封装在一起,并大量继承了MFC类库中经过很多测试的类,大大提高了系统的稳定和可靠性;由于COM支持聚合和包容,MFC中的各个类支持类的继承,每个图元有自己的方法和属性,所以本系统也具有较好的可扩充性。
  本组态软件除了用于火电厂监控系统,同样可用作其它监控系统的组态;除了用于专用系统的图形组态外,本软件也可以作为通用的绘图工具软件来使用。因此具有较广泛的实用价值。本次开发只是建立了一个组态软件的框架,实现了组态软件的一些基本功能,还需要在实际应用中通过扩充手段不断丰富和加强。
  
  参考文献:
  [1] David J.Kruglinski,Scot Wingo,George Shepherd,著Visual C 6.0 技术内幕(第5版)[M].希望图书创作室,译.北京:希望电子出版社,1999.
  [2] 程文斌,王一行,等.C库函数和MFC库类详解[M].北京:航空航天大学出版社,1995.
  [3] 王叶,叶爱亮,祁立学.Visual C 6.0 编程实例与技巧[M].北京:机械工业出版社,1999.
  [4] Chuck Wood著.Visual C 6.0数据库编程大全[M].梁普选,梁津,刘玉芬,等译.北京:电子工业出版社,2000.
  [5] Steve Oualline著.实用C 编程大全[M].辛运帏,吴拉朵,译.北京:电子工业出版社,1997.
  [6] John E.Swanke著.Visual C MFC扩展编程实例[M].前导译.北京:机械工业出版社,2000.
  [7] Kate Gregory著.Visual C 6 开发使用手册[M].前导译.北京:机械工业出版社,1998.
  [8] James L.Conger著.Microsoft Windows API大全[M].沈民,张燕,译.北京科海培训中心,1997.
  [9] 木林森,等.Visual C 6.0使用与开发[M].北京:清华大学出版社,1998.
  [10] Richard C.Leinecker,Jamie Nye著.Visual C 开发工具使用指南[M].廖安隶,等译.北京:机械工业出版社,1997.
  [11] 顾良士,朱学武,张卫,等.InTouch人机接口应用生成程序[M].北京:学苑出版社,1993.
其他文献
摘要:C语言由于具有其它程序设计语言无法比拟的优点,因此成为当今世界上应用广泛、最具影响的程序设计语言之一。目前国内很多高校的工科专业都将C语言作为一门重要的基础课程纳入教学大纲中。该文针对C语言的功能和特点进行分析,提出从多个方面采用恰当的教学方法,帮助学生解决编程难的问题。  关键词:C语言;教学方法;编程  中图分类号:G424 文献标识码:A文章编号:1009-3044(2008)35-2
书名:教师人文解读  作者:吴国平  出版社:上海辞书出版社  出版时间:2011年  ISBN:9787532634675  定价:25元  近年来,国家对教材编排、考试内容及形式、学生课业负担等方面的关注较多,而对于教师队伍的成长、进步及学校制度建设等关注较少。教师的人文素养不仅关乎教学的成效,更加关乎育人的成败。作为人文教育的“土壤”,学校的价值理念和制度文化也直接决定了学生精神成长的“营养
摘要:针对近年大量病毒均借助自动播放功能交叉感染和自动激活的客观实际,提出了一种基于系统外壳文件补丁方法的Autorun型病毒根治方案,并且给出了自动部署这种方案的简便方法,同时在此基础上实现了全新部署系统时的针对Autorun型病毒的先天加固。  关键词:病毒;自动播放;系统外壳;安全加固  中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)33-1332-03  A
摘要:《机械CAD》课程是机械制造类专业的重要专业课程。学习这门课时,一般方法是先讲菜单和命令的使用,最后再画整体图形,或者是教师在课堂上讲完一两次课(2课时)之后,再让学生训练两节课。这种传统的教学方法学习效果不佳,因为教师讲的多,学生练的少,结果是课上完了,学不到多少东西。这样传统的教学方法已经不再适用于现代学生的需要,我们已经尝试了项目教学法,效果很好。  关键词:AutoCAD;项目教学法
摘要:以C 程序设计语言教学存在的问题为突破口,从教学内容、教材选取、教学方法、教学工具、教学手段和考试方法等各方面入手,总结了在教学改革与课程实践方面的一些经验和体会,提高了C 语言的教学质量和教学效果。  关键词:C 程序设计语言;教学改革;课程实践  中图分类号:G642文献标识码:A文章编号:1009-3044(2008)31-0917-02  Shallow Talk on Tea
摘要:文章主要通过实验量化的方法,分析对比汉语母语者和美国留学生在朗读任务中的停顿特点,找出留学生朗读存在的问题,并根据问题分析原因和表现,然后制定出相应的教学策略,为对外汉语教学提供帮助。  关键词:朗读 停顿 教学  一、引言  一些研究表明,从言语产生的角度来看,说话人每次连续发出的音节数从不超过7个;而对言语感知的研究也证明,人的整体记忆的跨度通常也是7±2个音节[1],这是言语产生和理解
提升思想教育水平,是完善大学生人格,提升其个人成长速度的关键。对于大学生而言,接受思想政治教育能使他们拥有更加独立的人格,能够对一件事产生正确的判断。正确的思维方式才能导向正确的处理结果。当前,文化的发展呈现出明显的多元化特征,这样的发展趋势对于高校思想政治教育必然会造成冲击,对教师教学提出更高的要求。面对这样的形势,该如何应对?霍朋、郭红玲二人合著的《多元文化视角下大学生思想政治教育研究》一书从
背 景  “第一书记”是中国式脱贫攻坚战役中诞生的创新性战略举措。作为党的扶贫政策的执行者和脱贫攻坚战役的领头人,“第一书记”们从原先的工作岗位来到一个完全陌生的环境,长期驻扎在国家级贫困村,殚精竭虑、全心全意帮扶和带领贫困农民脱贫致富,涌现出许多值得记录的感人故事,成为最具时代特征、最有故事性、最丰富的纪录片创作题材。四川省文联、四川广播电视台、四川省电视艺术家协会于2017年策划了电视系列纪录
德育文化是指学校充分利用文化中的德育资源,通过案例分析的方法开展教学,用文化浸润德育,发挥文化的引领、认同和传承的作用,使德育的精华熏陶学生内心。对现代文化的诉求是学校构建德育文化教学模式的现实基础,也是文化演进过程中的必然之选。德育在本质上就是价值观传承的体现,是文化的创新和传承。学校在对学生的成长和品德教育方面发挥着重要作用,甚至会影响其一生。因此,构建一种健全的德育课程体系,创造一种稳固、健
书名:语文德育論  作者:梁其贵  出版社:大象出版社  出版时间:2006年  ISBN:9787534744365  定价:36元  德育是对学生进行思想、政治、道德、法律和心理健康的教育过程。课程标准指出:“培养学生高尚的道德情操和健康的审美情趣,形成正确的价值观和积极的人生态度,是语文教学的重要内容,不应该把它们当作外在的附加任务。应该注重熏陶感染,潜移默化,把这些内容贯穿于日常的教学过程