電力營銷繳費通知程序設(shè)計與實踐

時間:2022-07-03 10:31:04

導(dǎo)語:電力營銷繳費通知程序設(shè)計與實踐一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

電力營銷繳費通知程序設(shè)計與實踐

一、概述

隨著智能電網(wǎng)建設(shè)的不斷推進(jìn),很多小區(qū)安裝了預(yù)付費智能電表。這種電表極大的方便了電力公司電費收繳工作,減輕了工作量,減少了欠費。但由于這種電表當(dāng)用戶購電量小于一定額度時會自動斷電,這給普通用戶帶來了很大的不便,極端情況下,突然斷電會中斷用戶正在進(jìn)行的工作,給用戶帶來損失。雖然在一些省市電力公司中,采取通過短信方式提醒用戶及時繳費[1,2]。但在更多的電力公司,還沒有實現(xiàn)此項功能,或者此項功能不夠人性化,不能有效的提醒用戶剩余電量及可用時間。經(jīng)常發(fā)生的情況是,在晚上8、9點鐘的時候,突然斷電,使用戶正在進(jìn)行的工作由于斷電而終止,這不僅會給用戶帶來很大的損失,而且嚴(yán)重影響了電力公司的企業(yè)形象,因此迫切需要一種方便而有效的方式告知用戶的剩余電量并估算剩余電量的預(yù)計使用時間,從而方便用戶合理安排繳費時間,也彰顯電力公司的人性化服務(wù)。電子郵件是現(xiàn)代社會中人與人之間進(jìn)行聯(lián)系的一種快捷方式,很多人都有每天收取一次以上電子郵件的習(xí)慣。Oracle數(shù)據(jù)庫在電力系統(tǒng)中有著廣泛的應(yīng)用,基于Oracle定時執(zhí)行任務(wù)和PL/SQL支持發(fā)送電子郵件的特征,利用系統(tǒng)空閑時間為用戶自動發(fā)送剩余電量及預(yù)測使用時間,可以有效地提醒用戶及時繳費,避免出現(xiàn)斷電的情況;同時,系統(tǒng)完全在數(shù)據(jù)庫服務(wù)器端完成,無需重新開發(fā)和部署新的應(yīng)用系統(tǒng)。綜上所述,基于數(shù)據(jù)庫服務(wù)器的用戶剩余電量提醒及使用時間預(yù)測系統(tǒng)是一種可行和方便實施的方案。

二、系統(tǒng)設(shè)計

(一)數(shù)據(jù)結(jié)構(gòu)

為了盡量減少系統(tǒng)改造工作,同時考慮開發(fā)一個新系統(tǒng)的工作量及維護(hù)難度,我們提出了基于數(shù)據(jù)庫服務(wù)器端編程實現(xiàn)的技術(shù)方案,無需修改現(xiàn)有應(yīng)用系統(tǒng),通過在數(shù)據(jù)庫服務(wù)器端創(chuàng)建一系列自動執(zhí)行的任務(wù)自動完成此功能,無需或只需很少的維護(hù)工作。在一般用電信息采集系統(tǒng)中,至少包括用戶用電信息的兩個關(guān)系表,一個是流水記錄表,另一個是用戶的繳費表,表的結(jié)構(gòu)大概如下:流水表記錄每隔15分鐘或更多時間用戶的用電數(shù)據(jù),一般是通過定時采集用戶智能電表的數(shù)據(jù),是一個歷史記錄表;繳費表記錄用戶的剩余電量及購買電量信息。兩表之間通過用戶編號進(jìn)行關(guān)聯(lián)。

(二)剩余電量使用時間預(yù)測

電網(wǎng)短期負(fù)荷預(yù)測是保證電網(wǎng)安全穩(wěn)定經(jīng)濟(jì)運行的一項重要的基礎(chǔ)性工作,是合理安排電網(wǎng)開機方式、電力電量平衡的重要依據(jù)。同時,有效的電力短期負(fù)荷預(yù)測也是實現(xiàn)實時電價的基礎(chǔ)。電力短期負(fù)荷預(yù)測通常是指1小時或24小時的日負(fù)荷預(yù)測或168小時的周負(fù)荷預(yù)測,本文主要預(yù)測的是時或日平均負(fù)荷,對于短期負(fù)荷預(yù)測,一般要求具有較高的準(zhǔn)確性和能夠?qū)崟r預(yù)測。為了幫助用戶合理安排繳費時間,系統(tǒng)需要告知用戶剩余電量的預(yù)計使用時間,這里需要使用電力負(fù)荷預(yù)測技術(shù)?;谟脩舻臍v史數(shù)據(jù),為用戶提供三個層次的用電量預(yù)測:剩余電量是否夠下一個月使用;是否夠未來五天使用;是否夠未來一天使用。電力負(fù)荷預(yù)測技術(shù)有多種[3],這里為了提高系統(tǒng)的執(zhí)行效率,采用歷史數(shù)據(jù)取平均值的預(yù)測方法。具體方法如下:假設(shè)某月或某天的歷史用電量為:P1,P2,…,Pn,則當(dāng)月或當(dāng)天的用電量可以估計為,歷史上同期用電量的平均值:Pn+1=(P1+P2+…+Pn)/n(1)其中,P1,P2,…,Pn為歷史同期用電量,Pn+1為預(yù)測用電量,n為歷史數(shù)據(jù)的個數(shù)。實踐證明,當(dāng)歷史數(shù)據(jù)量較大時,預(yù)測方式較為準(zhǔn)確。

