一種可編碼的智能設備協議處理方法
2023-05-23 12:33:41
專利名稱:一種可編碼的智能設備協議處理方法
技術領域:
本發明涉及智能設備協議解析技術領域,特別涉及一種可編碼的智能設備協議處
理方法。
背景技術:
在工業控制領域中,各種管理系統通常都會接入一些開關電源、電錶、智能空調、發電機組、UPS、節能等智能設備來採集數據,而採集到的數據往往都要經過一些解析及處理才能被識別,分析數據並做相應的控制;進而呈現或者保存在資料庫中,並且不同的智能設備採用的通訊協議和對應的參數信息也不同。解決該問題一般常用的方法是根據不同的 智能設備和不同協議編寫不同的解析模塊,即每一類不同的智能設備都與一段協議解析程序相對應;這種辦法實現簡單,但缺乏靈活性,例如在基站的動力環境監控系統中,一個系統中可能會接入幾十種甚至上百種協議類型的智能設備,這樣該系統就要事先開發這上百種的協議解析,原始碼也會有上百套,如果日後增加或者修改一個功能,就要修改上百套的代碼,工作量比較大,任務也比較繁重。
發明內容
本發明要解決的問題是克服現有技術的不足而提供一種可編碼的智能設備協議處理方法,該方法針對不同的智能設備只需編輯與之對應的解析配置文件即可,靈活性大,同時減輕了日後的維護上百套的代碼的工作量。為實現上述目的,本發明的技術方案為一種可編碼的智能設備協議處理方法,包括如下步驟
步驟I:讀取對應的智能設備的協議解析編碼配置文件,存放於程序的內存解析結構體中;
步驟2 :循環下發採集命令,等待接受返回數據包;如果超時還未接受到,就循環下發另外一條採集命令跳轉到步驟2 ;如果有數據接收進入步驟3 ;
步驟3 :單個參數解析根據可編碼的協議解析編碼配置文件的逐個參數信息對接收到的數據包進行逐個解析,如果遇到是一個循環解析入口,進入步驟4 ;
步驟4 :進入遞歸循環解析函數;該函數根據可編碼的解析規則解析採集到的返回數據包;該函數入口是返回的數據包的起始地址,首先根據讀取到協議解析編碼配置文件的參數信息,對數據包進行取數據解析,如果遇到一個循環解析入口進入步驟4 ;否則繼續解析;
步驟5 :根據可編碼的解析規則,確定了該編碼解析信息在數據包的絕對地址、及解析長度、數據轉化規則、對應編碼等解析規則,由此解析出該項目的具體數據信息;根據對應的規則判斷是否為下一循環解析的入口,如果為循環解析入口跳轉到步驟4;如果是本次循環的最後一個解析數據,則保存數據、上送監控中心或後續處理操作,退出本次循環;步驟6 :判斷是否為本次協議包的最後一個解析數據,如果不是,在此進入步驟4,進入循環解析,否則退出遞歸循環解析函數,進入步驟2。上述可編碼的智能設備協議處理方法中,所述循環解析入口為協議中有η個參數或者用戶自定義數為m。與現有技術相比,本發明具有如下有益效果
本發明可編碼的智能設備協議處理方法中,各種類型的智能設備的代碼只有一套,而將各種類型的智能設備的協議解析抽象成一種可編碼的智能設備處理模式,這樣針對不同的智能設備只需編輯與之對應的解析配置文件即可,解析代碼是兼容處理這種抽象出來的解析模式,如以後需要增加個別參數的解析或者控制,只需編輯對應的配置文件就可以了, 採用本發明方法除了不僅減輕了日後的維護上百套的代碼,而且用戶可以得到最大的靈活性。
圖I為本發明處理方法實現原理 圖2為本發明處理方法流程圖。
具體實施例方式以下結合實施例及附圖對本發明進行詳細的描述。本發明是通過一種可編碼的智能設備協議處理模式,來提高管理系統的適應性和擴展性,在部署管理系統的過程中,只需要開發一個固定的智能設備協議解析模板(應用程式),然後附加上需要解析的智能設備的配置文件;可以根據用戶需要接入多種協議類型的智能設備,只需根據該智能設備的通信協議配置對應的解析配置文件即可,和固定的解析模板結合即可完成該智能設備的解析,不需要重新開發新的應用程式解析模塊(程式語言C,C++),方便簡單,也節約了開發和維護成本,圖I為實現原理圖。如圖I所示,首先固定的智能設備協議解析模板(應用程式)讀取智能設備對應的協議解析配置文件,將涉及到的各種採集數據包的解析方法及讀取智能設備的數據包組包方式保存在程序緩存中;然後固定的智能設備協議解析模板(應用程式)根據開始讀取的可編碼的智能設備協議配置規則下發採集命令,固定的智能設備協議解析模板(應用程式)將採集到的數據包送給固定的智能設備協議解析模板(應用程式)的內部協議處理函數,該函數根據對應的可編碼的智能設備協議處理規則解析數據協議包,最後將解析出的數據存儲、上送中心或者後續處理;後續處理是指固定的智能設備協議解析模板(應用程式)將解析出來的數據送給基站監控設備的其他模塊,進行簡單的數據分析
例如拿開關電源的相電壓AB/A、相電壓BC/B、相電壓CA/C三個參數信息,智能設備協議解析模板將三個參數解析出來後送給其他模塊(基站監控設備的其他模塊-綜合管理模塊)如果發現相電壓AB/A低於120,就會產生一個相電壓AB/A低壓告警給監控中心;或者發現三者都小於120就會上送一個停電的告警信息給中心;當然這些規則是可配置的,是其他模塊(基站監控設備的其他模塊-綜合管理模塊)的功能。智能設備解析解析配置文件就是各個智能設備的協議解析編碼配置文件;包含多條配置信息;智能設備每個參數信息為一條配置信息,包含該參數在協議包裡面的絕對地址、佔用字節數、解析方式(浮點值還是整型字節;是低字節在前還是高字節在前)、循環標誌(是否是一個循環解析的標誌)、正常值區間(計算出採集值正常範圍,例如採集值不在該區間,就會將該參數信息的告警狀態設置為告警同採集值一起上送給中心)、變化閾值(採集值變化範圍超過該閾值才上送給中心)等信息;
圖2,處理流程包括如下步驟
步驟I :讀取對應的智能設備的協議解析編碼配置文件,存放於程序的內存解析結構體中; 步驟2 :循環下發採集命令(採集命令也是通過可編碼的配置文件配置的,每種採集命令都有自己的下發周期),等待接受返回數據包;如果超時還未接受到,就循環下發另外一條採集命令跳轉到步驟2 ;如果有數據接收進入步驟3 ;
步驟3 :單個參數解析根據可編碼的協議解析編碼配置文件的逐個參數信息對接收到的數據包進行逐個解析,如果遇到是一個循環解析入口(例如協議中有η個參數或者用戶自定義數為m ),進入步驟4;
步驟4 :進入遞歸循環解析函數;該函數根據可編碼的解析規則解析採集到的返回數據包;該函數入口是返回的數據包的起始地址,首先根據讀取到協議解析編碼配置文件的參數信息,對數據包進行取數據解析,如果遇到一個循環解析入口進入步驟4 ;否則繼續解析;
步驟5 :根據可編碼的解析規則,確定了該編碼解析信息在數據包的絕對地址、及解析長度、數據轉化規則、對應編碼等解析規則,由此解析出該項目的具體數據信息;根據對應的規則判斷是否為下一循環解析的入口,如果為循環解析入口跳轉到步驟4;如果是本次循環的最後一個解析數據,則保存數據、上送監控中心或後續處理操作,退出本次循環;
步驟6 :判斷是否為本次協議包的最後一個解析數據,如果不是,在此進入步驟4,進入循環解析,否則退出遞歸循環解析函數,進入步驟2。
權利要求
1.一種可編碼的智能設備協議處理方法,其特徵在於,包括如下步驟 步驟I:讀取對應的智能設備的協議解析編碼配置文件,存放於程序的內存解析結構體中; 步驟2 :循環下發採集命令,等待接受返回數據包;如果超時還未接受到,就循環下發另外一條採集命令跳轉到步驟2 ;如果有數據接收進入步驟3 ; 步驟3 :單個參數解析根據可編碼的協議解析編碼配置文件的逐個參數信息對接收到的數據包進行逐個解析,如果遇到是一個循環解析入口,進入步驟4 ; 步驟4 :進入遞歸循環解析函數;該函數根據可編碼的解析規則解析採集到的返回數據包;該函數入口是返回的數據包的起始地址,首先根據讀取到協議解析編碼配置文件的參數信息,對數據包進行取數據解析,如果遇到一個循環解析入口進入步驟4 ;否則繼續解析; 步驟5 :根據可編碼的解析規則,確定了該編碼解析信息在數據包的絕對地址、及解析長度、數據轉化規則、對應編碼等解析規則,由此解析出該項目的具體數據信息;根據對應的規則判斷是否為下一循環解析的入口,如果為循環解析入口跳轉到步驟4;如果是本次循環的最後一個解析數據,則保存數據、上送監控中心或後續處理操作,退出本次循環; 步驟6 :判斷是否為本次協議包的最後一個解析數據,如果不是,在此進入步驟4,進入循環解析,否則退出遞歸循環解析函數,進入步驟2。
2.根據權利要求I所述的可編碼的智能設備協議處理方法,其特徵在於所述循環解析入口為協議中有η個參數或者用戶自定義數為m。
全文摘要
本發明涉及智能設備協議解析技術領域,特別涉及一種可編碼的智能設備協議處理方法。首先讀取智能設備對應的協議解析配置文件,將涉及到的各種採集數據包的解析方法及讀取智能設備的數據包組包方式保存在程序緩存中;然後智能設備採集單元根據開始讀取的可編碼的智能設備協議配置規則下發採集命令,智能設備採集單元將採集到的數據包送給協議處理模塊,協議處理模塊根據對應的可編碼的智能設備協議處理規則解析數據協議包,最後將解析出的數據存儲、上送中心或者後續處理。本發明適用於工業控制領域,特別適合於基站的動力環境監控系統。
文檔編號H04L29/06GK102624685SQ201110379430
公開日2012年8月1日 申請日期2011年11月24日 優先權日2011年11月24日
發明者張永濤, 陳興海 申請人:廣東高新興通信股份有限公司