一種用公網(wǎng)實現(xiàn)對光伏或風電站遠程控制的方法及系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明涉及用公網(wǎng)實現(xiàn)對光伏或風電站遠程控制技術領域,具體是一種用公網(wǎng)實現(xiàn)對光伏電站或風電站遠程控制的方法及系統(tǒng)。
【背景技術】
[0002]現(xiàn)有技術的光伏或風電站監(jiān)控系統(tǒng)只能立足于電站本身,因為這些電站發(fā)電容量較小,數(shù)量眾多,大多都地處偏遠、荒涼、分散,出于安全考慮,如要實現(xiàn)遠程傳送操作和控制指令,必須建設專用通信網(wǎng)絡,不能利用如因特網(wǎng)等公共網(wǎng)絡資源,否則操作及控制指令可能被蓄意破壞者截取,從而對電站進行攻擊,導致處在同一網(wǎng)絡上所有電站全站停止發(fā)電;如果在這些發(fā)電容量較小、數(shù)量眾多、偏遠、分散的各光伏電站和集中監(jiān)控中心間建設專用通信網(wǎng)絡,其投資將十分巨大,且維護成本非常高昂,也存在安全隱患,因為所建專用網(wǎng)絡龐大,經過地域多,難免被蓄意破壞者尋得,如被蓄意破壞者尋得,只需在尋得處插入,就可對網(wǎng)絡中的所有電站進行攻擊,所以目前技術只能通過因特網(wǎng)遠程對光伏電站進行監(jiān)視而不能實現(xiàn)遠程對電站的直接操作和控制。
【發(fā)明內容】
[0003]為了解決上述問題,本發(fā)明提供了一種用公網(wǎng)實現(xiàn)對電站遠程控制的方法及系統(tǒng),不僅能夠利用公共通訊網(wǎng)絡安全地實現(xiàn)對被控電站的遠程操控,而且安全性高于專用網(wǎng)絡。
[0004]本發(fā)明采用的技術方案:一種用公網(wǎng)實現(xiàn)對光伏或風電站遠程控制的系統(tǒng),包括用于產生操作或控制指令原碼的原碼發(fā)生器,與原碼發(fā)生器連接用于將指令原碼編碼成跳變碼的遠程控制指令加密編碼器和與遠程控制指令加密編碼器連接用于將跳變碼通過因特網(wǎng)發(fā)送給被控電站的跳變碼發(fā)送裝置;所述的被控電站包括用于接收跳變碼的跳變碼接收裝置,與跳變碼接收裝置連接用于將接收到的跳變碼解碼為指令原碼的遠程控制指令解密器和與遠程控制指令解密器連接用于接收指令原碼并執(zhí)行操作的被控電站操作控制系統(tǒng)。
[0005]根據(jù)本發(fā)明的另一方面,提供一種用公網(wǎng)實現(xiàn)對被控電站遠程控制的方法,包括遠控指令加密編碼算法、遠控指令解密碼算法和編解碼密碼動態(tài)變化方法;所述的遠控指令加密編碼算法包括以下步驟:
51:上電后遠程控制指令加密編碼器(2)初始化,檢查是否已經存在同步計數(shù),如經檢查不存在同步計數(shù),則先給同步計數(shù)賦初值;如經檢查已經存在同步計數(shù),則不再進行同步計數(shù)初始化;
52:編碼密碼檢查,如經檢查不存在編碼密碼,則由事先指定的9個字節(jié)的電站代碼和指定的5個字節(jié)的種子代碼通過非線性編碼算法產生編碼密碼,過程如下:用電站代碼代替編碼密碼,將種子值置入非線性算法的運算數(shù)組B中,調用非線性編碼算法,得到編碼密碼的低5字節(jié),仍然用電站代碼代替編碼密碼,將種子值的最高位加一常數(shù)后數(shù)置入運算數(shù)組B,調用非線性算法,得到編碼密碼的高5字節(jié),取低4字節(jié)與前次得到的低5字節(jié)合并成完整的9位編碼密碼并存入EEPROM存儲器;
如果已經存在編碼密碼,程序進入接收原始指令的環(huán)節(jié),當接收到原始指令數(shù)據(jù),程序便進入加密編碼環(huán)節(jié);
53:128位加密編碼環(huán)節(jié),確定一個16個字節(jié)的運算數(shù)組,每次運算為5個字節(jié),分3次運算,首先從存儲器中取出同步計數(shù)值并加I后寫入到運算數(shù)組的前3個字節(jié)中,剩下的兩個字節(jié)分別寫入原指令碼中的電站地址碼和設備地址碼,取出編碼密碼,調用非線性編碼算法,計算出前5個字節(jié)的跳變碼并暫存;再將同步計數(shù)放入運算數(shù)組的前3個字節(jié)中,剩下的兩個字節(jié)分別寫入原指令碼中的設備地址碼和電站地址碼,取出編碼密碼,調用非線性編碼算法,計算出中5個字節(jié)的跳變碼并暫存;再將同步計數(shù)放入運算數(shù)組的前3個字節(jié)中,剩下的兩個字節(jié)分別寫入原指令碼中的操作碼和電站地址碼,取出編碼密碼,調用非線性編碼算法,計算出后5個字節(jié)的跳變碼并暫存;最后將運算數(shù)組的最后一個字節(jié)寫入電站地址碼;此時4個字節(jié)32位的原始指令碼變成16個字節(jié)128位的跳變碼;保存新的同步計數(shù)值到EEPROM存儲器,以備下次計算使用;
54:跳變碼發(fā)送,通過串行口 Jl將128位跳變碼傳送給跳變碼發(fā)送裝置(3),由跳變碼發(fā)送裝置(3)將跳變碼通過因特網(wǎng)發(fā)送給被控光伏或風電站;
所述的遠控指令解密碼算法包括以下步驟:
(51):上電后遠程控制指令解密器(5)初始化,檢查是否已經存在同步計數(shù),如經檢查不存在同步計數(shù),則先給同步計數(shù)賦初值,此初值與遠程控制指令加密器相同;如經檢查已經存在同步計數(shù),則不再進行同步計數(shù)初始化;
(52):解碼密碼檢查,如經檢查不存在解碼密碼,則取與遠程控制指令加密器相同的的電站代碼和種子代碼通過非線性編碼算法產生解碼密碼,此解碼密碼和遠程控制指令加密器中的編碼密碼相同,產生過程也相同;如果已經存在解碼密碼,程序進入接收跳變碼環(huán)節(jié),當串行口 Jl接收到控制中心發(fā)來的跳變碼數(shù)據(jù),程序便進入解密環(huán)節(jié);
(53):解密環(huán)節(jié),取出解碼密碼,調用非線性解碼算法,對16個字節(jié)128位跳變碼分別進行解碼,先解低五個字節(jié),次解中五個字節(jié),最后解高五個字節(jié),通過解碼,原始指令已經出現(xiàn)在數(shù)組中;
(54):驗證數(shù)組中指令的真?zhèn)?,首先檢查解碼后的數(shù)組各段字節(jié)中同步計數(shù)值是否相同且與上次值相比是否合理增加,將解碼后的同步計數(shù)值與每次解碼后記錄在EEPROM存儲器中的同步計數(shù)值進行比較,如果前者小于或等于后者,則此跳變碼為假碼;如果前者大于后者超過一定值,也為假碼,否則同步計數(shù)值核對正確;然后核對解碼后的數(shù)組中各段的電站地址和設備地址是否一致,如果一致表明指令是真的,否則指令是仿冒的,將新的同步計數(shù)更新到EEPROM存儲器中,并將指令恢復成4個字節(jié)32位原始指令;
(55):選擇串行口J2,通過串行口 J2把控制指令送給電站操作控制系統(tǒng)執(zhí)行操作或控制;
所述的編解碼密碼是動態(tài)變化的,每編碼、解碼一次,編解碼密碼就變化一次;所述的編解碼密碼動態(tài)變化方法包括以下步驟:
被控電站側:
Cl:被控電站接收到跳變碼,經解密碼并驗證是本站的控制指令碼; C2:取出9個字節(jié)的解碼密碼和5個字節(jié)種子值;
C3:將種子值右移循環(huán)η位;
C4:將種子值置入非線性算法的運算數(shù)組B中,調用非線性編碼算法,得到新解碼密碼的低5字節(jié),將種子值的最高位加一常數(shù)后置入運算數(shù)組B,調用非線性算法,得到新解碼密碼的高5字節(jié),取低4字節(jié)與前次得到的低5字節(jié)合并成完整的9個字節(jié)的新解碼密碼并存入EEPROM存儲器;
C5:將接收到的跳變碼再編碼后發(fā)回至控制中心的遠程控制指令加密編碼器;
控制中心側:
Dl:接收到被控電站發(fā)來的跳變碼,經解碼并驗證是原先發(fā)出的跳變碼;
D2:取出9個字節(jié)的編碼密碼和5個字節(jié)種子值;
D3:將種子值右移循環(huán)η位;
D4:將種子值置入非線性算法的運算數(shù)組B中,調用非線性編碼算法,得到新編碼密碼的低5字節(jié),將種子值的最高位加一常數(shù)后置入運算數(shù)組B,調用非線性算法,得到新編碼密碼的高5字節(jié),取低4位與前次得到的低5位合并成完整的9個字節(jié)的新編碼密碼并存入EEPROM存儲器。
[0006]本發(fā)明的有益效果:1、指令原碼在通過網(wǎng)絡傳送之前已經轉變成位數(shù)很多、數(shù)值離散很大的跳變碼,數(shù)值組合達量萬億億億億級,且每個跳變碼只一次有效,使截碼技術和掃碼技術破解成為不可能;
2、用于產生跳變碼和將跳變碼解碼的編解碼密碼是動態(tài)變化的,每編碼、解碼一次,編解碼密碼就變化一次,這使得采用超級計算機對大量截獲數(shù)據(jù)推導破解成為不可能;
3、遠控指令解碼器能有效地將被控電站內的控制專網(wǎng)和因特網(wǎng)隔離,只有經解密確認正確的控制指令才能進入電站控制專網(wǎng),而互聯(lián)網(wǎng)上其他任何數(shù)據(jù)都不能進入電站控制專網(wǎng),能有效保證電站的安全。所以指令傳送過程中的安全性很高,高于已有技術在專網(wǎng)上的傳送。
[0007]4、由于可以使用因特網(wǎng)或其他公共網(wǎng)絡傳送,費用很低,一般光伏電站都已接通因特網(wǎng),所以不需要額外投資建設網(wǎng)絡,或者只增加很小的投資。
[0008]5、由于一條指令在編碼后只有16個字節(jié)128位,所以通過網(wǎng)絡傳輸所需帶寬很小,控制的可靠性很高。
【附圖說明】
[0009]圖1是遠程控制原理方框圖;
圖2是操作或控制指令原碼格式、加密后的跳變碼格式;
圖3是遠程控制指令加密器電路原理圖;
圖4是遠程控制指令解密器電路原理圖;
圖5是遠程控制指令加密編碼算法流程圖;
圖6是遠程控制指令解密碼算法流程圖;
圖7是非線性編碼算法流程圖;
圖8是非線性解碼算法流程圖;
圖9是編解碼密碼是動態(tài)變化流程圖。
【具體實施方式】
[0010]以下是本發(fā)明的一個【具體實施方式】,現(xiàn)結合附圖作進一步說明。
[0011]如圖1所示,一種用公網(wǎng)實現(xiàn)對電站遠程控制的系統(tǒng),其特征在于:包括用于產生操作或控制指令原碼的原碼發(fā)生器1,與原碼發(fā)生器I連接用于將指令原碼編碼成跳變碼的遠程控制指令加密編碼器2和與遠程控制指令加密器2連接用于將跳變碼通過因特網(wǎng)發(fā)送給光伏電站的跳變碼發(fā)送裝置3 ;所述的被控電站包括用于接收跳變碼的跳變碼接收裝置4,與跳變碼接收裝置4連接用于將接收到的跳變碼解碼為指令原碼的遠程控制指令解密器5和與遠程控制指令解密器5連接用于接收指令原碼并執(zhí)行操作的被控電站操作控制系統(tǒng)6。
[0012]如圖2所示,原碼發(fā)生器(I)產生的指令原碼為4個字節(jié)共32位;第一個字節(jié)為8位電站地址碼,全零不用,共可控制255個電站。第二個字節(jié)為8位站內可操作或控制設備地址碼,共可控制255個可操作或可控制設備。第三個字節(jié)和第四個字節(jié)的低四位共12位