国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

冀北地區(qū)光伏電站數(shù)據(jù)查詢軟件的設(shè)計(jì)

2023-06-09 06:51:58孫曉楠劉俊培張洪峰
現(xiàn)代計(jì)算機(jī) 2023年6期
關(guān)鍵詞:秘鑰電科院語句

孫曉楠,劉俊培,班 嵐,張 衛(wèi),張洪峰

(北京科技大學(xué)天津?qū)W院智能制造學(xué)院,天津 301830)

0 引言

某大型電力設(shè)備制造公司(以下簡(jiǎn)稱公司)生產(chǎn)的并網(wǎng)型光伏逆變器以其性價(jià)比高、安裝維護(hù)簡(jiǎn)單、運(yùn)行故障率低的優(yōu)點(diǎn)占有相當(dāng)?shù)氖袌?chǎng)占有率。自2000 年公司涉足這一業(yè)務(wù)后,已有20 多年的逆變器相關(guān)領(lǐng)域設(shè)計(jì)與施工安裝經(jīng)驗(yàn);除此之外,公司光伏事業(yè)部長(zhǎng)期運(yùn)行自主研發(fā)的光伏電站綜合智能管理平臺(tái)(以下簡(jiǎn)稱運(yùn)維平臺(tái))。

運(yùn)維平臺(tái)整體架構(gòu)設(shè)計(jì)為前端與后臺(tái)兩部分。前端主要用于展示接入運(yùn)維平臺(tái)的逆變器的基本信息、發(fā)電運(yùn)行情況以及報(bào)警等信息。前端分為網(wǎng)頁展示端、大屏展示端與手機(jī)APP端。后臺(tái)處理逆變器與運(yùn)維平臺(tái)之間的通信、光伏電站信息管理等業(yè)務(wù)。運(yùn)維平臺(tái)不僅可以接入本公司生產(chǎn)的逆變器,也可以接入采用標(biāo)準(zhǔn)通信規(guī)約的其他廠家逆變器,其他規(guī)約如Q/GDW376.8、IEC60870?5?104、MODBUS等[1?2]。

在經(jīng)歷多年的深耕后,平臺(tái)積累了大量光伏電站與逆變器發(fā)電信息的真實(shí)數(shù)據(jù)。近年來,隨著新能源推廣政策的進(jìn)一步落實(shí),傳統(tǒng)以火力發(fā)電為基礎(chǔ)的電網(wǎng)如何消納新能源發(fā)電的問題日益凸顯。針對(duì)這一問題,各研究機(jī)構(gòu)紛紛建立仿真模型和策略來研究,以真實(shí)光伏發(fā)電數(shù)據(jù)為基礎(chǔ)的研究項(xiàng)目顯然在可信性與科學(xué)性方面更具有說服力。在此背景下,多家研究機(jī)構(gòu)提出購(gòu)買使用運(yùn)維平臺(tái)歷史數(shù)據(jù)的要求。其中,某省級(jí)電力科學(xué)研究院(以下簡(jiǎn)稱電科院)希望購(gòu)買到其所轄地區(qū)內(nèi)所有光伏發(fā)電數(shù)據(jù)的獨(dú)家使用權(quán),且其后續(xù)的項(xiàng)目合作計(jì)劃可操作性強(qiáng)。在進(jìn)行綜合考慮后,公司管理層決定先與電科院進(jìn)行先導(dǎo)項(xiàng)目合作,以期為進(jìn)一步合作打下基礎(chǔ)。

1 項(xiàng)目需求

先導(dǎo)項(xiàng)目的主要作用是雙方技術(shù)人員進(jìn)行溝通,以確定歷史數(shù)據(jù)的數(shù)據(jù)、格式等情況。由于數(shù)據(jù)的使用權(quán)尚未轉(zhuǎn)讓,在考慮后續(xù)項(xiàng)目仍有不確定性的情況下,雙方商議由公司一方先行提供具有典型特征的歷史數(shù)據(jù)樣本,以供電科院分析。最終,公司決定提供電科院感興趣的冀北地區(qū)以市、縣二級(jí)行政區(qū)劃為分類的部分歷史數(shù)據(jù)。

