基于QT的能耗管理系統(tǒng)終端設(shè)計(jì)
摘要:為了保證能耗數(shù)據(jù)可進(jìn)行計(jì)算機(jī)或人工識(shí)別和處理,保證數(shù)據(jù)得到有效的管理,支持高效的查詢以及能耗的實(shí)時(shí)監(jiān)控,實(shí)現(xiàn)數(shù)據(jù)組織、存儲(chǔ)、交換以及在物聯(lián)網(wǎng)系統(tǒng)下的數(shù)據(jù)共享,按照國家規(guī)范的標(biāo)準(zhǔn),基于QT平臺(tái)設(shè)計(jì)出一套能夠?qū)Υ笮徒ㄖ椭悄芗揖酉到y(tǒng)進(jìn)行能耗管理的智能終端系統(tǒng)。
關(guān)鍵詞:能耗管理;QT;實(shí)時(shí)監(jiān)控;物聯(lián)網(wǎng)
引言
目前,我國對(duì)國家機(jī)關(guān)企事業(yè)單位大型公共建筑的用電情況采取多表制管理。不同的大功率電器接入電表不同。由于表類繁多,如空調(diào)、動(dòng)力等,以及其他一些用途功能用電,不同電表之間的傳輸協(xié)議的不同,使得系統(tǒng)在能耗的管理上難度加大。大型公共建筑在電能節(jié)省和管理方面的需求日益增強(qiáng),通過計(jì)劃性的用電和節(jié)電可以更加合理地用電并且能夠節(jié)約成本。此外,在智能家居系統(tǒng)的飛速發(fā)展中,能耗也成了一個(gè)重要的問題,在人們追求簡(jiǎn)潔方便的生活同時(shí),降低能耗也成為了一個(gè)急待解決的問題。
針對(duì)這種情況,本文設(shè)計(jì)了針對(duì)大型建筑和智能家居的能耗管理系統(tǒng),主要是對(duì)多個(gè)電能表進(jìn)行數(shù)據(jù)采集和管理。設(shè)計(jì)了一套完整、安全、可靠的采集系統(tǒng),能夠?qū)崿F(xiàn)對(duì)能耗數(shù)據(jù)進(jìn)行統(tǒng)一的采集、處理、上傳及分析等功能。在物聯(lián)網(wǎng)發(fā)展的時(shí)代,對(duì)能耗的管理發(fā)展成為物聯(lián)網(wǎng)中一個(gè)關(guān)鍵的部分。對(duì)大型建筑和智能家居系統(tǒng)來說,能耗管理的入網(wǎng)使得用戶能夠在任何地方都檢測(cè)到自己的用電情況,并且能夠進(jìn)行分析、處理,實(shí)現(xiàn)能耗管理和維護(hù)。
本文提出了一種能耗管理系統(tǒng)方案,結(jié)合嵌入式技術(shù)、網(wǎng)絡(luò)通信和加密技術(shù),通過分析終端或服務(wù)器端的數(shù)據(jù),可以實(shí)現(xiàn)大型建筑和智能家居的用電安全化、合理化以及高效化。這種能耗統(tǒng)一化的管理模式使得用戶能夠有效地進(jìn)行用電規(guī)劃管理,對(duì)大型建筑和智能家居系統(tǒng)的節(jié)能有著重要的意義。
1 系統(tǒng)設(shè)計(jì)方案
能耗管理系統(tǒng)主要設(shè)計(jì)思路是設(shè)計(jì)一套集能耗采集、能耗分析、能耗管理和數(shù)據(jù)上傳為一體的終端平臺(tái)。在此設(shè)計(jì)中,能耗管理系統(tǒng)主要包括3部分:能耗終端模塊、子節(jié)點(diǎn)服務(wù)器和終端服務(wù)器。
①能耗終端模塊:根據(jù)系統(tǒng)的需求,對(duì)能耗管理表的數(shù)據(jù)進(jìn)行采集、分析,并進(jìn)行網(wǎng)絡(luò)資源的上傳,主要是由ARM處理器完成的。
②子節(jié)點(diǎn)服務(wù)器:接收一個(gè)區(qū)域(例如酒店)公共建筑等的能耗終端上傳上來的能耗數(shù)據(jù),可對(duì)本區(qū)域能耗進(jìn)行統(tǒng)一管理,進(jìn)行能耗數(shù)據(jù)的查詢、統(tǒng)計(jì)、報(bào)表、分析和預(yù)警。
③終端服務(wù)器:區(qū)域管理的資源最終上傳至終端服務(wù)器,終端服務(wù)器是由國家相關(guān)部門所管理的,國家相關(guān)部門可以根據(jù)這些能耗數(shù)據(jù)進(jìn)行一些相關(guān)調(diào)控,制訂應(yīng)急措施。
能耗管理系統(tǒng)的總體設(shè)計(jì)框架如圖1所示。
三表采集器可以對(duì)用戶的水電氣三表進(jìn)行數(shù)據(jù)采集。接入三表采集器,它可以采用有線或者無線的方式對(duì)各家各戶的三表進(jìn)行數(shù)據(jù)采集,基本上可以實(shí)現(xiàn)一個(gè)采集器對(duì)16戶的水電氣三表進(jìn)行采集管理,然后通過以太網(wǎng)發(fā)送至子節(jié)點(diǎn)終端服務(wù)器進(jìn)行數(shù)據(jù)存儲(chǔ)。子節(jié)點(diǎn)服務(wù)器將數(shù)據(jù)繼續(xù)發(fā)送給水電氣部門的終端服務(wù)器進(jìn)行統(tǒng)一管理,用戶也可以通過智能手機(jī)或者PC機(jī)對(duì)本地用戶水電氣三表進(jìn)行查詢、管理或者完成繳費(fèi)等業(yè)務(wù)。
2 終端硬件組成
2.1 核心處理器
能耗管理系統(tǒng)核心處理器采用S3C6410,它是一種ARM11處理器,工作頻率高達(dá)533 MHz,能夠輕松解決一些低成本、低功耗的復(fù)雜系統(tǒng)設(shè)計(jì)問題。有著豐富的外圍資源,可以實(shí)現(xiàn)網(wǎng)絡(luò)、串口通信、液晶顯示等多項(xiàng)功能。其ARM核心處理器上能夠移植Linux操作系統(tǒng),Linux有著豐富的資源、完善的內(nèi)核系統(tǒng)、強(qiáng)大的驅(qū)動(dòng)模塊、能夠移植硬件系統(tǒng)模塊。
能耗管理系統(tǒng)的設(shè)計(jì),需要可靠的圖形界面開發(fā)、系統(tǒng)網(wǎng)絡(luò)協(xié)議的集成,以及底層的串口驅(qū)動(dòng)開發(fā)。在這樣一種工程應(yīng)用性軟件開發(fā)的情況下,采用帶有Linux操作系統(tǒng)的ARM核心處理器是比較容易快捷的一種方式,相對(duì)于FPGA、DSP這類數(shù)字信號(hào)相關(guān)的開發(fā),ARM核心處理器還是有其自身的優(yōu)勢(shì)。
2.2 外圍模塊
考慮到系統(tǒng)采集、傳輸、顯示等功能,外圍搭建了網(wǎng)絡(luò)接口、串口、LCD液晶顯示接口,以及基本的晶振、調(diào)試接口。能耗管理系統(tǒng)的硬件框圖如圖2所示。
能耗采集采用了核心處理器的串口資源,目前的水電氣三表集成紅外、RS485總線等接口。其中紅外對(duì)方向性要求很高,在多塊電表的采集中這種方案難以實(shí)現(xiàn),RS485總線是一種串行通信總線,其資源配置較容易,采用MAX485將串口信號(hào)轉(zhuǎn)換為485信號(hào)即可,MAX485的遠(yuǎn)距離傳輸,可接入多個(gè)節(jié)點(diǎn),解析方便,在能耗管理系統(tǒng)中,優(yōu)勢(shì)十分突出。對(duì)數(shù)據(jù)資源的采集完成后,進(jìn)行統(tǒng)一的數(shù)據(jù)上傳存儲(chǔ)。
3 終端軟件設(shè)計(jì)
能耗管理系統(tǒng)軟件以Linux作為基礎(chǔ),采用QT作為圖形界面應(yīng)用程序開發(fā)框架,Linux操作系統(tǒng)完善的驅(qū)動(dòng)程序以及高效的內(nèi)核管理系統(tǒng),使得工程應(yīng)用程序在Linux系統(tǒng)上的開發(fā)顯得相對(duì)容易。QT是Linux操作系統(tǒng)上的一種GUI軟件,它能夠很好地支持圖形界面程序的開發(fā),使得ARM在圖像應(yīng)用中顯得更加容易。為了實(shí)現(xiàn)在ARM上的Linux操作系統(tǒng)的移植,需要加入相應(yīng)的編譯器arm-linux-gcc,其安裝過程如圖3所示。
4 終端功能
4.1 系統(tǒng)功能簡(jiǎn)介
能耗管理系統(tǒng)主要有4個(gè)主要功能。
(1)能耗數(shù)據(jù)的采集
能耗數(shù)據(jù)采集采用無線422射頻模塊,其遠(yuǎn)距離傳輸及穿透性強(qiáng)的特點(diǎn),可以保證系統(tǒng)數(shù)據(jù)的無丟失傳輸。能耗數(shù)據(jù)采集傳輸協(xié)議采用電能表通信協(xié)議規(guī)范,如DLT645—1997、DLT645—2007。在系統(tǒng)采集的數(shù)據(jù)中需要對(duì)采集器的屬性定義進(jìn)行統(tǒng)一規(guī)范,如采集器編號(hào)、采集器的電表比率、采集器的類型編號(hào)、采集器的傳輸協(xié)議規(guī)范等。
(2)能耗數(shù)據(jù)的處理分析
能耗數(shù)據(jù)處理分析主要分為兩個(gè)部分:數(shù)據(jù)分析判斷和數(shù)據(jù)處理。數(shù)據(jù)分析判斷主要是對(duì)發(fā)送數(shù)據(jù)的地址位、校驗(yàn)位進(jìn)行判斷。對(duì)地址位判斷主要是對(duì)發(fā)送數(shù)據(jù)的地址及接收到的數(shù)據(jù)位地址進(jìn)行比對(duì),其地址位包含6位二進(jìn)制數(shù)據(jù)。對(duì)校驗(yàn)位判斷,DLT645—1997是對(duì)其前16位數(shù)據(jù)進(jìn)行相加然后取其16進(jìn)制的后兩位與17位數(shù)據(jù)進(jìn)行比對(duì);DLT645—1997是對(duì)其前18位數(shù)據(jù)進(jìn)行相加然后取其16進(jìn)制的后兩位與19位數(shù)據(jù)進(jìn)行比對(duì)。
(3)能耗數(shù)據(jù)的組合運(yùn)算
能耗數(shù)據(jù)的組合運(yùn)算主要是針對(duì)不同能耗器采集來的電能數(shù)據(jù)根據(jù)其功能的不同進(jìn)行能耗的數(shù)據(jù)運(yùn)算組合。其中包括數(shù)據(jù)的相加、相減。在能耗管理系統(tǒng)中對(duì)以下5種能耗進(jìn)行分類管理:總電能、照明、空調(diào)、動(dòng)力和特殊5類用電。
(4)能耗數(shù)據(jù)的網(wǎng)絡(luò)上傳
對(duì)于能耗數(shù)據(jù)的網(wǎng)絡(luò)上傳功能主要采用XML技術(shù),將采集數(shù)據(jù)的參數(shù)進(jìn)行放置匹配。其中包含了樓宇、電表號(hào)、電表類型、電表比率、電表數(shù)據(jù)。在網(wǎng)絡(luò)上傳的功能中加入了斷電續(xù)傳技術(shù)及安全加密技術(shù),保證了數(shù)據(jù)的安全傳輸。
4.2 數(shù)據(jù)XML存儲(chǔ)功能
數(shù)據(jù)存儲(chǔ)采用了XML進(jìn)行存儲(chǔ),XML是一種標(biāo)記的語言,能夠規(guī)范地存儲(chǔ)簡(jiǎn)單的信息。智能電表數(shù)據(jù)存儲(chǔ)的格式如圖4所示。
其中,存儲(chǔ)的類型主要分為3類:Devices設(shè)備類、Consists組合類、Password密碼類,如表1所列。
在ARM系統(tǒng)中XML的移植采用了TinyXML。它是一款基于DOM模型的XML解析器,在系統(tǒng)程序中主要負(fù)責(zé)XML的存儲(chǔ)和數(shù)據(jù)提取。在系統(tǒng)中使用了TinyXML文件,需要對(duì)其文件進(jìn)行解壓、動(dòng)態(tài)庫編譯,生成安裝,并移植到ARM平臺(tái)。在QT平臺(tái)的工程文件中,加入TinyXML,然后調(diào)用相應(yīng)的頭文件即可實(shí)現(xiàn)XML的統(tǒng)一管理規(guī)劃。
4.3 斷電續(xù)傳功能
4.3.1 斷點(diǎn)續(xù)傳流程
為了實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)姆€(wěn)定性,在服務(wù)器出現(xiàn)故障的情況下,不影響終端的正常數(shù)據(jù)傳輸功能,采用了斷電續(xù)傳的一種保護(hù)機(jī)制,對(duì)系統(tǒng)的穩(wěn)定性以及數(shù)據(jù)的完整性提供可靠的保證。
當(dāng)服務(wù)器端發(fā)生異常情況導(dǎo)致網(wǎng)絡(luò)不通時(shí),為了防止數(shù)據(jù)的丟失,將發(fā)送失敗的網(wǎng)絡(luò)數(shù)據(jù)暫時(shí)存儲(chǔ)至ARM系統(tǒng)的臨時(shí)文件夾mnt下,在網(wǎng)絡(luò)恢復(fù)后即可實(shí)現(xiàn)存儲(chǔ)文件的繼續(xù)上傳。斷電續(xù)傳的具體流程圖如圖5所示。
4.3.2 文件遍歷
針對(duì)多個(gè)服務(wù)器下的數(shù)據(jù)傳輸,臨時(shí)存儲(chǔ)的文件需要分類存儲(chǔ),發(fā)向不同服務(wù)器的文件采用IP名稱進(jìn)行臨時(shí)存儲(chǔ),采用文件遍歷的方式進(jìn)行文件傳輸,根據(jù)名稱提取出相應(yīng)的IP號(hào)以及發(fā)送的文件名稱。
由于文件遍歷的隨機(jī)性可能導(dǎo)致臨時(shí)的文件排序產(chǎn)生錯(cuò)誤,使得發(fā)送的數(shù)據(jù)產(chǎn)生一些混亂,因此斷電存儲(chǔ)的數(shù)據(jù),必須按照一定的順序進(jìn)行存儲(chǔ)。系統(tǒng)設(shè)計(jì)中采用了以時(shí)間命名的方式進(jìn)行對(duì)應(yīng)存儲(chǔ),因?yàn)闀r(shí)間不可能存在重名,而且可以按照一定的序列方式進(jìn)行排列,所以發(fā)送的數(shù)據(jù)可以按照時(shí)間順序進(jìn)行統(tǒng)一發(fā)送,使得服務(wù)器端接收的數(shù)據(jù)不會(huì)發(fā)生錯(cuò)誤。在調(diào)用函數(shù)時(shí)如果采用opendir的模式則會(huì)產(chǎn)生序列的混亂,這里采用scandir的模式,并且調(diào)用alphasort進(jìn)行順序排列。
5 系統(tǒng)驗(yàn)證及應(yīng)用
系統(tǒng)選用的采集器是東軟的DDZY-943-Z單項(xiàng)費(fèi)控智能電能表,如圖6所示。其表讀數(shù)可以從圖中讀出為21.57°。
如圖7所示,在能耗管理終端平臺(tái)上可以看見地址為111111111111的能耗表數(shù)據(jù)為21.57°,分配到照明和空調(diào)處,總能耗為兩個(gè)電表相加讀數(shù)。
對(duì)于終端服務(wù)器,可以根據(jù)我們的系統(tǒng)軟件得到采集的時(shí)間、采集的電表號(hào)及電表的讀數(shù)。終端服務(wù)器數(shù)據(jù)接收如圖8所示。
此設(shè)計(jì)已經(jīng)在重慶郵電大學(xué)智能家居組實(shí)驗(yàn)室開始得到應(yīng)用,實(shí)現(xiàn)了智能家居能耗的信息化管理。一方面,該設(shè)計(jì)實(shí)現(xiàn)家庭內(nèi)部各電器用電信息的查詢、分析和統(tǒng)計(jì)管理;另一方面,能耗管理系統(tǒng)給家庭用電管理提供了更高的效率和質(zhì)量保障。
結(jié)語
該能耗管理系統(tǒng)應(yīng)用了嵌入式Linux技術(shù)、485總線技術(shù)、數(shù)據(jù)XML存儲(chǔ)技術(shù)、數(shù)據(jù)運(yùn)算和解析技術(shù)等。此系統(tǒng)有效解決了大型建筑能耗的管理問題,并且促進(jìn)了智能家居節(jié)能化發(fā)展。
利用這項(xiàng)設(shè)計(jì)可以有效地實(shí)現(xiàn)能耗的遠(yuǎn)程采集、能耗系統(tǒng)的分類及遠(yuǎn)程的數(shù)據(jù)上傳功能??梢詭椭恍┐笮徒ㄖ档湍芎?,不僅促進(jìn)了企業(yè)用電的節(jié)能化發(fā)展,對(duì)智能家居的發(fā)展也有一定的促進(jìn)意義。