面向scada系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng)及其方法
【專利摘要】本發(fā)明公開了一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng),包括相互連接的服務端和客戶端。其中,服務端包括數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元,客戶端包括數(shù)據(jù)回填客戶端單元;數(shù)據(jù)回填存儲單元記錄數(shù)據(jù)變化情況,并轉(zhuǎn)換成用于數(shù)據(jù)回填轉(zhuǎn)發(fā)的報文;數(shù)據(jù)回填服務端單元監(jiān)聽指定的端口、數(shù)據(jù)回填客戶端的數(shù)據(jù)回填請求并完成數(shù)據(jù)轉(zhuǎn)發(fā);數(shù)據(jù)回填客戶端單元接收數(shù)據(jù)回填請求者發(fā)送的數(shù)據(jù)回填報文后,為需要進行數(shù)據(jù)回填的服務端創(chuàng)建線程以完成數(shù)據(jù)回填采集。本發(fā)明可以解決SCADA系統(tǒng)因為調(diào)控中心與站場間的通信中斷而導致的部分數(shù)據(jù)缺失問題,保障SCADA系統(tǒng)的數(shù)據(jù)完整性和可用性。
【專利說明】面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng)及其方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種數(shù)據(jù)采集回填系統(tǒng),尤其涉及一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng),同時也涉及該數(shù)據(jù)采集回填系統(tǒng)進行數(shù)據(jù)采集回填的方法,屬于數(shù)據(jù)處理【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]SCADACSupervisory Control And Data Acquisition,數(shù)據(jù)采集與監(jiān)視控制)系統(tǒng)是以計算機為基礎(chǔ)的生產(chǎn)過程控制與調(diào)度自動化系統(tǒng),廣泛應用于電力、水利、冶金、石油、化工、軌道交通等行業(yè)的數(shù)據(jù)采集與過程控制等領(lǐng)域。SCADA系統(tǒng)可以對各類運行環(huán)境、多種運行設(shè)備進行監(jiān)視和控制,以實現(xiàn)數(shù)據(jù)采集、設(shè)備控制、參數(shù)調(diào)節(jié)、各類信號報警、歷史數(shù)據(jù)存儲等各項功能。
[0003]為了提高SCADA系統(tǒng)的可靠性、開放性與可擴展性,使其易于與其它系統(tǒng)實現(xiàn)互聯(lián)或數(shù)據(jù)共享,基于客戶端/服務器模式的網(wǎng)絡(luò)化SCADA系統(tǒng)越來越普及。SCADA系統(tǒng)的數(shù)據(jù)來源由數(shù)據(jù)采集回填系統(tǒng)通過多種通信方式從場站控制設(shè)備采集而來,而采集數(shù)據(jù)往往由站控系統(tǒng)和中控系統(tǒng)完成,中控系統(tǒng)既可以從場站控制設(shè)備采集數(shù)據(jù),也可以從站控系統(tǒng)采集數(shù)據(jù)。
[0004]從目如SCADA系統(tǒng)實際運彳丁的情況來看,中控系統(tǒng)、站控系統(tǒng)和場站控制設(shè)備的通信經(jīng)常會出現(xiàn)中斷。在通信出現(xiàn)中斷的期間,中控系統(tǒng)無法得到此段時間的數(shù)據(jù)信息,影響了整個SCADA系統(tǒng)的數(shù)據(jù)連續(xù)性、完整性和可用性。
[0005]在申請?zhí)枮?01210095225.0的中國專利申請中,公開了一種為了防止數(shù)據(jù)不連續(xù)而設(shè)計的數(shù)據(jù)重傳機制,發(fā)送端在多個數(shù)據(jù)包內(nèi)分別貼入數(shù)據(jù)編碼并發(fā)送,所述多個數(shù)據(jù)編碼連續(xù);接收端接收多個數(shù)據(jù)包,并檢查多個數(shù)據(jù)編碼的連續(xù)性,如果連續(xù),則繼續(xù)接收,如果不連續(xù),接收端反饋數(shù)據(jù)丟失信號給發(fā)送端,發(fā)送端接收數(shù)據(jù)丟失信號,按照丟失信號查找該數(shù)據(jù)包并重傳,以保證數(shù)據(jù)的連續(xù)性。
[0006]在申請?zhí)枮?00480005445.3的中國專利申請中,公開了一種發(fā)射/接收系統(tǒng)、發(fā)射設(shè)備和方法及接收設(shè)備和方法,其采用RTP報頭中的順序號的連續(xù)性來判斷數(shù)據(jù)的連續(xù)性。當數(shù)據(jù)不連續(xù)時,接收端發(fā)送重新發(fā)送請求,發(fā)送端根據(jù)該請求查找需要重發(fā)的數(shù)據(jù),重新發(fā)送丟失數(shù)據(jù),從而保證了數(shù)據(jù)的連續(xù)性。
【發(fā)明內(nèi)容】
[0007]針對現(xiàn)有技術(shù)所存在的不足,本發(fā)明所要解決的技術(shù)問題在于提供一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng)及其方法。利用該技術(shù)方案可以保障SCADA系統(tǒng)的數(shù)據(jù)完整性和可用性。
[0008]為實現(xiàn)上述的發(fā)明目的,本發(fā)明采用下述的技術(shù)方案:
[0009]一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng),包括相互連接的服務端和客戶端,其中,[0010]所述服務端包括數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元,所述客戶端包括數(shù)據(jù)回填客戶端單元;
[0011]所述數(shù)據(jù)回填存儲單元記錄數(shù)據(jù)變化情況,并轉(zhuǎn)換成用于數(shù)據(jù)回填轉(zhuǎn)發(fā)的報文;所述數(shù)據(jù)回填服務端單元監(jiān)聽指定的端口、所述數(shù)據(jù)回填客戶端的數(shù)據(jù)回填請求并完成數(shù)據(jù)轉(zhuǎn)發(fā);所述數(shù)據(jù)回填客戶端單元接收數(shù)據(jù)回填請求者發(fā)送的數(shù)據(jù)回填報文后,為需要進行數(shù)據(jù)回填的所述服務端創(chuàng)建線程以完成數(shù)據(jù)回填采集。
[0012]其中較優(yōu)地,所述服務端與所述客戶端采用IEC60870-5-104協(xié)議進行通信。
[0013]其中較優(yōu)地,所述數(shù)據(jù)回填服務端單元轉(zhuǎn)發(fā)的數(shù)據(jù)是服務端實時數(shù)據(jù)轉(zhuǎn)發(fā)程序記錄的報文日志或所述數(shù)據(jù)回填存儲單元記錄的報文日志。
[0014]其中較優(yōu)地,所述數(shù)據(jù)回填存儲單元和所述數(shù)據(jù)回填服務端單元分別采用不同的TCP連接。
[0015]一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填方法,用在上述的數(shù)據(jù)采集回填系統(tǒng)中,包括如下步驟:
[0016]數(shù)據(jù)回填請求者向客戶端發(fā)送數(shù)據(jù)回填消息,發(fā)起數(shù)據(jù)回填請求;
[0017]數(shù)據(jù)采集回填系統(tǒng)接收數(shù)據(jù)回填請求后,采用如下步驟響應并處理數(shù)據(jù)回填請求:客戶端按照請求內(nèi)容向服務端發(fā)送建立連接請求,服務端接收建立連接請求,建立通信連接;客戶端向服務端發(fā)送鏈路初始化報文,服務端接收鏈路初始化報文并回復;客戶端向服務端發(fā)送召喚數(shù)據(jù)回填請求,服務端接收召喚數(shù)據(jù)回填請求并回復數(shù)據(jù)回填報文;客戶端接收到數(shù)據(jù)回填報文并解析處理;
[0018]數(shù)據(jù)采集回填系統(tǒng)根據(jù)服務端返回的結(jié)果,回復數(shù)據(jù)回填結(jié)果給所述數(shù)據(jù)回填請求者。
[0019]其中較優(yōu)地,所述數(shù)據(jù)回填請求者是人機接口或基礎(chǔ)平臺。
[0020]其中較優(yōu)地,所述數(shù)據(jù)回填請求包括鏈路標識、數(shù)據(jù)回填起始時間、數(shù)據(jù)回填結(jié)束時間。
[0021]本發(fā)明提供專門的通信協(xié)議用于傳輸服務端與客戶端之間的命令及數(shù)據(jù)報文,可以解決SCADA系統(tǒng)因為調(diào)控中心與站場間的通信中斷而導致的部分數(shù)據(jù)缺失問題。通過與子站進行歷史數(shù)據(jù)回填,可以填補數(shù)據(jù)中斷部分,保障SCADA系統(tǒng)的數(shù)據(jù)完整性和可用性。
【專利附圖】
【附圖說明】
[0022]圖1是本發(fā)明所提供的數(shù)據(jù)采集回填系統(tǒng)的整體結(jié)構(gòu)示意圖;
[0023]圖2是數(shù)據(jù)回填請求者向數(shù)據(jù)采集回填系統(tǒng)發(fā)送請求的示意圖;
[0024]圖3是本發(fā)明所提供的數(shù)據(jù)采集回填方法的流程示意圖。
【具體實施方式】
[0025]下面結(jié)合附圖和【具體實施方式】對本發(fā)明做進一步的詳細說明。
[0026]本發(fā)明提供一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng),如圖1所示,包括服務端和客戶端。服務端與客戶端通過網(wǎng)絡(luò)連接,優(yōu)選采用IEC60870-5-104協(xié)議進行通信。其中,服務端包括數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元。數(shù)據(jù)回填存儲單元記錄實時數(shù)據(jù)變化情況,將實時數(shù)據(jù)轉(zhuǎn)換成能用于數(shù)據(jù)回填轉(zhuǎn)發(fā)的報文并存儲。數(shù)據(jù)回填服務端單元監(jiān)聽指定的端口,接收數(shù)據(jù)回填客戶端的數(shù)據(jù)回填請求并完成數(shù)據(jù)轉(zhuǎn)發(fā)??蛻舳酥饕〝?shù)據(jù)回填客戶端單元。數(shù)據(jù)回填客戶端單元接收數(shù)據(jù)回填請求者發(fā)送的數(shù)據(jù)回填消息后,為需要數(shù)據(jù)回填的服務端創(chuàng)建專用線程以完成數(shù)據(jù)回填采集。
[0027]在本發(fā)明的一個實施例中,服務端是屬于子站端的站控系統(tǒng),包括數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元。該服務端分別采用獨立的進程,通過數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元完成數(shù)據(jù)回填存儲和轉(zhuǎn)發(fā)功能。
[0028]數(shù)據(jù)回填存儲單元記錄實時數(shù)據(jù)變化情況,并將這些反映實時數(shù)據(jù)變化情況的數(shù)據(jù)轉(zhuǎn)換成滿足IEC60870-5-104協(xié)議擴展功能要求且能夠用于數(shù)據(jù)回填轉(zhuǎn)發(fā)的報文。數(shù)據(jù)回填存儲單元轉(zhuǎn)換的報文可以作為數(shù)據(jù)回填服務端單元的數(shù)據(jù)源使用。
[0029]數(shù)據(jù)回填服務端單元負責監(jiān)聽指定的端口、接收數(shù)據(jù)回填客戶端單元的請求并完成數(shù)據(jù)轉(zhuǎn)發(fā)。數(shù)據(jù)回填服務端單元與數(shù)據(jù)回填客戶端單元采用IEC60870-5-104協(xié)議的擴展功能,通過網(wǎng)絡(luò)完成數(shù)據(jù)傳輸任務。數(shù)據(jù)回填服務端單元轉(zhuǎn)發(fā)的數(shù)據(jù)來源有兩個:第一數(shù)據(jù)源是服務端實時數(shù)據(jù)轉(zhuǎn)發(fā)程序記錄的報文日志,第二數(shù)據(jù)源是數(shù)據(jù)回填存儲單元記錄的報文日志。數(shù)據(jù)回填服務端單元優(yōu)先使用第一數(shù)據(jù)源提供的數(shù)據(jù),當?shù)谝粩?shù)據(jù)源無法提供所需數(shù)據(jù)時再使用第二數(shù)據(jù)源提供的數(shù)據(jù)。
[0030]數(shù)據(jù)回填存儲單元或服務端實時數(shù)據(jù)轉(zhuǎn)發(fā)程序記錄報文日志時,為了能快速完成查找,保存日志的命名優(yōu)選為:日期+鏈路名稱組合。按此命名規(guī)則可以省去查找數(shù)據(jù)報文所在哪個文件中的步驟。同時將鏈路日志內(nèi)容按這種格式記錄,可以優(yōu)化在文件中查找數(shù)據(jù)時的操作次數(shù),通過高效的二分查找法在log(n)的時間復雜度中完成查找。例如:“20130101_測試站.log”,日志記錄的格式為:
[0031]time:2013-01-01:18:10:10.245
[0032]send:xx xx xx xx xx // 數(shù)據(jù)報文
[0033]time:2013-01-01:18:10:11.245
[0034]send:xx xx xx xx xx // 數(shù)據(jù)報文。
[0035]在本發(fā)明的一個實施例中,客戶端是中控系統(tǒng),屬于主站端。客戶端主要包括數(shù)據(jù)回填客戶端單元。數(shù)據(jù)回填客戶端單元接收到數(shù)據(jù)回填請求者發(fā)送的數(shù)據(jù)回填報文,采集回填數(shù)據(jù)后為每個需要數(shù)據(jù)回填的服務端創(chuàng)建專用線程以完成數(shù)據(jù)回填采集。數(shù)據(jù)回填客戶端單元接收到數(shù)據(jù)回填報文并采集回填數(shù)據(jù)的過程主要包括:數(shù)據(jù)回填客戶端單元解析收到的數(shù)據(jù)回填請求者發(fā)送的數(shù)據(jù)回填報文,并根據(jù)數(shù)據(jù)回填報文的內(nèi)容確定數(shù)據(jù)回填鏈路標識、數(shù)據(jù)回填起始時間和數(shù)據(jù)回填結(jié)束時間。數(shù)據(jù)回填客戶端單元解析收到的數(shù)據(jù)回填報文后,與服務端建立連接,利用IEC60870-5-104協(xié)議的擴展功能采集需要回填的數(shù)據(jù)。數(shù)據(jù)回填客戶端單元將采集的回填數(shù)據(jù)按照與實時數(shù)據(jù)相同的流程發(fā)送給基礎(chǔ)平臺進行處理。數(shù)據(jù)回填請求者主要是基礎(chǔ)平臺或人機接口(Human Machine Interface)?;A(chǔ)平臺或人機接口發(fā)送的數(shù)據(jù)回填報文發(fā)起自動觸發(fā)數(shù)據(jù)回填采集和人工觸發(fā)數(shù)據(jù)回填采集兩種觸發(fā)方式。
[0036]數(shù)據(jù)回填請求者之一的基礎(chǔ)平臺是數(shù)據(jù)采集子系統(tǒng)運行的平臺,也是整個SCADA系統(tǒng)運行的平臺。數(shù)據(jù)回填請求者之一的人機接口是SCADA系統(tǒng)中的人機交互部分。如圖
2所示,人機接口發(fā)起數(shù)據(jù)回填請求是通過基礎(chǔ)平臺轉(zhuǎn)發(fā)的,由客戶端Fesjngr模塊收到后解析并轉(zhuǎn)換為客戶端的內(nèi)部消息。數(shù)據(jù)回填數(shù)據(jù)通過服務端的FeS_Com通信模塊向客戶端傳遞采集數(shù)據(jù)。
[0037]基礎(chǔ)平臺通過分析歷史數(shù)據(jù)的連續(xù)性,得出在SCADA系統(tǒng)中所缺數(shù)據(jù)的起始時間和結(jié)束時間,并獲得該數(shù)據(jù)的通信鏈路?;A(chǔ)平臺將通信鏈路信息、歷史回填數(shù)據(jù)的起始時間和結(jié)束時間通過數(shù)據(jù)總線發(fā)送給數(shù)據(jù)回填客戶端單元,再由數(shù)據(jù)回填客戶端單元負責采集回填數(shù)據(jù)。
[0038]操作員通過人機接口向數(shù)據(jù)回填客戶端單元下發(fā)數(shù)據(jù)回填報文,由數(shù)據(jù)回填客戶端單元采集回填數(shù)據(jù)。該數(shù)據(jù)回填報文同樣包含需要數(shù)據(jù)回填的站場,數(shù)據(jù)回填的起始時間、結(jié)束時間及獲得該數(shù)據(jù)的通信鏈路。
[0039]為了提高服務端對子站端的服務響應能力,本發(fā)明采用預處理方式。具體地說,在沒有發(fā)生數(shù)據(jù)回填請求時,將實時數(shù)據(jù)按照數(shù)據(jù)回填的協(xié)議轉(zhuǎn)換成歷史數(shù)據(jù)報文,以通信鏈路為單位每天生成一個歷史數(shù)據(jù)文件。此種處理方式的優(yōu)點是數(shù)據(jù)傳輸時不必進行數(shù)據(jù)查詢、報文組織等工作的實時處理。當發(fā)生數(shù)據(jù)回填時,有效地減少了服務端對數(shù)據(jù)查詢、報文組織的時間,大大提高了服務端對子站段的服務響應能力。
[0040]為了減少數(shù)據(jù)回填采集對實時數(shù)據(jù)采集的影響,數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元分別采用不同的TCP連接。數(shù)據(jù)回填存儲單元記錄實時數(shù)據(jù)變化情況時,與數(shù)據(jù)回填服務端單元的數(shù)據(jù)回填采集分別采用不同的TCP連接。具體地說,在解決不影響實時數(shù)據(jù)傳輸問題時,分別進行兩個處理:一是將實時數(shù)據(jù)傳輸與數(shù)據(jù)回填傳輸分為2個單獨的TCP進行傳輸;二是通過使用IPC進程間通信的共享內(nèi)存、信號燈技術(shù)和網(wǎng)絡(luò)傳輸速率統(tǒng)計技術(shù),使實時數(shù)據(jù)傳輸具有優(yōu)先于數(shù)據(jù)回填的等級。在實時數(shù)據(jù)進行傳輸時,數(shù)據(jù)回填的發(fā)送速率將會減慢至不影響實時數(shù)據(jù)傳輸?shù)乃俾省R?M帶寬的網(wǎng)絡(luò)為例,有效傳輸?shù)乃俣仁?56KB/S,實時數(shù)據(jù)進程進行傳輸時會統(tǒng)計出實時流量速度,將此傳輸速度記錄在共享內(nèi)存中。數(shù)據(jù)回填進程在獲得實時數(shù)據(jù)傳輸速率后,會更改自己的傳輸速率,以達到在最大限度的利用網(wǎng)絡(luò)資源的情況下,不影響實時數(shù)據(jù)的正常傳輸。
[0041 ] 在本發(fā)明中,數(shù)據(jù)回填服務端單元與數(shù)據(jù)回填客戶端單元采用IEC60870-5-104協(xié)議的擴展功能完成數(shù)據(jù)傳輸任務。具體地說,本發(fā)明在IEC60870-5-104協(xié)議的基礎(chǔ)上增加了數(shù)據(jù)回填功能。歷史數(shù)據(jù)的傳輸全部采用帶時標的數(shù)據(jù)格式,包括模擬量和開關(guān)量。數(shù)據(jù)格式增加歷史數(shù)據(jù)召喚功能,幀格式如表I所示:
[0042]
【權(quán)利要求】
1.一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填系統(tǒng),包括相互連接的服務端和客戶端,其特征在于: 所述服務端包括數(shù)據(jù)回填存儲單元和數(shù)據(jù)回填服務端單元,所述客戶端包括數(shù)據(jù)回填客戶端單元; 所述數(shù)據(jù)回填存儲單元記錄數(shù)據(jù)變化情況,并轉(zhuǎn)換成用于數(shù)據(jù)回填轉(zhuǎn)發(fā)的報文;所述數(shù)據(jù)回填服務端單元監(jiān)聽指定的端口、所述數(shù)據(jù)回填客戶端的數(shù)據(jù)回填請求并完成數(shù)據(jù)轉(zhuǎn)發(fā);所述數(shù)據(jù)回填客戶端單元接收數(shù)據(jù)回填請求者發(fā)送的數(shù)據(jù)回填報文后,為需要進行數(shù)據(jù)回填的所述服務端創(chuàng)建線程以完成數(shù)據(jù)回填采集。
2.如權(quán)利要求1所述的數(shù)據(jù)采集回填系統(tǒng),其特征在于: 所述服務端與所述客戶端采用IEC60870-5-104協(xié)議進行通信。
3.如權(quán)利要求1所述的數(shù)據(jù)采集回填系統(tǒng),其特征在于: 所述數(shù)據(jù)回填服務端單元轉(zhuǎn)發(fā)的數(shù)據(jù)是服務端實時數(shù)據(jù)轉(zhuǎn)發(fā)程序記錄的報文日志或所述數(shù)據(jù)回填存儲單元記錄的報文日志。
4.如權(quán)利要求1所述的數(shù)據(jù)采集回填系統(tǒng),其特征在于: 所述數(shù)據(jù)回填存儲單元和所述數(shù)據(jù)回填服務端單元分別采用不同的TCP連接。
5.一種面向SCADA系統(tǒng)的數(shù)據(jù)采集回填方法,用在權(quán)利要求1所述的數(shù)據(jù)采集回填系統(tǒng)中,其特征在于包括如下步驟: 數(shù)據(jù)回填請求者向客戶端發(fā)送數(shù)據(jù)回填消息,發(fā)起數(shù)據(jù)回填請求;數(shù)據(jù)采集回填系統(tǒng)接收數(shù)據(jù)回填請求后,采用如下步驟響應并處理數(shù)據(jù)回填請求:客戶端按照請求內(nèi)容向服務端發(fā)送建立連接請求,服務端接收建立連接請求,建立通信連接;客戶端向服務端發(fā)送鏈路初始化報文,服務端接收鏈路初始化報文并回復;客戶端向服務端發(fā)送召喚數(shù)據(jù)回填請求,服務端接收召喚數(shù)據(jù)回填請求并回復數(shù)據(jù)回填報文;客戶端接收到數(shù)據(jù)回填報文并解析處理; 數(shù)據(jù)采集回填系統(tǒng)根據(jù)服務端返回的結(jié)果,回復數(shù)據(jù)回填結(jié)果給所述數(shù)據(jù)回填請求者。
6.如權(quán)利要求5所述的數(shù)據(jù)采集回填方法,其特征在于: 所述數(shù)據(jù)回填請求者是人機接口或基礎(chǔ)平臺。
7.如權(quán)利要求5所述的數(shù)據(jù)采集回填方法,其特征在于: 所述數(shù)據(jù)回填請求包括鏈路標識、數(shù)據(jù)回填起始時間、數(shù)據(jù)回填結(jié)束時間。
【文檔編號】H04L29/08GK103442003SQ201310376561
【公開日】2013年12月11日 申請日期:2013年8月26日 優(yōu)先權(quán)日:2013年8月26日
【發(fā)明者】王贊, 陳清山, 溫昭琦, 高保成, 丁盛舟, 宋光鵬, 孫頔 申請人:北京科東電力控制系統(tǒng)有限責任公司