在跟发电厂做辅助决策系统时,涉及到电量结算问题。电厂方只提供实时的每分钟的电力数据,我方要根据电力
来算出每一时段的电量(以一刻钟为一时段,一天96时段)。
涉及到两个问题:
1.从电厂端Oracle数据库中把yxrtdata实时表的数据采集到本地Sqlserver,并作为历史表存储
2.在本地处理里yxrtdata表把在一刻钟内的电力积分成电量,然后分解时间字段,对应到竞价辅助决策系统
数据库check_machine_quantity表的主键,最后插入记录。
电厂端Oracle数据库,所要采集的表结构:
CREATE TABLE [dbo].[yxrtdata] (
[ID] [decimal](10, 0) NOT NULL ,
[GCWZDM] [char] (24) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[SZ] [decimal](1, 0) NULL ,
[SJ] [datetime] NULL
)
竞价辅助决策系统数据库(SQLserver2000)
被插入的表结构
CREATE TABLE [dbo].[CHECK_MACHINE_QUANTITY] (
[YEAR] [char] (4) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[MONTH] [char] (2) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[DAY] [char] (2) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[PERIOD_ID] [numeric](10, 0) NOT NULL ,
[POWER_PLANT_ID] [numeric](10, 0) NOT NULL ,
[MACHINE_NO] [numeric](10, 0) NOT NULL , --以上是主键
[CHECK_MACHINE_QUANTITY_EXAM_QUANTITY] [numeric](15, 4) NULL ,--要插入的电量
……………………
)
第一个问题的解决思路:在Sqlserver2000建立作业,实现每分钟采集数据。
第二个问题的解决思路:对一刻钟内的sz列求和公式为:sum(sz)*60.0/3600.0/10.0,单位为(万千瓦时),sz的单位为(兆千瓦).取sj的时间部分(小时,分钟)求出所在的段(一天共96个时段).以防对方数据晚采,对历史表的处理时间段为取得最大时间的前30分钟.
一下是处理过程的部分代码。
declare @maxTime as datetime,
@powerPlantID as decimal,
@periodID as decimal,
@machineNo as decimal,
@startTime as datetime,
@endTime as datetime,
@quantity as decimal(15,6)
set @powerPlantID=32 --电厂ID,若其他电厂修改.
select @maxTime=max(sj) from ycrtdata
--取最近一刻时间
set @maxTime=dateadd(minute,-convert(decimal,datepart(minute,@maxTime)%15),@maxTime)
--设定起始时间
set @startTime=DateAdd(minute,-30,@maxTime)
set @endTime=DateAdd(minute,15,@startTime)
--转为第几时段
set @periodID=(convert(decimal,datepart(hour,@startTime))*60+convert(decimal,datepart
(minute,@startTime)))/15+1
--处理1#机对应ID=207
select @quantity=sum(sz)*60.0/3600.0/10.0 from ycrtdata where id=207 and sj>=@startTime and
sj<@endTime
insert into gboss..CHECK_MACHINE_QUANTITY
(year,month,day,period_id,power_plant_id,machine_no,check_machine_quantity_exam_quantity)
values(year(@startTime),month(@startTime),day
(@startTime),@periodID,@powerPlantID,1,@quantity)
--delete from ycrtdata where id=207 and sj>=@startTime and sj<@endTime
在Sqlserver中新建作业,每15分钟执行一次。 这样就可以实现电力积分,转为电量存到CHECK_MACHINE_QUANTITY的表中的重复作业调度。
分享到:
相关推荐
毕设和企业适用springboot企业健康管理平台类及活动管理平台源码+论文+视频.zip
本项目为基于layui框架开发的省市复选框组件设计源码,集成了115个文件,涵盖75个GIF动画、23个JavaScript脚本、6个CSS样式表、2个PNG图片、1个许可证文件、1个Markdown文档以及多种字体文件。该组件旨在提供一套便捷的省市多选解决方案,适用于各类需要地区选择的场景。
labview程序代码参考学习使用,希望对你有所帮助。
毕设和企业适用springboot社区服务类及互联网金融平台源码+论文+视频
毕设和企业适用springboot企业协作平台类及网络营销平台源码+论文+视频
毕设和企业适用springboot商城类及风险控制平台源码+论文+视频
立方体、球体、金字塔检测26-YOLO(v5至v11)、CreateML、Paligemma、TFRecord、VOC数据集合集.rarRobodog-V4 2023-06-21 11:41 PM ============================= *与您的团队在计算机视觉项目上合作 *收集和组织图像 *了解和搜索非结构化图像数据 *注释,创建数据集 *导出,训练和部署计算机视觉模型 *使用主动学习随着时间的推移改善数据集 对于最先进的计算机视觉培训笔记本,您可以与此数据集一起使用 该数据集包括255张图像。 立方体以创建格式注释。 将以下预处理应用于每个图像: *像素数据的自动取向(带有Exif-Arientation剥离) *调整大小为640x640(拉伸) 应用以下扩展来创建每个源图像的3个版本: * 0到4.75像素之间的随机高斯模糊 *将盐和胡椒噪声应用于5%的像素
毕设和企业适用springboot社交互动平台类及数据智能化平台源码+论文+视频
labview程序代码参考学习使用,希望对你有所帮助。
毕设和企业适用springboot人工智能类及企业数字资产管理平台源码+论文+视频
毕设和企业适用springboot社交互动平台类及跨境电商管理平台源码+论文+视频
毕设和企业适用springboot实验室类及文化旅游信息平台源码+论文+视频.zip
毕设和企业适用springboot汽车管理类及消费品管理平台源码+论文+视频
毕设和企业适用springboot实验室类及音频处理平台源码+论文+视频.zip
毕设和企业适用springboot企业数据管理平台类及直播流媒体平台源码+论文+视频
毕设和企业适用springboot企业云存储平台类及无人驾驶系统源码+论文+视频
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。
毕设和企业适用springboot企业知识管理平台类及供应链优化系统源码+论文+视频
毕设和企业适用springboot汽车管理类及网络营销平台源码+论文+视频