初步的溝通方案是電科院提出某地的數(shù)據(jù)需求,公司的研發(fā)人員經(jīng)過授權(quán)登錄運(yùn)維平臺(tái)的歷史庫服務(wù)器,在歷史庫中直接應(yīng)用SQL 語句查詢,然后將數(shù)據(jù)導(dǎo)出存成Excel 文檔,再發(fā)給電科院。經(jīng)過幾次溝通后,雙方均發(fā)現(xiàn)初步方案有一定的不足。對(duì)于電科院來說,一是公司方操作不可控,原始數(shù)據(jù)是否經(jīng)過修改不可知;二是公司對(duì)需求的響應(yīng)時(shí)間不可控,有時(shí)數(shù)小時(shí)內(nèi)可給出結(jié)果,有時(shí)需要等待幾天,嚴(yán)重影響電科院后續(xù)工作。對(duì)于公司來說,也出現(xiàn)幾點(diǎn)意料之外的情況。首先,電科院提出數(shù)據(jù)需求的時(shí)間是隨機(jī)的,公司目前在全力施行多個(gè)項(xiàng)目,研發(fā)人員不足,對(duì)電科院的響應(yīng)需要臨時(shí)抽調(diào)人員,項(xiàng)目?jī)?nèi)進(jìn)度容易被打斷。然后,由于先導(dǎo)項(xiàng)目合同金額相對(duì)較少,公司不希望投入過多資源和精力。其次,即使是公司內(nèi)部研發(fā)人員,經(jīng)過授權(quán)后登錄歷史庫服務(wù)器,其操作仍具有一定的安全性風(fēng)險(xiǎn),應(yīng)盡量避免。

在進(jìn)一步溝通后,公司決定研發(fā)一款功能和應(yīng)用權(quán)限受限的數(shù)據(jù)查詢軟件(以下簡(jiǎn)稱軟件),以滿足電科院要求,同時(shí)避免上述不足。軟件的需求詳列如下:

(1)軟件開發(fā)周期盡量短,少占用資源。

(2)查詢地區(qū)只限于已商定的冀北地區(qū)固定的省、市、縣。

(3)軟件界面盡量簡(jiǎn)單實(shí)用,數(shù)據(jù)除可以查看外,也能下載到當(dāng)?shù)毓ぷ麟娔X。

(4)軟件的查詢功能相對(duì)簡(jiǎn)單,但安全性策略應(yīng)完整實(shí)現(xiàn),以方便在后續(xù)項(xiàng)目中直接移植。

(5)安全性策略包括:軟件只限于電科院內(nèi)部應(yīng)用,IP 受限;軟件秘鑰每七天更新一次,由公司傳送至電科院,每次隨機(jī)生成多套秘鑰。

2 軟件設(shè)計(jì)

2.1 軟件部署情況及安全性設(shè)置

查詢軟件的最終部署情況如圖1所示。查詢軟件部署在電科院的內(nèi)網(wǎng),通過隔離裝置B 與外網(wǎng)連接。公司的運(yùn)維平臺(tái)及歷史庫服務(wù)器部署在公司內(nèi)網(wǎng),位于服務(wù)器機(jī)房集群中。歷史庫服務(wù)器并非只有一臺(tái)服務(wù)器,由于數(shù)據(jù)量較大,也為多臺(tái)服務(wù)器構(gòu)成的集群。同樣,出于數(shù)據(jù)安全的考慮,公司內(nèi)網(wǎng)通過隔離裝置A 與外網(wǎng)做安全性隔離處理。圖中的隔離裝置A/B不單指某臺(tái)具體型號(hào)的數(shù)據(jù)隔離裝置,而是泛指兩種不同類型的數(shù)據(jù)隔離裝置。由于信息安全相關(guān)部門對(duì)公司和電科院的劃分等級(jí)不同,故兩類裝置的隔離策略、軟硬件配置等情況均不同[3?5]。

圖1 軟件部署情況示意圖

隔離裝置B 的配置權(quán)限在電科院一方,不屬于查詢軟件設(shè)計(jì)范圍。隔離裝置A 的權(quán)限在公司一方,與查詢軟件相關(guān)的安全性策略采用四種。在歷史庫服務(wù)器中,部署有秘鑰驗(yàn)證算法的安全進(jìn)程小程序;電科院側(cè)的秘鑰驗(yàn)證算法集成到查詢軟件中。詳列如下:

