机电之家行业门户网运行
文章 下载
最新公告:

  没有公告

设备维修与管理培训
您现在的位置: 设备维修与管理 >> 设备管理 >> 管理论文 >> 设备维修论文 >> 资讯正文
 
赞助商
 
 
最新文章
 
 浅谈核电站常规岛技术方案
 超临界的无烟煤PF点火
 IGCC技术 ,高效发电以扩大煤炭价
 百万千瓦级汽轮机选型研究
 百万千瓦级锅炉选型研究
 切向燃烧锅炉气流反旋现象试验研
 哈三电厂二期工程600MW机组轴系安
 410t/h锅炉浓淡稳燃器的应用技术
 HG-1021/18.2-HM5锅炉燃烧器方圆
 汽轮发电机损耗计算的改进
 
推荐技术
 
 
相关文章
 
哈三电厂二期工程600MW机
盘山发电厂2号机组DCS系
上安发电厂3号机真空系统
盘山发电厂1号机灭火保护
烟烙尽灭火系统及在三河
基于人工神经网络的梯级
对火电厂老机组热工自动
郑州热电厂670 t/h锅炉双
军粮城发电厂8号机真空严
发电厂自动控制系统(装置
 
客户服务
 
如果您有设备方面好的文章或见解,您可以送到我们的投稿信箱
客服电话:0571-87774297
信   箱:88ctv@163.com
我们保证在48小时内回复


s

b

g

l

.

j

d

z

j

.

c

o

m

 

电厂分散控制系统工程师站人机界面的设计与实现           
电厂分散控制系统工程师站人机界面的设计与实现
作者:佚名 文章来源:技术论文 点击数: 更新时间:2008-10-13 8:58:19

1 引言

  我国火电厂计算机应用大致可分为2个阶段,一是计算机监视系统(DAS)阶段,二是计算机监控系统,即采用以微机为基础的DCS阶段。前者只有数据采集功能,后者兼有控制功能,使计算机应用向纵深发展,对提高电厂自动化水平起着决定性作用。
  作为一种非常重要的控制手段,分散控制系统(DCS)已经在电力工业自动化中得到广泛应用。EDPF-2000就是吸取90年代国际上众多同类系统的先进思想,并充分结合我国国情而设计开发的一套分散控制系统。我们针对EDPF-2000系统目前的实际情况,根据人机工程学理论,遵循Microsoft Windows应用人机界面的设计原则,运用面向对象的程序设计语言Visual C++5.0以及微软基础类库(MFC),在中文Windows NT4.0操作系统平台上设计开发了32位的EDPF-2000工程师站人机界面,实现了工程师站(ENG)与采集控制站(DPU)和操作员站(OPR)之间的通讯与数据传输。该界面继承了Windows NT的应用程序界面风格,DCS用户只需掌握Windows NT( 或Windows95)的基本使用,即可对EDPF-2000工程师站进行操作。

2 Windows NT的界面设计原则

  Windows NT的界面设计包括以数据为中心的用户界面设计和以用户为中心的设计过程两个方面。
  以数据为中心的用户界面设计意味着界面的设计支持一种特殊的模型,在这种模型中,DCS用户可以对数据进行浏览,并且直接对其进行编辑,而对数据进行处理或者浏览的命令和工具将自动地为用户所用。用户界面的设计模型应采用对象隐喻的概念,为用户提供一个易于理解的、一致的框架,使得用户不必在被底层技术细节所困惑的前提下,在这个框架中轻松自如地工作。同时,DCS用户可以把自己的注意力集中于信息和需要完成的任务上面,而不必考虑与任务无关的事物,如应用程序怎样进行交互作用等。
  对一个对象而言,不管它是真实世界的表示还是计算机的表示,都具有某些特性,可以帮助人们理解它是什么以及它的行为是怎样的。这些特性包括:属性和操作、关系(集成、约束、合成、包容)、组合、持续。在界面中,对象所描述的并不仅仅是文件或者图标,它还描述了所属的所有信息。
  以用户为中心的设计过程包括:使DCS用户可以对程序进行控制、可以直接在屏幕中看到自己的操作对对象产生的影响、DCS用户把现成的知识传递到新的任务中并把主要精力集中于具体的任务上面、防止产生可能导致错误的情况并调整潜在的用户错误、信息反馈与帮助、美学效果与可视化设计、保持操作的简便性等。

3 窗口模型与常规交互技术

  Windows NT有多种窗口模型可供使用,如SDI、MDI、Dialog、Workspace、Workbook、Project等。在设计DCS人机界面时,必须考虑到窗口与DCS用户之间的关系,即DCS系统最终使用者所面对的窗口是否适用、是否好用、各个功能窗口之间的风格和使用是否相似等。
  交互是人机界面中一个非常重要的概念,常规交互技术包括:漫游、选定、迁移、编辑、办理、属性、链接、创建、缺省的操作和捷径技术等。交互技术的选择和使用,对于DCS最终用户而言,意味着系统可操作性的程度。
  如何表达相关任务或者处理过程集合的问题,在设计应用程序时,需要考虑大量的设计因素,如DCS用户的范围以及他们的操作技能级别、对象或任务的表达、如何有效地利用显示空间以及如何向以数据为中心的设计发展等,其内容包括:对象或者任务的表达、以数据为中心的设计、变通手段的组合。
  窗口模型与交互技术的选择,直接影响到DCS用户的使用效率,以及对整个DCS系统的评价,在EDPF-2000系统工程师站中,整个系统是以数据为中心的,考虑到大多数电厂用户不是从事计算机专业这一特点,界面选择以简单为主,大多采用对话框,即二级窗口的形式进行设计。同时,采用属性页的方式,把同一类型的不同功能安排在不同的属性表中。这是因为一个单独的文档窗口界面能够为一个简单的、以数据为中心的设计提供最好的支持,而且对于DCS用户来说也是最容易学习的。

4 可视化设计

  有效的可视设计不仅能起到用户界面的装饰作用,而且是用户进行沟通的一种重要工具。在屏幕上对信息进行有效的组织,可以实现与用户相互沟通,而不会让用户感到迷惑。可视表达同窗口模型与交互技术一样,都直接影响着DCS用户的使用效率和对整个DCS系统的评价。
  (1)组合和组织 包括:结构和权衡、信息分层、焦点和强调、元素之间的关系、可读性和流程、集成的一致性。
  (2)颜色 当作信息的一种增强的从属表达手段来使用,应当只使用颜色的一个有限集,并正确使用背景色和颜色编码。
  (3)布局 其属性包括字模和尺寸、分组和间隔、排列、位置等。
  (4)可视元素的设计 可视元素之间都会相互产生影响。有效的可视设计取决于当前的应用背景。一个图形化的元素和它的功能之间有着密切的关系,一个图形化的界面应是直观的,即它的外观应该能够显示出它的功能,而其功能应该体现在它的外观。 可视元素的设计包括:基本边框风格、窗口边框风格、按钮边框风格、区域边框风格、状态域边框风格、分组边框风格、控件的可视状态等,其中控件的可视状态又包括:“按下”显示外观、选项集外观、混合值外观、不可用外观、平面外观等。
  (5)图形映像的设计 图标使用贯穿于整个Windows界面,它所代表的是特定的对象或者任务。重要的是把图标设计成能够有效地表达自己的用途。应该把图标当作一个集合来设计,同时考虑到互相之间的关系以及和用户任务之间的关系。在设计过程中,一致性的保持相当重要。图形映像的设计包括:尺寸和类型、图标风格、指针设计等。
  (6)公共控件的使用 Windows操作系统是一个可扩充的操作系统,其扩充机制是通过增加动态链接库来实现的。公共控件是Windows NT用户界面的核心,包括:动画控件、拖放列表框、头控件、热键控件、图像列表、列视控件、进度指示器、属性表、多信息编辑控件、状态条、游标、树视控件、滚动控件、标签控件、工具条、工具提示等。

5 信息反馈与用户帮助

  在Windows应用界面的设计中,信息反馈与用户帮助十分重要。DCS最终用户面对众多的DCS系统功能,要详细地了解每一功能及其操作中所遇到问题的解决办法,并不是容易的事。好的信息反馈与用户帮助可以最大限度地让用户按照正确的操作方式,完成既定的目标。
  (1)向用户提供活动的反馈 要求具有一致性、可读性、直观性、具体性的特点。
  (2)用户帮助 包括:上下文关联的用户帮助、任务关联Help、任务主题窗口和快捷键按钮、参考Help、Help Topics浏览器。
  (3)Wizard 是一种特殊的用户帮助形式,它可以通过向DCS用户提供一个对话框的形式来自动完成某项任务,特别是一些复杂的并且需要一定经验才能完成的任务。

6 工程师站人机界面的设计与实现

6.1 设计思想
  工程师站用于应用系统的组态以及对应用系统的修改与维护。工程师站的功能包括:数据库的生成、全局数据库的维护、用户显示图形的生成、用户图素定义、用户成组点定义、用户趋势点定义、专用键盘用户键定义、用户历史数据点定义、用户制表数据及格式生成、用户计算站点定义、模拟量控制(LOOP)的组态生成、开关量控制或逻辑控制(LADDER)的组态生成、填表式算法(TEXT)的生成等。每一个应用对应于一种生成功能,产生约定格式的文件。工程师站为每个站准备所需的数据以及控制策略和逻辑。
6.2 开发平台
  EDPF-2000系统工程师站的人机界面,是以Windows NT作为操作系统平台,使用面向对象的Microsoft Visual C++ 5.0程序设计语言设计实现的。
  Windows NT对基本体系结构的增强给用户带来很多好处,如全集成化的32位保护模式操作系统、支持抢占式多任务和多线程、包括VFAT和CDFS以及网络重定向在内的32位可安装的文件系统、包括内存管理和调度管理以及进程管理的完全32位的核心等。
  Windows NT操作系统的应用改变了工业过程控制软件的开发方法,标准的图形用户界面为图像的绘制和应用程序的使用提供了新的工具,使得应用程序能够更加容易地共享计算机资源。随着面向对象技术应用不断深入和应用面的扩大,第四代可视化编程语言不断涌现,使开发人员可以更方便高效地进行开发。
  MFC(微软基础类库)是Windows的一个稳健的C++应用程序框架,它集成于VC++ 5.0,并与组件廊、Class Wizard和App Wizard集成。MFC是一个完全可移植的应用程序接口,它提供给开发者一个可重用的、预制的C++组件,提供100多个可重用的、包括各种各样功能的C++类。MFC提供完全的OLE控件支持,可使用DAO进行直接数据库访问,并提供封装在操作系统中的公共控件。
6.3 功能程序
  为实现工程师站的DCS系统功能,程序针对不同的数据类型使用了不同的数据结构。在程序中,使用了Edit Box、Static Text、Group Box、Button、Check Box、Radio Button、Progress、List Box、Horizontal Scroll Bar、Vertical Scroll Bar、Hot Key、Tab Control等控件,并使用ClassWizard生成和维护各个类中的变量。程序中定义了ico文件,使用了大量的类,定义诸多的结构,使用数组和指针、各种变量及其全局变量。
6.3.1 二次计算算法(Tedit)
  在ENG站侧在线编辑DPU站控制算法,实现DCS控制算法的实时查询与修改维护。主画面由三组Combo Box组成,分别完成“选择DPU站号”、“查看DPU站已有算法”、“选择新算法”的选择实现。共有60多个DCS控制专用算法,每个算法类型使用Dialog实现。
6.3.2 实时数据库维护(DpuEditor)
  在ENG站侧在线维护DPU站实时数据,实现DCS现场数据的实时查询与修改维护。主画面由“系统配置”、“数据库上载下载”、“源点数据维护”、“接收点数据维护”、“系数管理”五部分组成,并由一组Combo Box完成“选择DPU站号”的功能。在各组成部分中,使用Developer Studio Components的Property Sheet,利用Property Sheet Wizard实现了各部分中各个功能的MMI,其中“系统配置”有3个PropertyPage,“数据库上载下载”是一个对话框,“源点数据维护” 有9个PropertyPage,“接收点数据维护” 有3个PropertyPage,“系数管理” 有3个PropertyPage。
6.3.3 数据库管理(Pdb_AI、Pdb_DI)
  利用ODBC实现了对ENG站进行基于FoxPro的数据库可视化操作。利用开放数据库互联(ODBC),构造与数据库无关的客户服务器应用程序,登陆作为后台支持的FoxPro数据库,实现了与ENG站的MMI风格相一致的数据库可视化操作界面,在可视化操作界面中实现了对数据库进行增加、查询、修改、删除等的操作,并实现了对多种关键字(如DPU站号、测点类型、特征字、转换系数序号等)的分类检索、排序和统计。在程序中使用ClassWizard生成和维护了记录集合类(CRecordSet)、记录视类(CRecordView)、文档类(CDocument)中的变量,以及菜单栏资源和工具栏资源,对于特殊的数据结构进行了特别的处理。
6.3.4 画面组态生成与维护(Group,Trend,History)
  在ENG站侧对OPR站的成组、趋势、历史数据等各画面组态进行生成与维护,由各自独立的程序分别完成其各自的功能。程序中进行了大量的读写文件操作,使用了大量的ANSI-C标准文件I/O、格式化I/O、C++文件I/O、CFile类、串行化(Serialize)和流。
6.3.5 电厂MIS系统的数据生成与数据库管理(Point-Editor)
  为MIS提供所需的数据结构及可视化数据库管理。程序利用PropertyPage将其分为“数据文件概况”、“测点一览”、“模拟量编辑”、“开关量编辑”四个部分,完成了对输入测点进行合法化检查、按ASCII码升序排序、分配SID号、形成特征字链表、生成一个MIS测点文件用于MIS系统、通过数据转化程序生成和维护测点数据链表文件、保存数据链表文件、系统“帮助”信息等系统要求功能,数据文件包括测点数据文件、特征字数据文件、MIS系统用文件等。
  程序利用VC++的模板(templates),使用收集类(collection class)以及二分法来实现所有测点的系统ID号的分配、排序和查找。利用Developer Studio Components的Pop-up Menu实现弹出菜单功能,并可通过鼠标右键弹出测点的完整信息。
6.4 程序实现
6.4.1 类定义
  在使用面向对象的方法进行DSC程序设计时,把问题分为由相关问题组成的组,每一部分考虑与组相关的代码和数据,并把这些分组按层次关系组织起来,最后,把这些分组转换为独立单元,即DSC对象。面向对象的程序设计一般包括封装、多态性和继承性。在C++中,类(class)构成了面向对象程序设计的基础,特别是用类来定义对象的属性。类是C++封装的基本单元。
  例如, 定义模拟量测点属性的类CPDB-AIView定义如下:
    class CPDB-AIView : public CRecordView
    {
    public:
      CComboBox m_ctlPNList;
      CPDB_AISet* m_pSet;
      short m_ShortInt_PN_Count;
      CString m_strSR;
      double m_COEF_TYPE;
      CEdit m_ctl_ID;
    ……
    };
6.4.2 属性表
  EDPF-2000系统工程师站界面在实现时,使用了大量的属性表。属性表又叫做“标签对话框”,它是一个窗口,允许用户查看和编辑一个项目的属性。属性表包含一个或多个重叠窗口,叫做属性页,每页包含用于设置相关属性的控件窗口,每页有一个标签,DCS用户可以选择把某个属性页放在属性表的前面。
  向导是一种特殊类型的属性表,它由一系列对话框组成,用来指导用户完成若干操作。
  例如, “系统配置”有3个属性页,其定义如下:
     class C_DpuConfigSheet : public CPropertySheet
     {
     DECLARE_DYNAMIC(C_DpuConfigSheet)
     public:
     C_DpuConfigSheet(CWnd* pWndParent=NULL);
     public:
     C_DpuConfig_Param m_Page1;
     C_DpuConfig_Mode m_Page2;
     C_DpuConfig_PIO m_Page3;
     …
     };
6.4.3 可视化设计
  由于VC++5.0实现了可视化设计,因此在生成DCS人机界面时,并不需要对界面的代码进行过多的编辑。但是界面的可视设计本身决定了界面的外观及界面内部各元素之间相互关系的不精确性。这时,必须对DCS界面的代码进行了解和分析,修改某些不精确处,使得界面更趋于完善。
6.4.4 程序实例
  下面是“增加一个二次算法”主体程序的部分源码。该段程序的作用是:由用户指定算法类型,填写算法参数,指定算法位置和编号,并发送到DPU站。
void COpr_Add::OnOK()
if (call_text()==FALSE)
{ MessageBox("call_text()=FALSE"); return; }
else if (t_rec[text_no].alg_ty==0)
{ MessageBox("该号算法已经存在"); return; }
if (para==3 ‖para==4‖para==5)
  if (t_rec[m_AppointTextNo].alg_ty==0)
  { MessageBox("插入位置的指定算法号不存在."); return;}
if ((test_ebuf())==FALSE)
{ MessageBox("test_ebuf()=FALSE"); return; }
stp=1; ∥add llt record
if(t_ind[alg_ty].algtype!0){
if (add_algrec()==FALSE)
  { MessageBox("add_algrec()=FALSE"); return;}
  else down_text();
}
else if(t_ind[alg_ty].algtype==0)
{ down_text(); }

}

