大数据分析支持下智能电力监控平台的设计

2024-04-03 12:06:20唐为东
黑龙江科学 2024年6期
关键词:历史数据时序警告

唐为东

(江苏瑞中数据股份有限公司,南京210000)

大数据分析技术在诸多领域得到了应用,其能够通过数据规律对未来情况做出预测,分析现有数据是否存在异常,帮助进行决策,满足管理及控制需求。在电力监控系统中,数据具有明显的时序特征,使用LSTM网络进行大数据分析能够对数据异常情况做出预测和判断,为电力系统运行提供数据及信息支持,确保电力系统的安全性,满足智慧电网的建设要求。本研究对智能电力监控平台进行设计,使用LSTM网络实现对电网运行数据的智能化分析,构建智能化电力监控平台,提升电力监控水平及效率。

1 智能电力监控平台的设计

1.1 系统功能需求分析

系统用户有3种角色,包括电力运维人员、公司管理者及系统管理员。电力运维人员负责监控电力系统运行状况,处理系统报告;公司管理人员制定用电计划、核算用电;系统管理人员是系统的运维人员,负责各个账户管理权限的控制。系统用例如图1所示。

图1 系统用例Fig.1 System example

系统的核心功能是对电路进行实时监控,满足智慧电网的建设要求,将电路转化为电网拓扑结构,将系统图展示出来。安卓App可以提供系统图的显示,使用者可根据需要进行系统图片的缩放、点击、储存、刷新等,满足对电力系统监测和控制的要求。应用在运行过程中能够自动接收有关数据信息,刷新显示的图像,满足实时提供数据的要求。

数据采集系统需判断监控数值是否超出范围,针对超出安全范围的数据进行提示。因此需使用智能技术进行数据判断,完成对异常的分析,提供必要的警报。由于电力监控系统对安全有较高的要求,因此对不同级别的用户会赋予相应的角色,用户只有拥有相关角色才能访问有关功能,完成对数据的分析及修改。

1.2 系统非功能需求

性能要求。系统需要保持足够的稳定性和时效性,因此要满足并发需求,能够对100个左右的用户同时进行数据处理并应对突发请求。电力系统的监控及警告系统的刷新时间间隔为5 s,手机应用需接收和处理数据,因此系统对用户数据、监控请求的时间应控制在2.5 s以内,查询历史数据时,响应时间需控制在3 s以下。

易用性需求。系统需提供清晰的界面,让用户经过简单操作获得想要的功能。系统也能为用户提供明确的目标指引,所有功能模块都要具备所见即所得的特性,方便用户直接上手操作。

1.3 系统架构设计

系统包括展示层、接口层、业务层和数据层4层架构(如图2所示),每一层都有独立的功能,并实现对下一层的调用。展示层为应用的客户端和Web端,Web端包括后台管理和电力监控两部分,应用端基于安卓系统开发展示电力系统的实时数据,发出警告信息。接口层负责处理和接收用户请求,实现用户和后台间的交互,系统采用模块化设计,接收业务处理模块获得业务需求。业务层是系统的核心层,位于接口层和数据层之间,避免接口层无法直接访问数据层。数据层完成对数据的采集和储存,从电力系统中源源不断地获得最新数据。

图2 系统逻辑框架Fig.2 System logicframework

系统的功能模块包括实时监控、数据储存分析、历史数据统计、电路警告监控、系统配置管理等。不同的客户端可访问不同的功能模块,不同的用户模块使用权限有所不同。

1.4 关键模块的设计

数据采集模块。电路数据采集功能在后台自动执行,每隔5 s进行采集模块请求发送,获得数据后将数据存入到数据库中,计算企业消耗的电力并统计消耗电力的累加值。

实时监控功能。电路实时监控功能包括两部分,即安卓APP图元库的设计和后端数据获取。图元库根据后台数据更新XML文件,实现对图元的更新。在后端数据获取中将前端请求发送给Web服务器,根据服务器需求调用数据。

警告功能设计。警告功能通过智能分析模块判断是否需要警告,在数据获取过程中主动判断是否需要发布警告信息,通过用户主动查询选定时间内的自动记录告警信息。

1.5 统数据库设计

系统使用关系型数据库和非关系型数据库。关系型数据库主要储存权限管理和配置管理所需的信息,非关系型数据库针对具有时序特征的电力数据进行储存,结合应用分析选择具有高效读写能力的InfluxDB数据库,满足性能要求,使用SQL语言进行数据查询。

2 基于LSTM的电力数据预测模型