一是IP 地址驗(yàn)證,雙方商定查詢軟件只能應(yīng)用在電科院內(nèi)部,即使經(jīng)過兩次內(nèi)外網(wǎng)地址映射后,電科院的網(wǎng)段仍可控制在一定范圍內(nèi)。IP 驗(yàn)證通過兩種方式進(jìn)行:一方面,查詢雙方交互報(bào)文的TCP/IP 協(xié)議通訊協(xié)議的地址,具體編程實(shí)現(xiàn)調(diào)用Socket 相關(guān)函數(shù);另一方面,在查詢軟件每次運(yùn)行的登錄啟動(dòng)幀中,對(duì)消息體內(nèi)的IP地址進(jìn)行二次核對(duì)。

二是用戶口令的設(shè)置,分為兩層口令設(shè)置。外層口令是查詢軟件的登錄用戶及口令,內(nèi)層口令是歷史庫查詢的用戶及口令。

三是查詢軟件秘鑰的發(fā)放。在通過隔離裝置A 的數(shù)據(jù)流中,采用一定時(shí)間內(nèi)隨機(jī)查詢數(shù)據(jù)流中秘鑰字節(jié)的方式。秘鑰內(nèi)容通過隔離裝置A 中的特定算法給出,每七天生成多套秘鑰,由公司發(fā)放至電科院,并配置到查詢軟件中。每套秘鑰分為AB 兩部分,其中A 部分部署在公司的歷史庫服務(wù)器,B 部分配置在查詢軟件中。秘鑰的核查分為兩個(gè)步驟,即對(duì)側(cè)驗(yàn)證解密流程與匹配算法。對(duì)側(cè)驗(yàn)證解密流程如下:在秘鑰查詢通信報(bào)文中,當(dāng)請(qǐng)求秘鑰一方收到應(yīng)答報(bào)文后,先用驗(yàn)證算法對(duì)報(bào)文進(jìn)行計(jì)算,如果符合規(guī)范則進(jìn)行解密流程,解密出的秘鑰交由下一步匹配算法處理。匹配是指每套秘鑰的AB兩部分,需要經(jīng)過算法計(jì)算是否匹配。在考慮公司內(nèi)網(wǎng)或電科院內(nèi)網(wǎng)有可能被非法侵入,為保證在一方被破解的情況下不至于危及另一方,對(duì)側(cè)驗(yàn)證解密算法對(duì)于秘鑰AB 部分采取不同的計(jì)算方式,且只部署對(duì)側(cè)的算法。即,公司內(nèi)網(wǎng)側(cè)的程序只部署驗(yàn)證解密秘鑰B 部分,電科院側(cè)查詢軟件只部署驗(yàn)證解密秘鑰A部分。

上述三種安全性策略,由部署在歷史庫服務(wù)器中的安全進(jìn)程與查詢軟件二者共同實(shí)現(xiàn)。安全進(jìn)程設(shè)置為守護(hù)進(jìn)程,以避免其退出后造成對(duì)側(cè)查詢軟件不能應(yīng)用的情況。

2.2 軟件流程設(shè)計(jì)

軟件流程設(shè)計(jì)相對(duì)較簡(jiǎn)單,如圖2所示。

圖2 流程設(shè)計(jì)

軟件啟動(dòng)后,通過初始化階段讀入相關(guān)的用戶口令、秘鑰等配置文件;同時(shí)讀取本地時(shí)間,存入日志。在連接測(cè)試階段,主要進(jìn)行2.1節(jié)中安全性相關(guān)測(cè)試,如果測(cè)試未通過,查詢軟件將給出提示信息,由用戶檢查口令、IP、秘鑰的正確性。查詢子流程設(shè)計(jì)成受限的情況查詢,用戶只能查詢冀北地區(qū)市、縣二級(jí)行政區(qū)劃中部分地區(qū)的數(shù)據(jù)。具體查詢語句的設(shè)計(jì)用SQL 語言實(shí)現(xiàn),詳見2.3 節(jié)。查詢出的數(shù)據(jù)在軟件界面進(jìn)行展示,以供人工粗略判斷數(shù)據(jù)的正確性。在保存數(shù)據(jù)階段,將查到的數(shù)據(jù)以CSV格式文件存儲(chǔ)到本地計(jì)算機(jī)。