7 结束语

  在中文Windows NT4.0下运用VC++ 5.0及MFC,设计开发出的32位的EDPF-2000工程师站人机界面,包括了二次计算算法、实时数据库维护、数据库管理、画面组态生成与维护、电厂MIS系统的数据生成与数据库管理、系统安装等功能程序,具有开放的体系结构、多任务、完全32位的核心、主流操作系统的风格、可视化设计、代码的重用性、可移植等特点。该界面符合开放式系统的标准,具有非常友好的交互环境和良好的可移植性,必将推动国产DCS的发展和应用。

 

参考文献
1 Tells M,Cooke A.Windows API How-To.北京:机械工业出版社,1997.6
2 Young M J.Mastering MS-Visual C++ 4(Second Edition).北京:电子工业出版社,1997.5
3 Schildt H.C++:The Complete Reference(Second Edition).Osborne McGraw-Hill,1995
4 李真文.Windows 95特色编程.北京:航空航天大学出版社,1997.1
5 King A.Windows 95技术内幕.北京:清华大学出版社,1995.6
6 何小丽,杜萤.Visual C++ MFC类库设计与使用指南.北京:学苑出版社,1994.3
7 Microsoft Corporation.软件设计的Windows界面指南.北京:电子工业出版社,1996.6
8 中国科学院希望高级电脑技术公司.用户界面程序设计.1991
9 电力部电力科学研究院.EDPF-2000分散控制系统用户手册.1995

资讯录入:admin    责任编辑:admin 
  • 上一篇资讯:

  • 下一篇资讯:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    不良信息
    举报中心
    机电之家设备管理网
    致力于机电设备维修与管理技术
    网络110
    报警服务
    服务热线:0571-87774297 传真:0571-87774298 电子邮件:donemi@hz.cn 服务 QQ:66821730
    机电之家(www.jdzj.com)旗下网站 杭州滨兴科技有限公司提供技术支持

    版权所有 Copyright © 机电之家--中国机电行业门户·设备维修与管理

    主办:杭州高新(滨江)机电一体化学会
    浙ICP备05041018号