CN103020310B - 一种基于脚本实现电力监控系统功能扩展和定制的方法 - Google Patents

一种基于脚本实现电力监控系统功能扩展和定制的方法 Download PDF

Info

Publication number
CN103020310B
CN103020310B CN201310005585.1A CN201310005585A CN103020310B CN 103020310 B CN103020310 B CN 103020310B CN 201310005585 A CN201310005585 A CN 201310005585A CN 103020310 B CN103020310 B CN 103020310B
Authority
CN
China
Prior art keywords
script
electric power
power monitoring
monitoring system
real
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310005585.1A
Other languages
English (en)
Other versions
CN103020310A (zh
Inventor
郭海峰
丁柏玲
李永兴
王立鼎
陈涛
余庭豹
张百华
李琨
李勇琦
刘志超
陈满
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sifang Automation Co Ltd
Peak and Frequency Regulation Power Generation Co of China Southern Power Grid Co Ltd
Original Assignee
Beijing Sifang Automation Co Ltd
Peak and Frequency Regulation Power Generation Co of China Southern Power Grid Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sifang Automation Co Ltd, Peak and Frequency Regulation Power Generation Co of China Southern Power Grid Co Ltd filed Critical Beijing Sifang Automation Co Ltd
Priority to CN201310005585.1A priority Critical patent/CN103020310B/zh
Publication of CN103020310A publication Critical patent/CN103020310A/zh
Application granted granted Critical
Publication of CN103020310B publication Critical patent/CN103020310B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提出了一种增强电力监控系统功能扩展和定制的方法,将监控系统软件和应用程序的部分功能通过封装提供给脚本引擎,使用户能够通过脚本语言调用这些功能,同时在这些功能基础上扩展和配置监控系统各种应用的需求,其特征在于在不编译软件程序情况下,实现各类电力监控应用在工程实施时提出的不同需求,实现同一应用领域不同工程的个性化需求,在不中断监控系统运行的情况下在线增加,修改监控系统功能,快速响应直流,配网,大容量储能等工程现场需求的变更。

Description

一种基于脚本实现电力监控系统功能扩展和定制的方法
技术领域
本发明属于电力系统监控技术领域,具体涉及一种实现电力监控系统功能扩展和定制的方法。
背景技术
电力监控软件为各种应用提供了图形绘制,建模,监视和控制等功能的通用支持。各应用系统在此基础上进行配置和扩展,满足各应用不同的需求,因此需要监控系统具有很强的开放性,可扩展性和定制能力。
目前的做法多是采用编写程序的硬编码方式,各应用系统在监控系统软件基础上开发各自的程序模块,实现其应用领域特定的功能。这种方式在集控,变电站综合监控等需求明确的领域,能够很好的满足其应用需求。但对其他一些监控系统,如配电自动化系统,储能监控系统,高压直流监控,系统需求多样,不同工程需要浏览和监视的数据差别很大,数据的表现形式多样,大容量储能等监控系统中控制策略多变,工程投运后经常进行功能的微调,监控系统和应用程序模块不可能在开发时考虑到所有工程上的需求,如果为每个工程都开发特定的程序版本,势必会造成程序版本的混乱和失控,而且程序升级导致的中断系统运行有时也不能被电力用户所允许,因此需要使用一种能够不中断系统运行的技术手段,在不影响其他监控功能前提下,在线增加,修改已有功能。
使用脚本实现电力应用系统工程上的需求弥补了以上软件平台在应用上的局限与不足,脚本编辑简单,修改方便,不需编译即可执行,简化了开发周期,保证了系统的连续运行,另外,现在主流的脚本语言都提供面向对象支持,运算和分析能力很强,脚本的另一优势是,在脚本执行过程中,不会因为脚本本身的语法,逻辑等原因影响系统的稳定运行,对于稳定性要求高的电力监控系统而言是一个非常好的技术手段,同时,监控系统软件有了脚本的支持,能够更加方便的扩展到更多的监控领域。
发明内容
本发明的目的是在电力监控系统软件基础上,通过脚本实现监控系统功能的调用,满足电力监控系统不同的应用需求,提供了一种不影响系统运行,不需编译应用程序,开放,维护简单,易于扩充的技术手段。本发明根据脚本常用的设计规范,并借鉴面向对象的思想将监控系统的部分组成元素封装为对象及其属性和方法,供脚本调用。
本发明具体采用以下技术方案:
一种基于脚本实现电力监控系统功能扩展和定制的方法,其特征在于,所述方法包括以下内容:
(1)将电力监控系统的实时数据库封装为一个实时库脚本对象,通过调用脚本对象的方法,实现对所述实时数据库读取和查询,以及打开和关闭实时数据库,所述实时数据库打开后能够根据记录关键字查询模拟量和状态量的运行值,或者记录名称,类型等其他属性值,或者根据属性值条件进行过滤,返回查询结果;实时数据库关闭后不能进行查询等操作,以保证数据安全;
(2)将电力监控系统中的SCADA相关控制操作封装为一个SCADA脚本对象,把设备类型、关键字、操作类型封装为对象属性,将预选、执行、反校操作步骤封装为对象的方法,在SCADA脚本对象中实现控制流程的调用,根据每一个步骤的返回状态,选择下一步操作;
(3)在UI脚本对象中实现窗体文件的加载和释放,将窗体设计工具设计的窗体文件保存在磁盘中,在脚本文件中通过窗体文件名称把窗体加载进来,并进行显示,将实时库脚本对象中查询到的属性值通过窗体控件显示出来,所述脚本文件响应窗体控件的动作来执行相应的操作;
(4)在GUI脚本对象中实现图元的位置、颜色和显示值属性的读写功能,将图元、图层、文档等电力监控系统的自定义对象的属性和方法进行封装,使图元在运行时能够显示SCADA控制操作的结果。
本发明具有以下有益效果:
(1)能够方便的对电力监控系统的功能进行扩展,通过脚本可以重新实现用户交互界面的设计,对控制流程进行干预,增加了运行过程中监控画面的显示控制方式,实现工程中多样化的需求。
(2)不影响电力监控系统正常运行,增加和减少脚本均不用启停系统,保证电力监控系统的连续运行。
(3)不影响电力监控系统稳定性,脚本语言本身在运行中出现错误,不会造成系统的异常退出。
(4)有利于电力监控系统软件的版本控制,脚本仅与具体工程相关,脚本文件是工程数据的一部分,其修改不影响监控软件本身,保证了软件版本的唯一性。
附图说明
图1为实现电力监控系统功能扩展和定制方法的示意图。
具体实施方式
下面结合说明书附图对本申请的技术方案作进一步详细说明。
如图1所示为本发明实现电力监控系统功能扩展和定制方法的示意图,在传统电力监控系统基础上,将实时库,SCADA,监控界面的部分功能封装为脚本对象,通过脚本实现功能的扩展和定制。具体包括以下内容:
(1)将电力监控系统的实时数据库封装为一个实时库脚本对象RealDB,实时库脚本对象的属性为表名(tablename),打开标志(isopened),脚本对象的方法有打开(open),关闭(close),读取(read),查询(query)等。通过脚本对象的打开和关闭方法,实现实时库的打开和关闭操作,实时库打开后,通过实时库脚本对象的读取方法实现根据记录关键字查询单个或多个属性的值,或者通过实时库脚本对象的查询方法,根据属性值条件进行过滤,返回查询结果;实时数据库关闭后不能进行查询等操作,以保证数据安全;
(2)将控制操作封装为一个SCADA脚本对象Operation,SCADA脚本对象的属性为设备(device),关键字(key),操作类型(type),SCADA脚本对象的方法有预选(select),执行(exec),反校(solicit)等,在脚本文件中首先调用SCADA脚本对象的预选方法,选择成功后逐步调用执行,反较方法,完成控制流程的实现。在任何一个步骤出现失败,则根据需求终止控制或进行其他控制策略。如果是顺控流程,则按照规定控制顺序的逐步执行,如果其中一个控制操作失败,则根据控制要求进行恢复或者其他操作。
(3)在UI脚本对象中实现窗体文件的加载和释放,将窗体设计工具设计的窗体文件保存在磁盘中,在脚本文件中通过窗体文件名称把窗体加载进来,并进行显示,将实时库脚本对象中查询到的属性值通过窗体控件显示出来,所述脚本文件响应窗体控件的动作来执行相应的操作。
(4)在GUI脚本对象中实现图元的位置、颜色和显示值属性的读写功能,将图元、图层、文档等电力监控系统的自定义对象的属性和方法进行封装,使图元在运行时能够显示SCADA控制操作的结果。
本发明脚本语言的选择需参考监控系统的实现语言,如javaScript等标准脚本语言,如果监控系统使用Qt4.3及其以上版本作为图形模块开发工具,还可以选择Qt提供的QtScript模块,此模块提供了应用程序封装脚本对象的通用方法,提供了脚本解释引擎,还能在脚本中利用Qt的信号和槽等特性,使脚本功能实现更加灵活。
对于上述一种基于脚本实现电力监控系统功能扩展和定制的方法,本申请在脚本对象的封装、脚本文件的关联和触发,以及脚本的运行和终止三个方面进一步优选以下实施方式:
1.脚本对象的封装
将实时库脚本对象,SCADA脚本对象,GUI脚本对象和UI脚本对象合并为一个脚本对象库,脚本对象库是一个独立于电力监控系统的动态库,根据QtScript脚本对象封装要求进行封装。
2.脚本文件的关联和触发
QtScript模块使用javaScript脚本语言,脚本文件嵌入到电力监控系统的应用程序中运行。脚本文件可与监控图形关联,在图形打开或者关闭的时候运行脚本;脚本文件可与监控图形中的某个具体图元关联(如按钮等),当点击这些图元的时候运行脚本;脚本文件也可与监控系统的菜单关联,点击菜单时运行脚本。
3.脚本的运行与终止
监控系统运行后,通过图形打开,图元点击或者菜单调用等方式触发了脚本以后,脚本即开始运行。每个脚本文件由一个QtScript模块的脚本引擎加载,管理脚本的变量和上下文环境,同一时间多个脚本运行时,彼此独立运行,不互相影响。当运行脚本的图形关闭后,脚本停止运行。
以直流监控系统为例,直流对监控系统控制的需求比较特殊,遥调操作数由鼠标控制,不接受键盘输入,有些控制如功率反转控制是一键直接控制,不需要选择,执行等逐步进行,有些控制是由两个遥调操作组合控制,必须按照顺序进行操作,并根据每一个步骤的执行成功与否判断下一步操作。
直流监控的遥调操作脚本关联到按钮图元上,当点击按钮时调用脚本,由脚本加载遥调窗体,实现对遥调过程的脚本控制,遥调的目标值由窗体上“+”,“-”按钮进行设置,是直流监控系统用户提出的界面方式,在其他电力监控系统中不常用,使用脚本实现,使监控系统只关注遥调的实际操作步骤,而不必关心其人机界面的表现方式。在保证通用性的前提下,实现了监控系统功能的开放与扩展。
另外一类遥控是保护信号复归等操作,不需任何界面交互,“预选”成功后直接进行“执行”操作,由脚本控制全部过程,实现了控制方式的定制。如果运行后需要修改控制方式,增加选择后的人机交互,直接修改脚本文件和人机交互界面的ui文件即可,不需中断系统运行。
在配网,大容量储能,集控等监控系统中,均可参照本实施例进行实施。
综上所述,本发明的方法是在现有电力监控系统基础上,针对其在扩展和定制上的局限,提出了一种实现电力监控系统软件的扩展性和定制能力的方法,特别是在不允许中断系统运行的时候,能快速满足工程现场的需求。
其方法的具体技术方案由本发明的权利要求所限定。

Claims (1)

1.一种基于脚本实现电力监控系统功能扩展和定制的方法,其特征在于,所述方法包括以下内容:
(1)将电力监控系统的实时数据库封装为一个实时库脚本对象,通过调用脚本对象的方法,实现对所述实时数据库读取和查询,以及打开和关闭实时数据库,所述实时数据库打开后能够根据记录关键字查询模拟量和状态量的运行值,或者记录名称,记录类型属性值,或者根据属性值条件进行过滤,返回查询结果;实时数据库关闭后不能进行查询操作,以保证数据安全;
(2)将电力监控系统中的SCADA相关控制操作封装为一个SCADA脚本对象,把设备类型、关键字、操作类型封装为对象属性,将预选、执行、反校操作步骤封装为对象的方法,在SCADA脚本对象中实现控制流程的调用,根据每一个步骤的返回状态,选择下一步操作,在任何一个步骤出现失败,则根据需求终止控制,当操作控制流程是顺控流程时,则按照规定控制顺序的逐步执行,如果其中一个控制操作失败,则根据控制要求进行恢复;
(3)在UI脚本对象中实现窗体文件的加载和释放,将窗体设计工具设计的窗体文件保存在磁盘中,在脚本文件中通过窗体文件名称把窗体加载进来,并进行显示,将实时库脚本对象中查询到的属性值通过窗体控件显示出来,所述脚本文件响应窗体控件的动作来执行相应的操作;
(4)在GUI脚本对象中实现图元的位置、颜色和显示值属性的读写功能,将电力监控系统的自定义对象的属性和方法进行封装,使图元在运行时能够显示SCADA控制操作的结果,其中所述电力监控系统的自定义对象包括图元、图层、文档。
CN201310005585.1A 2013-01-08 2013-01-08 一种基于脚本实现电力监控系统功能扩展和定制的方法 Active CN103020310B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310005585.1A CN103020310B (zh) 2013-01-08 2013-01-08 一种基于脚本实现电力监控系统功能扩展和定制的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310005585.1A CN103020310B (zh) 2013-01-08 2013-01-08 一种基于脚本实现电力监控系统功能扩展和定制的方法

Publications (2)

Publication Number Publication Date
CN103020310A CN103020310A (zh) 2013-04-03
CN103020310B true CN103020310B (zh) 2015-10-28

Family

ID=47968913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310005585.1A Active CN103020310B (zh) 2013-01-08 2013-01-08 一种基于脚本实现电力监控系统功能扩展和定制的方法

Country Status (1)

Country Link
CN (1) CN103020310B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793152B (zh) * 2013-06-28 2017-03-01 南京南瑞继保电气有限公司 一种变电站监控系统画面在线定制方法
CN103617037B (zh) * 2013-11-27 2017-12-08 邵寻 用于web开发系统的开发方法和web开发系统
CN104460595B (zh) * 2014-10-30 2017-07-25 贵州电力试验研究院 一种扩展电力监控系统功能的方法和装置
CN105915381B (zh) * 2016-04-21 2019-02-15 贵州电网有限责任公司信息中心 一种实现监控系统业务逻辑在线修改系统
CN106815018A (zh) * 2016-12-27 2017-06-09 国电南瑞科技股份有限公司 有轨电车综合运营调度系统人机界面的集成设计方法
CN107665112B (zh) * 2017-09-29 2021-03-02 紫光测控有限公司 一种电力控制流程的组态方法及装置
CN109726070A (zh) * 2018-06-15 2019-05-07 平安普惠企业管理有限公司 Java程序监控方法、装置、设备及可读存储介质
CN110427185A (zh) * 2019-05-30 2019-11-08 北京科东电力控制系统有限责任公司 一种基于电力脚本语言实现人机浏览器功能的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102842006A (zh) * 2012-07-09 2012-12-26 华为软件技术有限公司 扩展脚本对象的访问控制方法及其访问控制系统和终端

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009063121A1 (en) * 2007-11-13 2009-05-22 Nokia Corporation A method and an appaparatus comprising a browser

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102842006A (zh) * 2012-07-09 2012-12-26 华为软件技术有限公司 扩展脚本对象的访问控制方法及其访问控制系统和终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于嵌入式MCGS的电力直流监控系统设计;卜锡滨;《滁州学院学报》;20121031;第14卷(第5期);21-24 *

Also Published As

Publication number Publication date
CN103020310A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103020310B (zh) 一种基于脚本实现电力监控系统功能扩展和定制的方法
CN101770399B (zh) 一种电子设备及切换其操作系统桌面的方法、装置
CN104731584B (zh) 一种开放式数控系统人机界面可定制的组态设计方法
US7870511B2 (en) GUI application development supporting device, GUI display device, method, and computer program
CN105335048A (zh) 具有隐藏应用图标的电子设备及隐藏应用图标的方法
CA2038266A1 (en) Graphical user interface management system
WO2018119905A1 (zh) 多系统移动终端的控制方法、控制装置及电子设备
CN104571026A (zh) 全流程冶金制造执行系统构建平台及构建方法
CN107765555A (zh) 实物图标显示的智能家居产品人机交互界面
CN106406854A (zh) 一种计算机监控组态界面设计方法及系统
CN103226472A (zh) 一种业务管理软件开发实现方法
CN104599195B (zh) 电力营销系统的用电设备信息展示方法和系统
CN103561347A (zh) 一种基于浏览器的快捷菜单生成方法和装置
CN102377853A (zh) 一种移动终端应用、界面窗口及业务的管理装置及方法
CN110427185A (zh) 一种基于电力脚本语言实现人机浏览器功能的方法
CN104063212A (zh) 创建用户界面的方法
CN106919060A (zh) 圆形气泡显示的智能家居产品人机交互界面
CN103914288A (zh) 判断控件状态的方法
CN105241011B (zh) 空调群控系统开发装置和方法
US20160147428A1 (en) Method for controlling at least one power generator, corresponding device and power generator
WO2016201813A1 (zh) 一种基于Android的动态布局方法及系统
CN106814696B (zh) 一种数控系统人机界面二次开发平台系统及其实现方法
CN106919305A (zh) 一种管控智能家居的方法
CN105739973A (zh) 一种基于Android的UI控件自动识别刷新方法及装置
CN102999346B (zh) 配电网智能自愈控制系统中基于QtScript的索引图自动生成方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20181106

Address after: 510630 room 2201, Longkou East Road, Tianhe District, Guangzhou, Guangdong, 2201

Co-patentee after: Beijing Sifang Jibao Automation Co., Ltd.

Patentee after: Southern power grid peak modulation FM Power Generation Co., Ltd.

Address before: 510630 32 Longkou East Road, Guangzhou, Guangdong

Co-patentee before: Beijing Sifang Jibao Automation Co., Ltd.

Patentee before: Peaking and Frequency Regulation Power Generation Company of China Southern Power Grid Co., Ltd.