2.3 數(shù)據(jù)查詢策略

數(shù)據(jù)查詢主要實(shí)現(xiàn)在冀北地區(qū)選取限定的區(qū)域,將SQL 查詢語句集成到軟件中以供用戶使用。在設(shè)計(jì)具體SQL語句前,圖3中展示的是歷史庫相關(guān)數(shù)據(jù)庫和數(shù)據(jù)表的結(jié)構(gòu)。由于接入公司的光伏逆變器數(shù)量較大,且每日數(shù)據(jù)存儲(chǔ)仍在增長(zhǎng),故采用參數(shù)庫與電量數(shù)據(jù)庫分別設(shè)計(jì)的方式。參數(shù)庫PVHisPara 相對(duì)數(shù)據(jù)量較少,且變動(dòng)不頻繁,部署在一臺(tái)服務(wù)器上。電量數(shù)據(jù)庫PVHisData相對(duì)數(shù)據(jù)量較大,每日更新大量新存入的數(shù)據(jù),分別部署在多臺(tái)服務(wù)器上。兩類數(shù)據(jù)庫均管理多個(gè)數(shù)據(jù)表格,具體如圖3所示。

圖3 數(shù)據(jù)庫的表結(jié)構(gòu)

參數(shù)庫中,需要用編程語句查詢的是電站參數(shù)表(substpara)和逆變器參數(shù)表(invpara)。某光伏電站中,可安裝一臺(tái)或多臺(tái)光伏逆變器。電站參數(shù)表(substpara)中的主鍵是substid,即電站編號(hào);逆變器參數(shù)表(invpara)的主鍵是sub?stid和invid,即通過電站編號(hào)和逆變器編號(hào)能夠定位到某臺(tái)具體逆變器信息。圖3中參數(shù)庫中另外列出的4 張數(shù)據(jù)表countypara/citypara/provin?cepara/countrypara 分別是保存縣、地級(jí)市、省、國(guó)家信息的表,每張表的主鍵是id,即縣編號(hào)、地級(jí)市編號(hào)、省編號(hào)、國(guó)家編號(hào);另外的desc字段保存相應(yīng)的地區(qū)描述。比如countrypara 中,“id=1 desc=中國(guó)” 表示國(guó)家參數(shù)表中,id 等于1的國(guó)家是中國(guó)。由于查詢軟件相對(duì)邏輯簡(jiǎn)單,故人工查詢出所需的冀北地區(qū)行政區(qū)劃編號(hào)。即,“province = 4” 指河北省,“city=(2,3,7,8,10)” 指冀北地區(qū)的唐山、承德、張家口、廊坊、秦皇島五個(gè)地級(jí)市,“county = 11” 指張家口尚義縣。

電量數(shù)據(jù)庫中涉及到的主要是分鐘數(shù)據(jù)表,每15 分鐘逆變器上傳運(yùn)維平臺(tái)一次電量數(shù)據(jù);為方便存儲(chǔ)及管理,數(shù)據(jù)庫中按天為單位將所有逆變器的數(shù)據(jù)存成一張表格。分鐘數(shù)據(jù)表中的主鍵除逆變器參數(shù)表中提到的substid 和invid外,同時(shí)設(shè)置hm 字段。hm 字段表示記錄電量值的時(shí)間,以整型數(shù)據(jù)格式(int)存儲(chǔ)。存儲(chǔ)的信息是每15分鐘上報(bào)的電量數(shù)據(jù),故hm的起始值時(shí)間是00:00 時(shí)刻,hm 設(shè)定為0;每次上報(bào)數(shù)據(jù)累加15,每日的24:00時(shí)刻,hm設(shè)定為1440。

