电能量管理系统软件负荷预测软件详细设计说明_第1页
电能量管理系统软件负荷预测软件详细设计说明_第2页
电能量管理系统软件负荷预测软件详细设计说明_第3页
电能量管理系统软件负荷预测软件详细设计说明_第4页
电能量管理系统软件负荷预测软件详细设计说明_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE1PAGEWQJ-900E电能量管理系统负荷预测软件详细设计说明书文件编号保密级别总页数编制评审记录对《WQJ-900E电能量管理系统软件V1.0负荷预测软件详细设计说明书V1.00》的评审意见:上述问题修改验证后,由验证后,本文件即可发布。评审人员签字:问题修改验证结果:验证人签字:时间:年月日

变更日志编号版本修改内容修改人修改日期1V0.10草稿2V1.00评审修改目录1引言 11.1编写目的 11.2背景 11.3定义 11.4参考资料 12系统设计总体说明 22.1软件模块和流程设计 22.2软件主界面设计 22.3运行环境和开发环境 32.3.1 运行环境 32.3.2 开发环境 33功能模块介绍 43.1数据读取模块 43.2数据分析模块 43.2.1 整理缺失数据 43.2.2 整理坏数据 43.2.3 数据归一化 53.2.4 形成学习样本 53.3建模和预测模块 73.4预测展现模块 74功能模块详细设计 84.1数据读取模块 84.1.1 功能实现 84.1.2 界面说明 84.1.3 类设计说明 84.1.4 质量要求 94.2数据分析模块 94.2.1 功能实现 94.2.2 类设计说明 104.2.3 质量要求 104.3建模和预测模块 104.3.1 功能实现 104.3.2 界面设计 104.3.3 类设计说明 124.3.4 质量要求 134.4预测展现模块 134.4.1 功能实现 134.4.2 界面设计 144.4.3 类设计说明 164.4.4 质量要求 165代码设计原则 176错误处理设计 18WQJ-900E电能量管理系统软件V1.0负荷预测软件详细设计说明书V1.00PAGE18引言编写目的本文档是根据WQJ-900E电能量管理系统软件V1.0负荷预测软件(以下简称WQJ-900E负荷预测软件)进行详细分析和讨论后得出的详细设计说明书,旨在明确WQJ-900E负荷预测软件的功能实现。通过本详细设计说明书,可以了解到WQJ-900E负荷预测软件的软件总体设计、界面设计、各模块的详细设计。借助该文档,可指导WQJ-900E负荷预测软件的开发人员开始软件的编码工作。本文档面向的读者是:WQJ-900E负荷预测软件开发人员、测试人员、项目经理、相关高层背景软件名称:WQJ-900E负荷预测软件电力系统负荷预测是从已知的用电需求出发,考虑政治、经济、气候等相关因素,对未来的用电需求做出的预测。负荷预测包括两方面的含义:对未来需求量(功率)的预测和未来用电量(能量)的预测。电力需求量的预测决定发电、输电、配电系统新增容量的大小;电能预测为选择适当的机组类型和合理的电源结构以及确定燃料计划提供依据。WQJ-900E负荷预测软件主要应用到电力系统配电环节。负荷预测能够帮助客户了解负荷未来发展趋势,从而制定合理的用电计划,尽量消除或避免高峰用电。定义下表列出本报告中专门术语的定义、英文缩写词的原词组和意义、项目组内达成一致意见的专用词汇,同时继承全部的先前过程中定义过的词汇。词汇名称词汇含义备注ANN人工神经网络(ArtificialNeuralNetwork)BP反向传播(BackPropagation)LMLevenberg-Marquardt简称RBF-ANN径向基(RadialBasisFunctionNeuralNetwork)参考资料编号资料名称说明1WQJ-900E电能量管理系统软件V1.0需求规格说明书V1.00.doc系统设计总体说明软件模块和流程设计图2-1软件模块和流程设计软件主界面设计软件主界面设计样式如图2-1所示,界面仅供参考。图2-1WQJ-900E负荷预测软件运行环境和开发环境运行环境运行环境类别要求CPU1GHz以上CPU内存最少512MB主机硬盘最少10GB网卡最低10Mb/s操作系统Windows2000或WindowsXP开发环境类别要求备注CPU2.40GHzCPU内存2G主机硬盘230G网卡100Mb/s操作系统WindowsXP开发软件MicrosoftVisualC++6.0开发环境功能模块介绍数据读取模块数据读取模块负责将选定预测对象样本周期内的有功/无功/电度从服务器端读入到负荷预测软件中。支持单个对象和对象组求和预测,最多选择10个对象(组)同时预测,1个对象组不超过128个对象。学习数据采用北欧电力市场(/marketinfo/powersystemdata)每时公布的负荷数据(仅有功功率)。瑞典气候南北悬殊,试用于我国北方气候。丹麦气候最温润,试用于我国南方气候。通过sqlserver导入功能将数据导入到WQJ-900E采样数据表中。数据分析模块数据分析模块将数据读取模块读取的数据进行整理分析,包括对缺失数据和坏数据的分析修正,数据的归一化,以及形成学习样本。读取的数据样本集不可避免会有缺失数据和坏数据。此模块负责采用线性插值的方法将缺失的数据进行填充,采用均方差判断数据是否是坏数据,采用修正公式进行替换。下面会做详细介绍。由于学习样本直接影响预测质量,所以要从数据来源把握数据的质量。对于WQJ-900系列数据采样配置更改时要给予提示。如果时采样数据表预测对象数据缺失过多或坏数据过多,是无法保证预测质量。整理缺失数据对缺失数据采用相邻时刻数据线性插值进行填充,以保证数据的正确性、完整性和一致性。如果我们已知t时刻,t+i时刻的数据值,而缺少中间的数据,则中间时刻t+j时刻的取值可以定义为:整理坏数据 对坏数据,又叫不良数据,或脏数据。坏数据主要是负荷突发性大幅度波动,这些数据往往会破坏负荷本身的规律性,而影响负荷预测的效果。X序列是历史n个(根据数据集灵活选择)同时刻序列。分别统计这n个数据满足以下条件的个数:fabs假设有m个数据满足上述条件,则有m,n的大小判断该复合点在这个时刻是否有坏数据及是否可以辨识修正:m如果可以辨识修正,采用下面的公式修正:xi=1如果无法辨识修正,则提示用户“坏数据过多,无法进行修正,预测中断!”。数据归一化由于样本序列各变量量纲不一致,因此,要对样本数据进行如下归一化处理,采用最小最大值的方法,转化为无量纲的数据。 其中和分别为样本序列对应变量最大值和最小值,为原始样本数据,为变换后的数值。当预测网络训练结束后,再做反归一化运算。对网络输出,采用如下公式使输出数据与原始数据在同一个区域之内,反归一化的公式为:形成学习样本按照预测周期、预测日的不同,选用的数据样本周期、单个样本序列也不同。考虑历史负荷、气候因素(可选配)两个影响因子。休息日只取休息日采样数据进行预测。根据以下样本序列要求将归一化的数据整理形成学习样本。时预测工作日样本序列{}数据集周期:>=5周<=10周样本数目:20-50个序列次序样本序列取值1[in]预测日前一天同时刻负荷2[in]预测日前一天前一刻负荷3[in]预测日前一天后一刻负荷4[in]预测日前两天同时刻负荷5[out]预测日负荷,以下表格雷同,省略时预测休息日样本序列{}数据集周期:>=10周<=20周样本数目:20-40个序列次序样本序列取值1预测日前一天同时刻负荷2预测日前一天前一刻负荷3预测日前一天后一刻负荷4上一周同日同时刻负荷…日预测工作日样本序列{}数据集周期:>=8周<=12周样本数目:30-50个序列次序样本序列取值1预测日前一天平均负荷2预测日前两天平均负荷3预测日前三天平均负荷4预测日前一周同日平均负荷5预测日前两周同日平均负荷…日预测休息日样本序列{}数据集周期:>=10周<=20周样本数目:15-35个序列次序样本序列取值1预测日前一天平均负荷2预测日前两天平均负荷3预测日前三天平均负荷4预测日前一周同日平均负荷5预测日前两周同日平均负荷…周预测样本序列{}数据集周期:>=25周<=50周样本数目:20-50个序列次序样本序列取值1预测周期前一周平均负荷2预测周期前两周平均负荷3预测周期前三周平均负荷4预测周期前四周平均负荷…月预测样本序列{}数据集周期:默认>=2年<=3年,四季分明>=3年<=4年样本数目:10-40个说明:四季分明考虑1年6个月,否则考虑1年12个月样本集序列次序样本序列取值1预测周期前一月平均负荷2预测周期前两月平均负荷3预测周期前三月平均负荷4预测周期前一年同月平均负荷5预测周期前两年同月平均负荷…季度预测样本序列{}数据集周期:默认>=5年<=10年,四季分明>=7年<=10年样本数目:10-30个说明:四季分明考虑1年2个季度,否则考虑1年4个季度样本集序列次序样本序列取值1预测周期前一季度平均负荷2预测周期前一年同季度平均负荷3预测周期前两年同季度平均负荷…年预测样本序列{}数据集周期:>=15年<=20年样本数目:10-20个序列次序样本序列取值1预测周期前一年年平均负荷2预测周期前两年年平均负荷3预测周期前三年年平均负荷…建模和预测模块建模和预测模块根据用户配置的预测对象、预测周期、影响因子、预测模型建立预测模型,对学习样本进行训练,输出预测模型并对预测对象负荷进行。人工神经网络(ArtificialNeuralNetwork,ANN)能够有效处理多变量和非线性问题,并且采用大规模的并行结构,具有良好的自适应性、自学习、容错性能好等优点,因而广泛应用于数据预测,其中以三层前馈神经网络(又称BP神经网络)和径向基神经网络(RBF-ANN)应用做多。三层前馈神经网络模型由输入层、一个隐含层、输出层组成。输入层即数据样本序列,隐含层神经网络节点个数根据Kolmogoro理论确定,输出层即预测周期负荷。负荷预测软件提供BP神经网络和径向基神经网络两种模型,支持多次训练及组合预测。BP神经网络有许多改进的算法改进网络训练效果,如自适应学习率BP算法,LM算法等,可以考虑在下个版本中增加。预测展现模块预测展现模型提供丰富的预测结果展现形式,可以选择曲线、柱状图、表格形式展示。支持将预测结果导出为Excel文件。同时用户可以根据经验对结果进行修正。功能模块详细设计数据读取模块功能实现数据读取模块负责将选定预测对象样本周期内的有功/无功/电度从服务器端读入到负荷预测软件中。支持单个对象和对象组求和预测,最多选择10个对象(组)同时预测,1个对象组不超过128个对象。这一模块调用WQJDLL.DLL中接口GetMessage_SampleNo获取预测对象采样号,点击【执行预测】后调用GetMessage_SampleData(分工作日、休息日分别读取)从时采样数据表中循环读取采样数据。界面说明相关界面设计如下图所示。类设计说明在WQJDLL.DLL和LoadForecast.exe中需要增加的属性和方法如下表4-1所示:类名主要属性说明 HANDLEm_hRealDataPipe; CList<Device*,Device*>m_DeviceList;//场站设备 CList<ForecastDevice*,ForecastDevice*>m_ForecastDeviceList; BOOL m_bGoalA;//预测目标1 BOOL m_bGoalB;//预测目标2 BOOL m_bGoalC;//预测目标3BOOLm_bSingle;//单个对象or多个对象char*pReadDataBuffer;//单个预测对象数据周期内的采样数据typedefstruct_ForecastDevice{ intGroupNo; //1-10 Device*device; }ForecastDevice;typedefstructtagAllSampleDateItem{IntGroupNo;//GroupNothrough1to10 Devicedevice; SampleDataItemsampleDataItem;}AllSampleDateItem; CList<AllSampleDateItem*,AllSampleDateItem*>m_AllSampleDateItemList;//所有预测对象的采样数据主要方法说明AFX_EXT_API intWINAPIGetMessage_SampleNo(HANDLEhPipe,WORDnStaNo,WORDnDevId,BYTEbFlag=0); BOOLQueryTableName(intnBaseNo); BOOLQueryStationName(); BOOLQueryDeviceName(); voidStationNameToCtrl(MessageStation*pMessageStation); //determinewhetherthedevicenoisselected BOOLISSel(intnSelDeviceNO);质量要求性能指标读取所有场站及场站设备的时间<1s读取单个预测对象、1周内数据的时间<1s功能测试要点采用黑盒测试的方法即可能够准确的读取所有场站和场站下设备能够灵活选择预测对象和预测目标其他测试要点(如读取采样数据的准确性)需要结合预测展现模块测试数据分析模块功能实现数据分析模块将数据读取模块读取的数据进行整理分析,包括对缺失数据和坏数据的分析修正,数据的归一化,以及形成学习样本。读取的数据样本集不可避免会有缺失数据和坏数据。此模块负责采用线性插值的方法将缺失的数据进行填充,采用均方差判断数据是否是坏数据,采用修正公式进行替换。该模块软件后台完成,无界面设计。根据读取的数据样本时间标记判断某个采样时间数据是否缺失,如果读取的采样数据个数少于理想的采样数据的一半,提示用户“数据严重缺失,无法进行预测”。如果无法辨识修正,则提示用户“坏数据过多,无法进行修正后预测!”类设计说明本模块主要属性和类设计如下表所示。类名主要属性说明Longm_lRealDataNum;Longm_lHopeDataNum;Intm_nDirtyData;TrainingSetT; CList<AllSampleDateItem*,AllSampleDateItem*>m_DateItemList;//分析后的数据std::vector<VECTOR>_inputs;std::vector<VECTOR>_outputs;主要方法说明BOOLAnalysisSampleData(Devicedevice);//analysissampledataandgetthetraining质量要求性能指标单个预测对象、1周内数据整理分析的时间<10s功能测试要点采用黑盒测试的方法即可需要结合预测展现模块测试建模和预测模块功能实现 根据实际需求选择预测对象、预测时间、影响因子,预测模型,点击【执行预测】对预测模型进行训练,并输出预测结果。界面设计相关界面设计如下图所示。类设计说明类名主要属性说明//预测时间 //++++++++++++++++++++++++++FORECASTPERIOD+++++++++++++++++++++#defineFORECAST_HOUR0#defineFORECAST_DAY1#defineFORECAST_WEEK2#defineFORECAST_MONTH3#defineFORECAST_QUARTER4#defineFORECAST_YEAR5intm_curSelPeriod;//预测模型 BOOL m_bHoliday; BOOL m_bAnn; BOOL m_bANNBP; BOOL m_bAnnLM;TwoLayerNetworknet;intinputs;inthidd

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论