吳哲
(中國聯(lián)通福建分公司 福建省福州市 350000)
空調可用來控制機房的工作環(huán)境,由于機房里有很多服務器和磁盤陣列,發(fā)熱量大,而且沒有恒溫器,因此機房中的電腦溫度會迅速升高,可能會降低設備的效率甚至導致設備損壞[1]。在這種情況下,機房內(nèi)常常會安裝相應數(shù)量的空調進行溫度控制,傳統(tǒng)的溫度控制使用了單片機、AVR、PLC等低位單片機進行控制[2]。但是這些芯片只能實現(xiàn)開關控制、恒溫控制等簡單的控制。因此,隨著科技發(fā)展速度的增加,信息網(wǎng)絡與遠程控制的研究也越來越深入,控制器芯片的性能也在不斷提高,因此許多學者對嵌入式控制系統(tǒng)進行了研究[3]。在遠程控制空調時用戶可以利用互聯(lián)網(wǎng)或RS-485來完成與空調之間的交互,實現(xiàn)空調的遠程控制,但這種控制方式存在很多缺點[4]。在物聯(lián)網(wǎng)衍生并發(fā)展后,相關研究人員發(fā)現(xiàn)應用互聯(lián)網(wǎng)來設計遠程控制系統(tǒng)十分有效,基于此,本文設計了基于物聯(lián)網(wǎng)的空調遠程控制系統(tǒng),從而提升控制效率,實現(xiàn)節(jié)能減排。
在遠程控制系統(tǒng)調節(jié)時,需要利用處理器,處理器可以實現(xiàn)對控制信息和數(shù)字的處理,實現(xiàn)信號的有效發(fā)送。通用處理器具有通用化的通用架構和指令集,可以支持復雜的操作并輕松添加新開發(fā)的功能,因此,其無需針對特定應用優(yōu)化架構和指令集。通用處理器通常用于嵌入式微控制器[5]。嵌入式微控制器在單個芯片上實現(xiàn)了整個系統(tǒng)的控制功能。
數(shù)字信號處理器專注于數(shù)據(jù)運算,具有特別強的計算能力和計算速度,包括獨立的硬件乘法器,可以處理卷積和變換等復雜運算,用于路由器中的路由計算。當許多嵌入式特定部分(例如圖像處理)需要強大的計算能力時,系統(tǒng)會添加一個DSP 來執(zhí)行數(shù)據(jù)計算,因此在本文設計的系統(tǒng)中,也利用了處理器進行控制信息的轉換計算傳輸。
儲存器是整個遠程控制系統(tǒng)中進行指令儲存與傳送的中心,可以采集由控制器發(fā)送的信號,再將這些信號轉換成控制指令傳輸?shù)娇照{控制中心,儲存有很多種,包括可編程ROM和ROM,EEP ROM,本系統(tǒng)選用的是EEP ROM主要由于該儲存器儲存方便,可以通過軟件進行擦除和寫入。傳統(tǒng)的ROM逐漸被Flash 取代,進行儲存轉化主要有幾種方式,即NOR和NAND,NOR Flash和NAND Flash,隨著這幾種閃存的出現(xiàn),內(nèi)存成本大大降低。
RAM也可分為靜態(tài)RAM和動態(tài)RAM。DRAM 將數(shù)據(jù)存儲在控制中心,控制中心的數(shù)據(jù)庫儲存量有限,因此隨時可能出現(xiàn)泄露,因此在信息傳送到控制中心時,需要在附近設置即可DRAM 儲存器,儲存無法容納在數(shù)據(jù)庫中的數(shù)據(jù)。SRAM 是靜態(tài)的,只要它持續(xù)存在,其內(nèi)部的指數(shù)就會保持不變,在許多特定情況下,嵌入式系統(tǒng)中經(jīng)常使用某些特定類型的RAM。
在整個系統(tǒng)識別溫度閾值并調節(jié)空調出風回風時,使用了末端溫控器進行調節(jié),其可以采集各個房間的溫度數(shù)據(jù),根據(jù)被監(jiān)控對象的要求,按照控溫算法實現(xiàn)自動控溫。末端溫控器也會在上位機需要時將采集到的數(shù)據(jù)上傳到集線器。本系統(tǒng)在設置末端溫控器時,首先設計了該溫控器的控制開關,將溫控器的開關連接到IO口中,一旦發(fā)現(xiàn)此時溫度超過閾值則立刻啟動,而溫度低于閾值時則馬上關閉,實現(xiàn)上位指令或終端控制,保證被控制部分始終處于恒溫狀態(tài)。鍵盤顯示部分主要是用來顯示現(xiàn)場的某些控制參數(shù)的。采用液晶控制器HT1621,具有美觀、節(jié)能的優(yōu)點。終端的溫度或參數(shù)可在室內(nèi)手動設置,也可通過RS485總線設置,從而保證上位機數(shù)據(jù)的實時接收。
本文設計的控制程序是以Linux驅動為中心的控制程序,在驅動之前首先需要進行預處理,將不符合要求的信息轉化成符合要求的格式再進行傳輸,除此之外,由于系統(tǒng)需要在軟硬件之間交互,因此需要設計交互接口,方便軟硬件之間實現(xiàn)良好的溝通,對于一些簡單的設備,只需要實現(xiàn)一些簡單的控制功能,因此計算機系統(tǒng)不需要在這些設備中設置復雜的操作系統(tǒng),只需要單一的運行架構就可以實現(xiàn)計算機系統(tǒng)的運行。如果此時操作系統(tǒng)的設備復雜,則在控制驅動時除了需要完成設備的驅動,還需要將驅動程序集成到內(nèi)核中,為此,必須在所有設備的驅動程序中設計面向操作系統(tǒng)內(nèi)核的接口。該接口由操作系統(tǒng)對接,并規(guī)定無論具體設備如何,其結構都應該與設備的類別保持一致,驅動程序的流程如圖1所示。
圖1:程序驅動流程
系統(tǒng)設計的BLE協(xié)議僅支持Android 4.3以上的設備,Android系統(tǒng)豐富的傳輸通道可以很好的支持網(wǎng)絡通訊、控制算法計算、終端設備控制、LCD顯示等功能,基于此,將本系統(tǒng)的控制中心程序利用Linux驅動轉化成安卓系統(tǒng), Android系統(tǒng)獨立于硬件設備,但Linux下的驅動對應著特定的硬件設備,因此在進行Linux驅動時需要依照系統(tǒng)具體對接的硬件設備類型來注入驅動程序,實現(xiàn)整個程序的驅動,在Linux文件系統(tǒng)環(huán)境中,除了需要注意硬件設備的類型,還需要注意驅動后的文件是否能與驅動后的控制中心相對應,因此在驅動后需要及時檢查文件和目錄,確保此時相應的指令達到統(tǒng)一,從而與驅動中心進行交互。
Windows界面中遠程控制模擬,其功能模塊的設計步驟如下。
第一步,在完整的Windows界面中啟動Keil,進行初步開發(fā),首先應在桌面上找到并打開開發(fā)軟件。第二步,新建一個工程,單擊Project,從對話框中選取新建工程的選項,將遠程控制編碼輸入到該文件中,開發(fā)后保存,第三步,在后面彈出的對話框里,先選擇芯片供應商,再展開其左邊的加號選擇芯片型號,單擊確定。第四步,在彈出的對話框中輸入詢問代碼,軟件左邊的項目管理窗口里就出現(xiàn)了新建工程,此時的控制功能模塊可以實時獲取空調的出風和回風溫度,有助于歷史數(shù)據(jù)的分析。
在進行模擬傳輸時,需要使用IEEE 802協(xié)議,該協(xié)議主要通過無線連接進行傳輸,且該協(xié)議建立在Wi-Fi傳輸?shù)幕A上,該協(xié)議傳輸?shù)倪^程呈現(xiàn)獨立性,首先將服務客戶端與初級通信網(wǎng)絡連接,其次需要定義此時的通信參數(shù),保證協(xié)議中的管理信息能隨時保持通信,最后再利用AP進行指令轉發(fā),在通信時,模擬無線傳輸?shù)膮?shù)應與實際參數(shù)相同,這樣得出的通信通道的數(shù)量最準確,本文設計的系統(tǒng)選擇FCC或ETSI標準進行無線傳輸。主動掃描的過程是無線主機首先發(fā)現(xiàn)請求幀,然后利用AP發(fā)送響應,由無線主機向選擇的AP發(fā)送連接請求幀,實現(xiàn)無線傳輸,完成整個遠程控制流程。
為了測試本文設計系統(tǒng)的性能,檢測系統(tǒng)運行的效果,驗證其能否實現(xiàn)節(jié)能減排,且能否實時控制溫度,進行了測試,如下所示。
在測試主機中使用虛擬的VMware Workstation搭建一個系統(tǒng)作為開發(fā)環(huán)境。當設備完成驅動編寫與移植之后,需要實現(xiàn)整個嵌入式系統(tǒng)的運行。測試平臺包含u-boot, Linux內(nèi)核和安卓系統(tǒng)三個部分。需要在u-boot文件夾下輸入create 命令,在arch目錄下生成可供下載的uboot.bin文件。
分別取一天中的幾個時間段,測試本文設計的空調遠程控制系統(tǒng)控制后減少的能量消耗數(shù)值,如表1所示。
表1:測試結果
由表1可知,本文設計的系統(tǒng)性能良好,可以實現(xiàn)系統(tǒng)的遠程控制,且其能有效實現(xiàn)節(jié)能減排,具有良好的應用價值。
綜上所述,空調遠程控制系統(tǒng)對實現(xiàn)空調的智能控制,實現(xiàn)節(jié)能減排來說有重要意義,本文設計的空調遠程控制系統(tǒng)既能根據(jù)機房的實際溫度進行空調的遠程控制,在溫度達到設置閾值上限時啟動,溫度到達設置閾值下限時關閉,而且能實時獲取空調的出風和回風溫度,分析歷史數(shù)據(jù),自動調節(jié)機房的溫度設置閾值,經(jīng)過測試證明其性能良好,能有效實現(xiàn)節(jié)能減排,因此有一定的應用價值。