總的來說,數(shù)據(jù)的查詢分為參數(shù)查詢和數(shù)據(jù)查詢兩類。具體來說,參數(shù)查詢可以分為某市、縣電站裝機(jī)容量查詢,電站號(hào)、逆變器號(hào)查詢,電站信息查詢等;數(shù)據(jù)查詢分為某日、某短時(shí)間內(nèi)的發(fā)電信息匯總數(shù)據(jù)查詢與分鐘發(fā)電數(shù)據(jù)查詢。下文以幾個(gè)具體查詢語句為例進(jìn)行詳細(xì)闡述。礙于篇幅原因,只舉出有特定代表性的例子,不對(duì)查詢軟件所有功能贅述。

對(duì)于冀北地區(qū)五市,以縣區(qū)為區(qū)分標(biāo)準(zhǔn)的匯總裝機(jī)容量的查詢語句如下,由于每市所轄的區(qū)縣數(shù)量各異,故以區(qū)縣的編號(hào)作為區(qū)分標(biāo)準(zhǔn)。對(duì)于區(qū)縣內(nèi)的總裝機(jī)容量采用統(tǒng)計(jì)求和函數(shù)SUM 直接計(jì)算單站容量(capacity)字段。篩選條件中,useflag =1 表示電站正在使用中。如果電站廢棄,或者正處于建設(shè)、維修、待報(bào)廢階段,則不在統(tǒng)計(jì)范圍內(nèi)。查詢的結(jié)果見表1中展示的唐山地區(qū)部分信息。

表1 唐山市區(qū)域內(nèi)電站裝機(jī)容量匯總數(shù)據(jù)

SELECT county, SUM(capacity) FROM PVHisPara.substpara WHERE state = 1 AND country = 1 AND prov?ince = 4 AND city IN(2,3,7,8,10)AND useflag =1 GROUP BY county

如要查詢發(fā)電量數(shù)據(jù),需先得到電站編號(hào)與逆變器編號(hào)。比如,如果查詢張家口尚義縣的電站編號(hào),采用如下的SQL 語句。在其中隨機(jī)抽取電站編號(hào)5329、5738、5834、5835 進(jìn)行后續(xù)數(shù)據(jù)查詢。

SELECT substid, invid FROM PVHisPara. substpara WHERE state = 1 AND country = 1 AND province = 4 AND city = 7 AND county = 6

查詢某縣的日發(fā)電量匯總需要用到子查詢的方式,下例查詢的是唐山遷安縣電站日發(fā)電量的分電站匯總信息。data22 字段存儲(chǔ)的日發(fā)電量數(shù)據(jù)。內(nèi)層子查詢給出電站編號(hào)信息,外層查詢2019年X月X日數(shù)據(jù)表的數(shù)據(jù)信息。

SELECT substid, sum(data22) FROM PVHisData.data_mininverter2019XXXX WHERE substid IN(SELECT substid FROM PVHisPara. substpara WHERE state = 1 AND country = 1 AND province = 4 AND city = 2 AND county = 11)AND hm = 1440 GROUP BY substid

單日電站數(shù)據(jù)的查詢只需要查詢具體日期的數(shù)據(jù)表即可。如要查詢多日期的數(shù)據(jù),采用聯(lián)合查詢的方式。單條語句查詢張家口尚義縣的電站語句:

SELECT substid,hm,data13,data22 FROM PVHisData.data_mininverter2019XXXX WHERE substid IN (5329,5738, 5834, 5835)

多數(shù)據(jù)表聯(lián)合查詢語句:

SELECTsubstid, inverterid, hm, data13, data22, FROM PVHisData. data_mininverter2019XXXX WHERE substid IN(5329, 5738, 5834, 5835)

UNION ALL

SELECT substid, inverterid, hm, data13, data22,FROM PVHisData. data_mininverter2019XXXX WHERE substid IN(5329, 5738, 5834, 5835)

UNION ALL

SELECT substid, inverterid, hm, data13, data22,FROM PVHisData. data_mininverter2019XXXX WHERE substid IN(5329, 5738, 5834, 5835)

UNION ALL

……

3 結(jié)果展示