三、系統(tǒng)實現(xiàn)

(一)自動執(zhí)行任務(wù)實現(xiàn)

在電力系統(tǒng)中,普遍采用高性能的Oracle數(shù)據(jù)庫作為數(shù)據(jù)存儲介質(zhì)。Oracle數(shù)據(jù)庫擁有豐富的編程功能,可以完成復(fù)雜的業(yè)務(wù)邏輯,所以我們通過自定義任務(wù)來完成。判斷剩余電量是否滿足下一個月使用的程序每月第一天運行一次,實例的代碼如下:Selectsum(用電量)into總用電量from流水表whereto_char(采集時間,’mm’)=to_char(sysdate,’mm’);Select總用電量/(to_number(to_char(sysdate,’yyyy’))-to_number(to_char(min(采集時間),’yyyy’)))into本月預(yù)測電量from流水表;If本月預(yù)測電量>剩余電量then發(fā)送電子郵件;Endif;判斷用戶剩余電量是否滿足未來一天或5天的代碼每天運行一次,為了不影響系統(tǒng)的日常業(yè)務(wù)處理,程序在每天晚上12點運行或安排在系統(tǒng)空閑時間運行。---獲取歷史上本天用電量合計數(shù)據(jù)Selectsum(用電量)into總用電量from流水表whereto_char(采集時間,’mm’)=to_char(sysdate,’mm’)andto_char(采集時間,’dd’)=to_char(sysdate,’dd’);selectcount(distinctto_char(采集時間,’yyyy-mm’))into總天數(shù)from流水表;if總用電量/總天數(shù)>剩余電量then發(fā)送電子郵件ElseSelectsum(用電量)into總用電量2from流水表Where(to_char(采集時間,’mm’)=to_char(sysdate+1,’mm’)andto_char(采集時間,’dd’)=to_char(sysdate+1,’dd’))or(to_char(采集時間,’mm’)=to_char(sysdate+2,’mm’)andto_char(采集時間,’dd’)=to_char(sysdate+2,’dd’))or(to_char(采集時間,’mm’)=to_char(sysdate+3,’mm’)andto_char(采集時間,’dd’)=to_char(sysdate+3,’dd’))or(to_char(采集時間,’mm’)=to_char(sysdate+4,’mm’)andto_char(采集時間,’dd’)=to_char(sysdate+4,’dd’));if(總用電量2+總用電量)/(總天數(shù))>剩余電量then發(fā)送電子郵件endif;Endif;通過調(diào)用Oracle的dbms_job包中的存儲過程,將任務(wù)加入到任務(wù)隊列中,存儲過程的聲明如下:dbms_job.submit(joboutbinary_integer,whatinarchar2,next_dateindate,intervalinvarchar2,no_parseinboolean)其中:job:輸出變量,是此任務(wù)在任務(wù)隊列中的編號;what:執(zhí)行的任務(wù)的名稱及其輸入?yún)?shù);next_date:任務(wù)執(zhí)行的時間;interval:任務(wù)執(zhí)行的時間間隔。在Oracle8i以后的數(shù)據(jù)庫中引入了UTL_SMTP包(SMTP代表SimpleMailTransferProtocol簡單郵件傳送協(xié)議,使用TCP端口25在客戶機和服務(wù)器之間建立通信聯(lián)絡(luò)),使開發(fā)者能夠從數(shù)據(jù)庫發(fā)送電子郵件。

(二)系統(tǒng)優(yōu)化

在流水表中存儲的數(shù)據(jù)量很大,基于這樣的大表進(jìn)行統(tǒng)計計算,效率較低,為了提高統(tǒng)計計算的效率,見兩個統(tǒng)計表,一個是月度統(tǒng)計表,一個是天統(tǒng)計表,分表記錄用戶每月的歷史用電量和每天歷史用電量,這樣在預(yù)測用戶下一階段電力需求的時候可以通過統(tǒng)計表獲取。

四、結(jié)論

本文探討了在智能電網(wǎng)建設(shè)中,隨著智能電表的普及,通過數(shù)據(jù)庫服務(wù)器的定時任務(wù)執(zhí)行功能,為用戶提供多層次的剩余電量使用時間預(yù)測功能,幫助用戶及時了解自己的剩余電量及預(yù)計使用時間,從而方便用戶及時繳費,避免出現(xiàn)突然斷電的情況,也體現(xiàn)了供電公司的社會責(zé)任。