2.1 模型结构

LSTM全称长短记忆网络,是循环神经网络的变体,能解决RNN无法对长记忆进行处理的缺陷,使用LSTM可以完成对不同长度时序信息的处理,实现更为精确的时序数据预测。电力系统的时序特征明显,受到工厂生产、生活、季节变化等方面的影响,电流、电压、电路负荷呈现出明显的规律性,因此使用LSTM进行电力数据分析和预测,以预测值作为预测警告的依据,可获得较好的应用效果。

LTSM模型的t时刻的cell如图3所示,每个cell中,使用当前时间输入值xt和上一个状态储存的ht-1拼接,再通过传递状态激活函数,位置激活函数为sigmaod。

图3 LSTM模型的cellFig.3 Cell of LSTM model

通过激活函数sigmoid后,分别产生ft、it、ot三个值,计算公式为:

ft=σ[Wf·(ht-1,xt)+bf]

当前的cell输出ht,公式为:

ht=ot×tanh(Ct)

电力运行数据的时序性随时间变化的特征很强,为了能够更有效学习电力数据的变化规律,建立了两层LSTM网络,与Dropout层连接,通过两层LSTM网络可以较好地学习电力数据的周期性和规律。之后,数据进入全连接层完成降维,通过Dropout层避免网络出现过拟合问题,再通过一层全连接层获得预测结果。

2.2 网络训练和预测

为了确保电力系统的安全,需要网络提前发现电力系统的异常情况并判断异常数据,给电力系统运维人员发出警报或提供相关信息,方便制定电网的控制策略。需使用具有真实性的数据开展网络训练,选择某电网6个月内每隔10 min收集1次的数据,共520 000条真实环境下的数据,对于缺失的数据,计算收集数据的平均值进行补充。采用8∶1∶1的比例进行数据分组,分别为训练集、验证集、模型运行效果评估集合。

经过训练后,使用测试集进行测试,以某站点出线A相电进行预测,获得平均绝对误差为0.257,预测结果和真实情况的对比如图4所示。该模型的预测结果比较准确,能够较好地满足电力系统监控及预测需求。

图4 预测和真实情况对比Fig.4 Comparison of predicted and actual situation

3 系统关键功能模块的实现

3.1 数据采集和储存功能模块的设计与实现

电力监控系统中最关键的是数据,需确保系统能够与数据模块之间保持实时通信,确保最新获得的数据都被储存在时序数据中。涉及的类包括SocketConnect、HistoryDataDao、EventInfoDao、UnitCfgDao、ACValue等。SocketConnect负责数据接口通信,系统运行过程中每隔5 s获取一次数据,通过HistoryDataDao存入数据库,UnitCfgDao进行监控点信息查询,根据SocketConnect类获取的数值查询对应的遥测数值。采集数据时,getData方法是获取数据的核心,使用JavaNIO提供API,利用SocketChannel类和硬件数据结构实现Socket通信,将数据包发送到确定的通道,结合需求对数据进行求解及解析。

3.2 电路监控功能的设计与实现

通过PicController接收App的请求,将请求附带查看的图片交给MonitorService处理,MonitorService获取要查询的点名,将数据发给RealDataDao,查询到相关大数据后将数据转化成电度、遥测等信息,返回给用户。遥测和遥信数据的获取逻辑类似,通过MySQL查询数据库中的监测点ID,通过时序数据库查找对应数据。实时监控过程中需结合用户发送的一次图查询点名,使用getRealData方法获得要查询点名的ID,将其作为参数,使用UnitCfgDao从MySQL中根据点的名字查询及配置监控点的ID,将ID作为参数,通过RealDataDao得到时序数据库中最新的数据,如果没有得到相应数据,数据设置为0。

3.3 历史数据统计功能的实现

对历史数据的统计是实现电网智能预测的基础。历史数据包括多个子模块,可使用历史数据输出曲线图、累加统计、企业能耗统计、子公司数据等。历史数据统计功能中,类的功能包括三层,分别为Controller、Service、Dao,分别负责用户请求处理、计算业务逻辑、获取有关数据。在类中,LinController是曲线图的接口,使用CumulantStatisController能够查询历史数据、企业能耗统计,利用EventInfoController可以进行历史数据查询。在运行中会将Controller的数据处理任务分配到Service类,调用UnitCfgDao获取用户的点名信息,以相关数据为参数发送到HistoryDataDao接口,再从数据库中查询历史数据,将用户请求返回给前端。数据的统计功能利用对应的Service实现,通过调用系统接口获取对应的统计数据。