由于合同條款的限制,查詢軟件的界面在文中不做展示,本節(jié)只展示查詢到的部分?jǐn)?shù)據(jù);由于數(shù)據(jù)的敏感性,因而表1和表2中的數(shù)據(jù)是在真實(shí)數(shù)據(jù)的基礎(chǔ)上做出一定偏移后的結(jié)果。在表1中,某些縣(如樂亭縣、遵化縣)的電站數(shù)量較少,是因?yàn)榻尤肽彻具\(yùn)維平臺(tái)的電站數(shù)量較少,而非其縣內(nèi)只建有表中所示數(shù)量的光伏電站。

表2 張家口尚義縣某電站日數(shù)據(jù)

除表1 中所示的某地區(qū)匯總數(shù)據(jù)外,查詢軟件也可以給出尚義縣具體電站的單日電量數(shù)據(jù),如表2 所示。表2 中展示了電站ID 是5329的電站中1 號(hào)光伏逆變器的15 分鐘間隔的電量數(shù)據(jù):在時(shí)間一列中,初始時(shí)間是0,指代每日的00:00:00 時(shí)刻;1440 是每日的結(jié)束時(shí)間,即24:00:00 時(shí)刻;表中1170 時(shí)刻后,日發(fā)電量保持不變,通過計(jì)算后此時(shí)刻對(duì)應(yīng)當(dāng)日的19:30:00時(shí)刻,即日落前后,與實(shí)際情況相符合。

4 結(jié)語

查詢軟件經(jīng)過開發(fā)測(cè)試,在五個(gè)工作日后交由電科院進(jìn)行部署應(yīng)用。應(yīng)用過程中,在保證電科院查詢到部分歷史數(shù)據(jù)的情況下,完整地驗(yàn)證了三種安全性策略。在雙方進(jìn)一步溝通后,公司與電科院簽訂了包含公司全部歷史數(shù)據(jù)使用權(quán)限的一系列合同。后續(xù)的項(xiàng)目開發(fā)中,新軟件的設(shè)計(jì)思路是一方面將原安全性策略移植到新項(xiàng)目中,另一方面擴(kuò)展甲方數(shù)據(jù)查詢的范圍和權(quán)限。由于有查詢軟件的基礎(chǔ),后續(xù)工程的開發(fā)難度降低、工作量減少。綜上,查詢軟件作為驗(yàn)證性、先導(dǎo)性項(xiàng)目,較好地實(shí)現(xiàn)了預(yù)期目的,達(dá)到最初設(shè)計(jì)要求。

猜你喜歡
秘鑰電科院語句
ETC秘鑰國(guó)產(chǎn)化升級(jí)改造方案設(shè)計(jì)與實(shí)現(xiàn)
重點(diǎn):語句銜接
干細(xì)胞開啟未來大健康的“秘鑰” 專家與媒體面對(duì)面活動(dòng)走進(jìn)中源協(xié)和—山西省干細(xì)胞基因工程有限公司
精彩語句
基于Unity 3D的產(chǎn)品秘鑰二維碼實(shí)現(xiàn)
特別感謝為本刊付出辛勤勞動(dòng)的審稿專家(按姓氏拼音排序):
湖南電力(2016年1期)2016-03-12 02:10:54
特別感謝為本刊付出辛勤勞動(dòng)的審稿專家 (按姓氏拼音排序)
湖南電力(2016年6期)2016-03-11 03:38:05
特別感謝為本刊付出辛勤勞動(dòng)的審稿專家 (按姓氏拼音排序)
湖南電力(2016年4期)2016-03-11 01:34:44
基于二元多項(xiàng)式與中國(guó)剩余定理的多秘密分享方案
中國(guó)電科院主導(dǎo)的兩項(xiàng)行業(yè)標(biāo)準(zhǔn)發(fā)布
德安县| 佛山市| 青铜峡市| 巴林右旗| 盐源县| 陆河县| 西乌| 江油市| 沈阳市| 清丰县| 白玉县| 静海县| 苍南县| 射洪县| 西丰县| 凤阳县| 蒙阴县| 平武县| 武陟县| 高淳县| 长治市| 无为县| 黑山县| 洛浦县| 防城港市| 黎川县| 嘉鱼县| 广平县| 宾阳县| 绩溪县| 个旧市| 繁昌县| 玉溪市| 淮滨县| 奎屯市| 来安县| 达州市| 景泰县| 赤峰市| 潞西市| 五莲县|