基于ARM9和GPRS的實時電力負控管理系統的設計
在main()函數中還有以下幾個主要的子函數:
gprs_com_task():GPRS通信任務主要功能是接收來自主站的信息,直接從Nand FLASH中讀出數據上發給主站,主站接收完畢后掛機結束通信。
gather_meter_realtime():實時采集任務主要完成和電能表的通信工作。根據自定義規約判斷主站想要什么數據,然后將該數據TCP打包后發回到通信任務,通信任務就會以相應的形式(數據)上傳給主站。
gather_meter_time():定時采集任務指每天定時主動讀取電能表,并將讀到的數據存放在NandFLASH中。這樣當主站下發命令索要數據時,終端就不必再去讀表,可以直接將存儲的數據上發給主站。
alarm_task():報警任務每隔一定時間程序就去讀三相電壓,并將讀到的實時值與存放在Nancl FLASH中規定的電壓上限值作比較,當實時電壓值超過上限值或者低于下限值時,負控管理終端軟件就對電網狀態字置位。當故障消除,電壓恢復正常時,終端軟件再向電網狀態字置位。
led_task():指示燈任務用于判斷程序和通信模塊是否處于正常工作狀態。負控管理終端有2個運行指示燈,一個用于指示程序的正常運行,1 s閃爍1次;另一個用于指示通信模塊的工作狀態,GPRS模塊沒有注冊到網絡時,該指示燈1 s閃爍1次,注冊上網絡后,3s閃爍1次。
2.2.2 主站管理軟件的設計
本系統的主站管理軟件是用面向對象的編程工具VB開發完成的。通過使用面向對象的數據模型來構建主站,將負控管理終端模型化為一系列邏輯沒備組成,每個邏輯設備是該物理設備的一個功能子集,各種功能則用對象模型來標準化。主站設置2個邏輯設備:管理邏輯設備與數據邏輯設備。管理邏輯設備是主站中必需的,管理邏輯設備中存放一些與全局相關的及負控管理終端參數設置數據對象;數據邏輯設備用來存儲和管理負控管理終端下屬的電能表數據。
主站的交互界面采用模塊化沒計,主窗體包括應用連接、數據曲線、執行動作、電表信息、數據類對象四大模塊,主站的功能框圖如圖3所示。
3 實驗結果
下面從負控管理終端的角度說明主站讀取周期凍結總加組曲線的數據的通信流程:建立連接→讀取周期凍結總加組曲線的數據→斷開連接通信流程如下所示。
(1)建立物理層和建立鏈路層連接;
(2)建立應用層連接。應用連接請求由主站發起,負控管理終端響應,應用連接的建立過程稱為“協商”過程,是為數據通信約定一些配置參數;
(3)進行數據通信。應用連接建立后,就可以進行數據通信了;
(4)數據通信結束,釋放數據鏈路,解除物理連接。
tcp/ip相關文章:tcp/ip是什么
電能表相關文章:電能表原理
評論