3.4 电路警告功能的实现

系统运行过程中需及时完成对异常情况的警告,电路监控功能结合实时数据进行警告监测或查询历史数据。实时警告发现监测数据异常后向手机应用发送相关的警告信息,方便工作人员及时采取措施应对。在运行过程中EventInfoController负责接收用户请求,通过调用EventInfoService查询过去的电路警告事件,通过查询UnitDao获取点名,再从数据库查询相关事件发生时的数据,封装为ApiResult发送给前端。使用EventInfoSender实现推送功能,监控模块会监控电路的运行数据,如果发现数据超出预警值就会通过EventInfoSender将信息发送给用户手机。EventInfoSender通过激光推送框架为手机APP发送信息。运行时会生成一个JPushClient对象,根据实时数据通过获取模块传入公司名,通过警告点名创建PushPayLoad对象,调用JPushClient实现推送功能。

3.5 系统配置管理功能的实现

系统配置管理功能为管理人员提供配置文件,方便进行配置文件的上传和删除,给手机应用提供一次图和图元配置,管理人员可通过手机下载相关图片。系统要能够上传和下载配置文件,进行配置文件的解析并储存配置文件中的数据。使用的类为FileController类,提供所需要的连接口进行上传、下载、列表查询、比对信息等,还可进行文件解析,实现文件的实时删除,调用UnitCfgDao在数据库中删除相应的数据,利用MD5Util作为辅助工具进行文件的MD5码计算。在上传配置时,用户需要将文件发送给FileController的upload接口,通过该接口将文件在本地保存。FileService将继续进行文件解析。文件被保存后,需从FileService中调用parseCfg方法,利用ConfigReader类完成对配置文件的解析,对电度、遥信、遥测3种数据使用不同的解析方式。

4 系统测试

4.1 测试环境和目标

为了满足系统软件的运行要求需开展系统测试。基于电力监控平台各个模块的实现情况对功能进行分析,使用云端服务器建立测试环境,应用MySQL数据库将测试环境和服务器布置在同一个服务器中,使用Springboot框架建立Tomcat服务器。前端使用安卓设备和浏览器进行系统访问,使用JMeter作为测试工具。

4.2 功能测试

功能测试内容包括数据的采集和储存、一次图的展示、电力运行数据查询、历史统计数据查询、一次图配置查询等。以电力运行数据查询为例,测试内容为查询电力运行过程中的数据变化,根据用户选择的时间范围进行图形数据的重放或生成分析结果。测试时启动应用并选择数据查询功能,选择一次图显示,选择表格形式、查询时间和范围。需保证应用能够显示一次图,提供有关历史数据完成更新,提供查询到的点数据并进行显示,通过对不同功能的测试满足功能要求,根据用户需求更改配置、显示数据及时间等信息。

4.3 性能测试

针对系统性能进行测试,利用JMeter测试系统对Web应用进行不同强度的测试,模拟企业电力运维人员、企业管理人员的要求。系统需维持100的并发量,将响应时间控制在2500 ms以内,通过性能测试分析系统的平均响应时间,将其控制在1000 ms左右,最大响应时间不超过1500 ms,可快速完成响应,满足系统效率需求。

5 结束语

智能电力监控平台能够实现对电力系统的智能化监控,满足系统运行管理要求。LSTM网络能够较好地适应电力系统数据的时序特征,完成对系统数据的分析及预测,预测精确性良好,平均绝对误差为0.257,平均响应时间控制在1000 ms左右,最大响应时间不超过1500 ms,满足电网运行要求。基于安卓平台进行应用开发,实现了系统在不同场景下的应用,提升了系统运行效果,根据要求可进一步拓展应用,丰富功能,保证显示数据的全面性。

猜你喜欢
历史数据时序警告
基于时序Sentinel-2数据的马铃薯遥感识别研究
基于Sentinel-2时序NDVI的麦冬识别研究
基于设备PF性能曲线和设备历史数据实现CBM的一个应用模型探讨
智能制造(2021年4期)2021-11-04 08:54:36
基于故障历史数据和BP神经网络的接地选线方案研究
实验室警告
“毁容”警告:你的“牙龈线”正在后移
基于Hadoop技术实现银行历史数据线上化研究
用好细节材料 提高课堂实效
一种毫米波放大器时序直流电源的设计
电子制作(2016年15期)2017-01-15 13:39:08
锐志车ABS、VSC、防滑警告灯点亮