《工业控制计算机》2010年第23卷第12期1系统简介和工作原理
地铁综合监控系统分为中央和车站两级体系。中央级主要
负责完成对地铁全线的监视和控制,车站级主要负责对本站监控对象的状态、性能数据进行实时收集和处理,供车站值班人员控制和监视。本文以车站级综合监控系统阐述人机界面设计和实现。车站综合监控系统如图1所示。
图1车站综合监控系统图
车站级综合监控系统的基本硬件结构包括冗余的局域网、冗余的服务器、冗余的通讯前置机(FEP )以及工作站、打印机等设备,向上通过主干网与控制中心相连,向下通过通讯前置机与各个子系统相连。车站综合监控集成电力监控(PSCADA )、设备和环境监控(BAS )、门禁(ACS )、广播(PA )、闭路电视(CCTV )、屏蔽门(PSD )、乘客信息(PIS )、售检票(AFC )、火灾报警(FAS )、时钟(CLK )等分散的自动化系统。车站局域网络将现场级的信息汇集到车站级ISCS ,从而实现车站级的综合监控。车站ISCS 还配置紧急后备盘(IBP )用于紧急后备操作,确保安全运营。
本文所做的工作就是要在上述综合监控的网络结构的基础上,利用软件平台SystematICS ,以工作站为平台,接收来自综合监控各子系统的数据信息,设计生动形象的人机界面。
2
SystematICS 总体设计架构
SystematICS 软件是澳大利亚Invensys Rail 公司开发的
一款实时监控软件。通过实时和历史数据库、画面管理和配置工具,以及命令语言等方式,构造生动形象的画面模拟现场设备的运行情况,对现场设备进行监视和控制。数据、画面、动画是
SystematICS 软件设计人机界面的关键所在。下面就从这三个
方面综合考虑来设计地铁综合监控系统的人机界面。
2.1数据
SystematICS 采用大型关系型数据库管理系统ORACLE 作为历史和实时数据库,提供了配置数据库的集成工具包Con-figurator ,可以在Configurator 中定义工程需要的数据量。地铁综合监控系统中的数据量主要包括四类:遥控量(DO )、遥调量(AO )、遥测量(AI )、遥信量(DI ),利用这四类数据量,可以反映
出各子系统设备的状态、报警、温度、湿度、流量、压力等各种信息。遥控量和遥调量涉及了对现场设备的控制,因此必须要设计一些保护措施,以防止误操作。这些保护措施包括:设计控制闭锁条件、设置控制保留时间、定义控制失败时间等等。
为方便查看、记录和区别综合监控系统集成各子系统的信息,有必要将上述四种数据量产生的报警按子系统归到不同的组中,即使数据量的报警信息属于某个规定的报警组。在Con-
figurator 中,可以按子系统定义不同的报警组,如“环境监控报
警组”、“自动售票报警组”、“火灾报警组”、“广播报警组”等等。同时也可以增加一些重要设备报警组,如“事故风机报警组”、“冷水机组报警组”等等,以方便报警的过滤查。利用上述报警组可以构建整个系统的报警和保护功能。
2.2画面
画面是人机界面的基础和核心,应该从功能需求考虑,建立实现各功能的画面。首先要建立一种类似Word 文件上的“页眉”画面,在界面的固定区域显示所监控的地铁线路名称和
LOGO 图标。
在“页眉”画面上,要建立人机界面的导航结构,以便用户可以方便的浏览各子系统的画面。导航结构可以采用倒树形结构,如图2所示:通过导航树,可以通过两步操作调阅监控画面。第
一步,选择需要查看的子系统,如“广播”等;第二步,选择该子系
地铁综合监控人机界面的设计与实现
HMI Design of Metro Integrated Control System
林晓伟(国电南瑞科技股份有限公司,江苏南京210061)
摘
要
以组态软件SystematICS 为开发平台对地铁综合监控系统人机界面进行了设计。首先简述了综合监控系统的结构和监控过程,再依次从SystematICS 软件的数据、画面和动画考虑,简单阐述了综合监控人机界面设计的架构,然后在此基础上重点介绍了人机界面的设计原则、方法及实现功能。设计的人机界面通过生动形象的动态组态画面,真实再现了现场设备状态,同时也允许用户为现场设备发布控制命令,实现人机交互。
关键词:地铁综合监控系统,SystematICS 软件,人机界面
Abstract
This paper introduces HMI design of Metro Integrated Control System based on the advanced configuration software SystematICS.First,the structure and control process of Metro Integrated Control System,then,HMI design architecture accord-ing to thinking of SystematICS software data,picture,animation.Final,for the above-mentioned explanation,this paper makes a special effort to study HMI design principia,method and function.HMI consisted of lively pictures reappears truely status of field devices and allows users issue orders to filed devices.
Keywords :metro integrated control system,systematICS software,HMI
13
地铁综合监控人机界面的设计与实现
统的具体功能画面,如“广播控制”等。
图2
综合监控人机界面导航树
在“页眉”画面上,还要建立诸如“参数设定”、“趋势曲线”、“报表”、“报警浏览”、“事件浏览”、“密码设置”等功能画面的入口,可以采用下拉菜单或按钮的方式实现。
“页眉”画面设计完成后,还需要设计通用的人机界面画面(如报警画面、事件画面、趋势曲线图、报表等)和子系统的专用功能画面(如环境监控系统的大系统、小系统等)。
2.3动画
SystematICS 软件采用SAMMI 开发人机界面,SAMMI 由美国的Kinesix 公司开发,是先进的人-机界面标准平台,可用
于创建图形、网络和嵌入应用程序(包括数据、事件和驱动命令)。SAMMI 的图形编辑器称为FORMAT EDITOR(FE),FE 带有完全功能的可视化CAD 程序的PC 绘图程序组成,它使用图形创建一个系统的用户界面,并使用户界面里包含的元素和它的控制应用进程之间建立连接。
使用FE 创建的用户界面称为格式(Format ),Format 包含的下层用户界面元素可以分为动态显示对象(Dynamic Dis-
play Objects (DDOs ))和静态显示对象(Static Display Ob-jects (SDOs ))。DDOs 包含输入域
(ReadKey )、输出域(WriteKey )、数据表(DOBJs )、数据品质表(Runtime Data An-notations (RTDAs ))、表达式、图等数据域,通过这些数据域完成
报警和事件的处理,发送和处理命令,使静态显示对象具有动画效果,实现与终端用户进行交互。诸如方框、线条、文字、位图等都是静态显示对象SDOs ,创建这些对象时,这些对象不影响用户的输入、命令和事件,只是固定在一个位置,显示图形。这些静态对象只有被特定的DDOs 激活,才可以显示出动画效果。
3
人机界面设计
良好的人机界面应该尽量避免通用界面与功能混杂在一
起,因为这样做会使通用界面和功能的耦合性加强,不利于修改和完善,因此地铁综合监控系统的人机界面设计分为两类:通用界面和各子系统的功能画面。
通用界面面向所有的用户,为用户提供综合监控系统的公共操作或共用信息,如启动、登陆、注销、报警、事件、打印等操作和信息,以及按钮、列表框、菜单等人机交互设计,通过这些丰富的图形对象,使应用程序使用起来更加容易和简单。专用功能画面只面向对该界面具有浏览和操控权限的特定人员,通过专用界面,授权用户可以完成设备的控制、命令发布、状态监视等功能。
3.1通用界面
1)报警界面设计。报警是综合监控系统最重要的监视内容,
只要系统检测到报警就会显示在报警界面中,并且发出语音报警。为了给用户以明显的提示,当报警发生时报警界面中报警信息的背景闪烁,颜根据不同的等级使用不同的颜;当报警恢复到正常状态时,背景为绿。当报警发生时,系统会自动将报警信息储存到历史数据库中,以便日后查询。
2)报表界面设计。综合监控系统可以按照预定义的时间将数据保存在数据库中,数据库支持SQL 查询语句,因此可以根
据实际的需求,在数据库中查询到所需要的信息,并以自定义的
方式生成各种工作报表、数据报表等。
3)打印功能。利用打印功能可以对报表、操作信息、报警数
据等信息进行打印。打印功能通过打印按钮来完成,在报警、事件、报表等界面的适当位置放置打印按钮,并将工作站和打印机连接后,就可以实现打印功能。
4)权限管理界面。综合监控系统为用户设置完善的权限管
理界面,通过该界面可以配置用户优先级、可操作的安全区、设
置打印操作优先级、设置监控范围、设置或修改密码等。用户只有具备权限才可以执行相应的操作,有效地防止了误操作。
3.2功能画面
综合监控系统各子系统负责数据的采集和处理,综合监控系统负责数据的汇聚和控制、操作命令的发布,双方可以利用串行接口或者网络接口,并按照事先约定好的通讯协议进行交互。利用功能画面用户可以监视现场设备的实际运行状态,当设备发生异常状况时,功能画面会以颜闪烁、图元动画、声音等多种方式发出提示,引起用户注意。同时,授权用户也可以通过该画面完成对现场设备的操作和控制,当设备处于危险状态时,将禁止用户所做的任何操作,以保证设备安全,有效防止误操作。
图3所示是综合监控环境监控子系统的大系统(通风空调系统)功能画面。
图3
环境监控大系统
综上所述,SystematICS 软件人机界面设计的总体框架如图4。
(下转第16页)
图4SystematICS 软件人机界面设计流程
14
发射率在线检测系统的上位机软件实现
(上接第14页)
4结束语
本文从SystematICS 软件的数据、画面和动画三个方面进
行了架构,然后设计了实现功能需要的人机界面通用画面和各子系统专用功能画面。这两类画面构成了综合监控系统的人机界面,通过这些人机界面可以将地铁各个分散的自动化控制系
统的监控系统整合和集成在一个软件平台上,提高了地铁自动
化监控水平和效率。
参考文献
[1]袁运莲,叶桦.高温工业炉监控系统人机界面的设计与实现[J ].工
业控制计算机,2009,22(9):15-16
[2]关晓彤,程万鑫.Sammi 简介-基于Client /Server 结构和Web 结构
的软件开发工具[J ].电脑知识与技术,2009,5(6):1376-1377
[收稿日期:2010.8.27]
机收到命令后,如果是读数据命令,就将数据发送给上位机。不同的下位机之间通过固化在Falsh 中的下位机地址进行区分。协议采用RTU (远程终端单元)传输模式,消息发送至少要以
3.5个字符时间的停顿间隔开始,在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束,一个新的消
息可在此停顿后开始。
典型的消息帧如表1、表2所示。
表1读取下位机数据
表2下位机回复上位机数据
整个通讯由上位机触发开始,首先由上位机按照下位机地址顺序轮流给多台下位机发送读数据命令,每次仅发送读取1台下位机数据命令。下位机收到读数据命令后发送数据给上位机。上位机在收到下位机发送过来的数据之后,进行CRC 校验,出错则抛弃当台下位机数据,不处理。上位机在收到该台下位机的数据之后或者上位机发送读数据命令200ms 之后还没有收到该台下位机的数据,则上位机发送读下一台下位机数据命令。
2.3绘制测量数据曲线
在上位机软件界面中,除了可以实现对发射率测量系统的操作,还能实现测量结果的可视化和图形化,并且可以将测量和计算的结果直接保存至ACESS 数据库中。
测量数据的图形化是基于NI 公司的Measurement Studio
for VC++,本上位机主要采用了其中的CNiGraph 、CNiknobs 、CNiButtons 、CNiNumeric 等控件,在主显示界面放置了2个CNiGraph 控件,用来同时显示两个通道的波形,并且可以动态
的切换通道与设置参数值。
关键代码如下所示:
//修改控件属性(不带参数)m_Graph.method();//修改控件属性(带参数)
m_Graph.method(parameters1,...,parameters2);//绘制曲线
m_Graph.GetPlots().Item(1).ChartXY(x,y);
2.4数据保存
软件测量结果的保存格式选择了ACCESS 数据库,VC 通过DAO (数据访问对象)的方式来访问ACCE
SS 数据库,实现对数据的存储、查询等操作。
在MFC 中,CDaoDatabase 、CDaoRecordset 是进行DAO 编程的最常用的类。CDaoDatabase 代表了数据库连接,通过这个连接可以对数据库的数据进行操作,同时它也起到了一个数据源的作用,可以对数据源进行操作。而CDaoRecordset 则可以对数据源进行记录的查询,也可以向数据源增加新记录、删除
和更新记录等工作。
关键代码如下所示:
#include <afxdao.h>//创建数据库文件和表CDaoDatabase db ;//创建数据库连接CDaoRecordset RecSet(&db);//创建数据记录集
db.Create(m_MdbName);//创建路径名为m_MdbName 的数据库
acess数据库CString SqlCmd ;
SqlCmd.Format(″CREATE TABLE [试验数据](ID counter(1,1)PRI-MARY KEY,[下位机地址]INTEGER,[时间]VARCHAR(20),[吸收罩电压]Float,[反射罩电压]Float,[表面温度]Float,[吸收罩温度]Float,[反射罩温度]Float,[吸收探头温度]Float,[反射探头温度]Float,[电压比]
Float,[辐射率计算值]Float);″);
db.Execute(SqlCmd);//创建试验数据记录表//写入数据库
RecSet.AddNew();
RecSet.SetFieldValue (″下位机地址″,COleVariant ((BYTE)_ad-dr));//以向表中写入下位机地址为例
RecSet.Update();//读取数据库
COleVariant var;//字段类型while(选RecSet.IsEOF())//判断是否已经读取到表结尾邀
RecSet.GetFieldValue(″吸收罩电压″,var);var.ChangeType(VT_R4);floatf =var.fltVal;
fsldata.VAbsorb =floatf;RecSet.MoveNext();妖
3结束语
本文介绍了基于VC++6.0的发射率在线检测系统上位机软
件的开发,从串口通信、界面设计、数据存储、通信协议和局域网通信几个方面详细进行了阐述。该上位机软件在实际使用过程中,经过了总计100小时以上的实验室试验和60个小时的现场试验,以及不间断24小时运行,系统可靠性高,实时性强。本方法对其他监控系统的上位机软件编写也有一定的借鉴意义。
参考文献
[1]杨世铭,陶文铨.传热学[M ].4版.北京:高等教育出版社,2006:
404-418
[2]郑国良.热电堆传感器及其应用[J ].传感器技术,1992(2):27-29[3]高魁明,王玲生,李丽洁,等.在线黑度测量的研究[J ].东北工学院学
报,1986(3):104-107
[4]李长林,等.Visual C++串口通信技术与典型实例[M ].北京:清华大
学出版社,2006
[5]National Instruments Corporation.Measurement Studio Refer-
ence.National Instruments Corporation,2001
[6]邱仲潘,等.Visual C++6从入门到精通(普及版)[M ].北京:电子工
业出版社,2006
[收稿日期:2010.8.18]
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论