遠程抄表系統中集中器軟件的模塊化設計與實(shí)現
2.3 抄表任務(wù)流程
定時(shí)抄表是集中器的重要功能,通常有抄表日抄表,抄表月抄表,整點(diǎn)抄表;零點(diǎn)抄表等多種類(lèi)型。集中器首先啟動(dòng)抄表任務(wù)功能,然后不斷檢測當前時(shí)間是否符合設定的抄表時(shí)間,如果不符合則繼續下一輪的檢查;否則獲取到要抄讀的電表信息,然后向電表發(fā)送抄讀命令幀,收到回復后先驗證數據的正確性,如果數據正確則進(jìn)行相關(guān)的入庫等操作,否則重發(fā)抄讀命令(一般設為3次),當數據處理完成后,進(jìn)行下一輪循環(huán)。整個(gè)流程如圖3所示
2.4 軟件模塊設計
根據上節介紹的流程,在設計軟件的時(shí)候將整個(gè)系統分為如下幾個(gè)部分:
主控模塊 負責命令的接收,發(fā)送,邏輯判斷,數據流的控制等總體調度和控制工作。
上行協(xié)議解析模塊 負責對主站下發(fā)的命令進(jìn)行幀的校驗和解析,并將解析的結果保存以便主控的訪(fǎng)問(wèn)。
上行協(xié)議封裝模塊 負責對主站回復幀的封裝工作,具體數據由主控模塊提供。
集中器操作模塊 負責根據主站命令實(shí)現對集中器的操作工作。
下行協(xié)議封裝模塊 在需要命令轉換時(shí),該模塊負責將主站下發(fā)的命令翻譯成下行協(xié)議,在抄讀任務(wù)啟動(dòng)后負責封裝抄讀命令。
下行通信模塊 負責下行命令的發(fā)送和接收。
下行協(xié)議的解析模塊 負責將下行命令的回復幀進(jìn)行校驗和解析。
數據處理模塊 負責將必要的數據存入數據庫或從數據庫中讀取數據。
抄表模塊 負責定時(shí)啟動(dòng)抄表任務(wù)。
整體的系統模型如圖4所示。
評論