本發明涉及變電站遠動系統,具體涉及一種變電站遠動系統的數據采集與處理方法。
背景技術:
變電站遠動系統作為國家電網廠站自動化系統的一個重要分支,在整個自動化系統中起著承上啟下的作用。變電站遠動系統基本功能是實現變電站內數據的采集、存儲、處理以及對調度主站的轉發,因此,好的數據采集處理方法不僅能夠提高數據處理效率,同時還能夠降低系統負荷,提高系統可靠性;不僅能夠解決目前IEC61850標準智能變電站的應用需求,同時還能夠兼容之前常規變電站的數據的采集、處理以及轉發。
目前的變電站遠動系統的數據采集與處理的辦法,數據采集及處理的基礎是規約,因此在采集數據時按照規約文本逐條匹配來解析數據,這對于常規變電站是可行的,但是對于智能變電站,如果按照常規的解析方式則需要逐條索引路徑進行匹配,十分消耗系統資源。因遠動系統數據具有數據量大、數據類型多的特點,因此數據采集存儲和處理方式也成為制約遠動系統性能的因素之一。常規的遠動數據存儲和處理方式是按照采集信息的類型直接進行存儲,該方式雖然存儲簡單,但是遠動系統在使用數據時需對數據進行二次處理或者判斷,如單點遙信用0、1表示,而0在系統中既表示分位同時又表示沒有數據,不利于數據特性的區分。
技術實現要素:
針對現存的變電站遠動系統的數據采集及處理方法存在的問題,本發明提出了一種快速解析61850數據、常規規約數據,以及對遙信、遙測數據統一類型存儲和處理的高效可靠的數據采集與處理方法。
為解決上述問題,本發明所采取的技術方案為:一種變電站遠動系統的數據采集與處理方法,包括以下步驟:
步驟1、變電站遠動系統的數據,包括基于IEC61850規約標準的數據和常規規約數據,在采集處理時,按照Inclusion和索引路徑相結合的方式解析報告,即:首先按照Inclusion方式解析數據,如無法正常解析再采用索引路徑方式解析數據。
該處理方式解決了Inclusion方式無法解析特殊報告的缺陷,同時降低了全部按照索引路徑方式解析時對系統資源的大量消耗的問題。
步驟2、變電站遠動系統的遙測數據解析完成后均存儲為浮點格式,以后根據需要可轉化為不同類型的數據進行傳輸。
該處理方式實現了數據存儲方式的統一,當需要使用時再按照按需轉換的原則對數據進行相應的處理;
步驟3、變電站遠動系統的遙信數據解析完成后均存儲為雙點遙信,即:將單點遙信的0、1分別轉換為二進制的01和10,雙點遙信數據正常存儲,今后如需單點遙信再進行逆轉換。
該處理方式解決了按單點遙信存儲時,數據0的歧義問題,有利于數據特性的區分。
步驟4、變電站遠動系統的數據采集存儲完成后,由單獨的功能模塊維護,根據需要對數據的格式進行轉換和轉發,并根據需要修改部分品質后上送。該功能模塊包括以下三個子模塊:
遙測數據管理模塊:當變電站遠動系統需要對遙測數據進行轉發時,該子模塊對遙測類型進行判斷,如果需要浮點遙測,則直接轉發;如果需要其他類型的遙測,則對其進行相應的格式轉換;
遙信數據管理模塊:當變電站遠動系統需要對遙信數據進行轉發時,該子模塊對遙信模式進行判斷,如果需要雙點遙信,則直接轉發,如果需要單點遙信,則在轉發時對其進行逆轉換,即01轉換為0、10轉換為1;
品質管理模塊:當變電站遠動系統需要帶品質上送時,除了采集來的品質,該子模塊根據數據的有效性及通信狀態對需要維護的品質進行部分修改,最終上送維護后的品質。
該功能模塊的處理方式,減小了各個模塊間的耦合,品質管理模塊實現了遠動機系統對數據品質的維護。
所述步驟1中在解析數據的同時將數據對應的品質和時間一并解析出來;所述步驟2和步驟3中在數據存儲的同時,將該數據的品質及時間一并存儲。
有益效果:本發明所采用的數據采集與處理方法,既保證了遙測數據轉發時的精度、又統一了數據在系統中的存儲格式;解決了遙信數據單雙點共存時的混亂問題;數據品質由單獨模塊維護,在數據轉發時實現了按需處理的原則,提高了系統的兼容性及遠動性能。
附圖說明
附圖1是本發明的功能模塊示意圖
具體實施方式:
下面結合附圖,具體說明實現本發明的步驟。
如圖1所示,遠動系統采集IEC61850規約數據、常規規約數據報告后,首先進行上述數據報告的處理工作,即:先按照Inclusion方式解析數據,如無法正常解析再采用索引路徑方式解析數據;
然后將處理完的數據存儲為統一的格式,即遙測數據解析完成后均存儲為浮點格式、遙信數據解析完成后均存儲為雙點遙信,將單點遙信數據的0轉換為01、1轉換為10,雙點遙信數據正常存儲。
最后,包含遙測數據管理模塊、遙信數據管理模塊、品質管理模塊三個子模塊的功能模塊對存儲的數據進行維護,根據需要對數據的格式進行轉換和轉發,并根據需要修改部分品質后上送。
下面是一個實施例的詳細步驟:
1.設計遙信、遙測處理函數,該函數包括標準的數據集報告和非標準的數據集報告處理方式,其中對于標準數據集報告使用inclusion方式,非標準數據集報告使用按索引路徑方式。
實例1:
void DealYXByInclusion(CIED*pIED,CIEDLink*pLink,CRCB*pRCB,PRIM_DATA*prims,const int leaf_cnt,ST_UINT8*Inclusion,const int item_cnt,ST_UINT8*EntryID)
該函數實現按照Inclusion方式解析報告,函數將61850裝置的IED模型信息、裝置連接、報告、數據參數、Inclusion等參數傳入函數,根據上送報告在Inclusion中查找bit位為1的位置,則其位置表示該數據集中第幾個信號有變位信息,可將該位置信息設值到61850裝置的IED模型上。
實例2:
void DealYXByIndexPath(CIED*pIED,CIEDLink*pLink,CRCB*pRCB,PRIM_DATA*prims,const int leaf_cnt,ST_UINT8*/*Inclusion*/,const int/*item_cnt*/,ST_UINT8*EntryID)
該函數實現按照索引路徑方式解析報告,函數將61850裝置的IED模型信息、裝置連接、報告、數據參數等傳入函數,根據上送報告中的索引路徑與裝置模型中的索引路徑一一匹配,找出對應的遙信點可將該位置信息設值到61850裝置的IED模型上。
2.設計單雙點轉換函數及其逆函數,實現雙點遙信和單點遙信之間的轉換。
實例3:
void CDPI::set_spi(Juint8spi)
{
m_state=(spi&SPI_MASK)?DPI_On:DPI_Off;
}
Juint8 CDPI::to_spi()const
{
return(DPI_On==m_state)?1:0;
該函數實現雙點遙信和單點遙信之間的轉換。
3.設計數據品質維護模塊,該模塊用于維護采集處理的遙信、遙測數據的品質。
實例4:
void CDataQDSManager::OnMaintDataQds(void)
void MaintQds(Juint32 nOverTime)
數據品質維護通過數據品質管理者類CDataQDSManager對數據品質進行維護,其中OnMaintDataQds(void)函數用于維護遙信和遙測數據品質,其中包括多個子函數,如其中子函數MaintQds(Juint32 nOverTime),用于維護數據是否為舊數據,當數據在規定時間內不刷新時,該函數實現對數據品質位的維護。
4.遠動系統實時采集變電站內數據,當有變化或者周期上送的遙信、遙測數據上送時,系統會根據對下通信的規約類型選擇解析數據的方式,如果對下通信為IEC61850通信規約,則系統首先選擇按照inclusion方式解析報文,即查找報告中Inclusion的BIT位為1的點,及其在該BITSTRING中的位置,從而確定對應的數據點;如果所采集的裝置模型特殊,如Inclusion中的一個BIT位可能包含多個值,則需要采用索引路徑的解析方式;在解析數據的同時,通過匹配品質(q)和時間(t)的索引路徑一并將其解析出來。
5.數據解析完成后,遙測數據全部以浮點數存儲;單點遙信按照規則轉換為雙點遙信,即:單點遙信的0、1分別轉換為二進制的01和10。而雙點遙信不做處理;存儲值的同時,將該點的品質及時間一并存儲。
6.數據轉發時,按照按需處理的原則,如果需要浮點遙測,則直接轉發;如果需要其他類型的遙測,對其進行相應的格式轉換;
如果需要雙點遙信,則直接轉發,如果需要單點遙信,則在轉發時對其進行逆轉換,即01轉換為0、10轉換為1;
因轉發數據的品質不僅需要轉發裝置采集的品質,而且需要增加遠動系統自己判斷處理的品質,品質維護模塊就可以實現該功能。