基于Internet的工業(yè)空調(diào)智能控制器開發(fā)
摘要: 本文闡述了基于Internet的工業(yè)空調(diào)智能控制器的軟硬件設(shè)計。該控制器不僅可以完成電器常規(guī)控制功能,還能夠于嵌入式網(wǎng)絡(luò)接口模塊進(jìn)行通信,接收上位機(jī)發(fā)送過來的命令,處理并返回相應(yīng)參數(shù),實(shí)現(xiàn)用戶對設(shè)備的遠(yuǎn)程監(jiān)控。實(shí)際運(yùn)行結(jié)果表明該方案實(shí)用可行。本控制器具有成本低、開發(fā)簡單快速、靈活等特點(diǎn)。
1 引言
基于網(wǎng)絡(luò)實(shí)現(xiàn)對設(shè)備的監(jiān)控已經(jīng)成為目前一個主要的應(yīng)用領(lǐng)域,如通過Internet對工業(yè)空調(diào)進(jìn)行遙控操作,包括開機(jī)、關(guān)機(jī)、溫度調(diào)節(jié)等。除了要完成常規(guī)的功能以外,還要和外部網(wǎng)絡(luò)進(jìn)行通信,接收遠(yuǎn)程用戶通過Internet發(fā)送過來的指令,分析指令并執(zhí)行相應(yīng)的操作,根據(jù)需要返回設(shè)備的工作狀態(tài)參數(shù)。在本文中詳細(xì)的介紹了工業(yè)空調(diào)智能控制器的軟硬件設(shè)計,控制器通過串口與嵌入式網(wǎng)絡(luò)接口模塊通訊,使電器接入Internet,完成和外部網(wǎng)絡(luò)的通信。
2 工業(yè)空調(diào)的工作原理
圖1 工業(yè)空調(diào)制冷原理圖
工業(yè)空調(diào)制冷原理如圖1所示,工業(yè)空調(diào)工作時,制冷系統(tǒng)內(nèi)的低壓、低溫制冷劑蒸汽被壓縮機(jī)吸入,經(jīng)壓縮為高壓、高溫的過熱蒸汽后排至冷凝器;同時室外側(cè)風(fēng)扇吸入的室外空氣流經(jīng)冷凝器,帶走制冷劑放出的熱量,使高壓、高溫的制冷劑蒸汽凝結(jié)為高壓液體。高壓液體經(jīng)過節(jié)流毛細(xì)管降壓降溫流入蒸發(fā)器,并在相應(yīng)的低壓下蒸發(fā),吸取周圍熱量;同時室內(nèi)側(cè)風(fēng)扇使室內(nèi)空氣不斷進(jìn)入蒸發(fā)器的肋片間進(jìn)行熱交換,并將放熱后的變冷的氣體送向室內(nèi)。如此,室內(nèi)外空氣不斷循環(huán)流動,達(dá)到降低溫度的目的。
3 控制器硬件詳細(xì)設(shè)計
工業(yè)空調(diào)智能控制器的硬件原理框圖如圖2所示。由圖可知,工業(yè)空調(diào)智能控制器的硬件是以AT89S52微處理器為核心,主要由電源電路、面板按鍵、紅外接收電路、溫度檢測電路、串行通信接口、數(shù)碼顯示電路以及繼電器驅(qū)動電路等幾部分組成。
圖2 工業(yè)空調(diào)智能控制器原理框圖
3. 1 電源電路
整個主控板上有三種電壓:AC220V, DC12V和DC5V。AC220V直接給壓縮機(jī)、風(fēng)機(jī)供電;DC12V和DC5V用于繼電器和微控系統(tǒng)供電。電源電路如圖3所示,電源變壓器將交流電網(wǎng)220V的電壓變?yōu)樗枰碾妷褐?,然后從插座J1輸入,經(jīng)過整流橋進(jìn)行全波整流,通過并聯(lián)2200u/35V電解電容、0.1μF電容組成的濾波電路濾除紋波得到DC12V,再經(jīng)過三端穩(wěn)壓管7805將電壓穩(wěn)壓在+5V。
3. 2 溫度檢測電路
設(shè)計選用了數(shù)字式溫度傳感器DS18B20,溫度測量范圍為-55℃-+125℃,可編程為9位-12位A/D轉(zhuǎn)換精度,測溫分辨率可達(dá)0.0625℃,被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生;它的方便之處在于單線接口設(shè)計,使處理器只需要接一條數(shù)據(jù)線就能對它進(jìn)行全部的操作,實(shí)現(xiàn)操作指令和測量數(shù)據(jù)的傳輸,節(jié)省了大量的引線和邏輯電路。以上特點(diǎn)使DS18B'20在溫度測控系統(tǒng)中得到廣泛應(yīng)用。
DS18B20和單片機(jī)典型連接有兩種方式:(1)寄生電源方式,其VDD和GND端均接地。(2)外接電源方式,VDD端采用3V~5.5V電源供電。本設(shè)計采用了外接電源方式供電。
3. 3 數(shù)碼顯示電路
顯示模塊主要由數(shù)碼LED顯示塊和74HC164構(gòu)成,74HC164為單向8位移位寄存器,可實(shí)現(xiàn)串行輸入,并行輸出。74HC164編程簡單,性價比高。選用單片機(jī)的兩個I/O口完成與顯示模塊的串行顯示連接,其中把單片機(jī)的P2.4口作為移位脈沖輸出端,P2.5口作為數(shù)據(jù)輸出端。單片機(jī)的P2.2口接74HC164的CLK端,對單片機(jī)的P2.2口輸出的高低電平就是給74HC164數(shù)據(jù)移位的時鐘脈沖,在74HC164獲得時鐘脈沖的瞬間,如果數(shù)據(jù)輸入端是高電平,則就會有一個1進(jìn)入到74HC164的內(nèi)部,如果數(shù)據(jù)輸入端是低電平,則就會有一個0進(jìn)入其內(nèi)部,如此循環(huán)8次即可將一個8位數(shù)據(jù)傳送至74HC164中。74HC164的輸出(并行輸出)直接作為數(shù)碼管的段選控制信號,單片機(jī)的P2.0口和P2.1口驅(qū)動輸出顯示的是位選控制信號。顯示段碼驅(qū)動電路如圖4所示。
3. 4 以太網(wǎng)控制與串行通信模塊設(shè)計
以太網(wǎng)控制模塊主要是在Ethernet/Internet和微處理器之間起到一個橋梁的作用。將微處理器傳出的數(shù)據(jù)打包送到以太網(wǎng)上,或?qū)⒁蕴W(wǎng)上的數(shù)據(jù)接收進(jìn)來,供主處理器處理。其核心是以太網(wǎng)控制芯片RTL8019AS,為使RTL8019AS能與8位微處理器一起配合工作,就要對它工作時的模式、狀態(tài)及相關(guān)參數(shù)作硬件的設(shè)置。
以太網(wǎng)控制芯片RTL8019AS實(shí)現(xiàn)了以太網(wǎng)媒介訪問層(MAC)和物理層(PHY)的功能,包括MAC數(shù)據(jù)幀的組裝/拆分與收發(fā)、地址識別、CRC編碼/校驗曼徹斯特編解碼、接收噪聲抑制、輸出脈沖成形、超時重傳、鏈路完整性測試、信號極性檢測與糾正等。
串行通信模塊是連接設(shè)備控制器與嵌入式網(wǎng)絡(luò)接口模塊的橋梁。由于單片機(jī)的串行數(shù)據(jù)接口并不是標(biāo)準(zhǔn)的RS-232-C串口,因此使用了MAXIM公司的MAX232電平轉(zhuǎn)換芯片將單片機(jī)的串行數(shù)據(jù)接口與標(biāo)準(zhǔn)的RS-232-C串行接口連接起來。MAX232是一種能夠?qū)崿F(xiàn)RS232與TTL兩種邏輯電平相互轉(zhuǎn)換的專用芯片,芯片內(nèi)部包含兩種接收器和驅(qū)動器以及一個電源電壓變換器,并且只需要單一的+5V電源供電。MAX232芯片的硬件接口十分簡單,單片機(jī)的串行接收和發(fā)送端RXD, TXD可直接連接到MAX232的相應(yīng)端口上,通過外接1.0μF的電解電容便可以、使MAX232輸出RS-232-C串行通信所需要的±10V信號電平。由于MAX232芯片沒有片選端,在應(yīng)用系統(tǒng)中僅起到電平轉(zhuǎn)換的作用,因此它并不占用單片機(jī)的外部數(shù)據(jù)存儲空間。
3. 5 繼電器驅(qū)動電路
在單片機(jī)應(yīng)用系統(tǒng)中,開關(guān)量輸出電路主要完成動作信號的輸出,用于控制壓縮機(jī)和風(fēng)機(jī)的開關(guān)狀態(tài)。由于輸出信號不足以驅(qū)動繼電器的開關(guān)動作,在單片機(jī)的信號輸出口和繼電器之間采用了ULN2003A實(shí)現(xiàn)信號的放大及驅(qū)動。ULN2003A是由7組達(dá)林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及箱位二極管構(gòu)成,具有同時驅(qū)動7組負(fù)載的能力,為單片雙極型大功率高速集成電路;,它具有電流增益高、帶負(fù)載能力強(qiáng)、溫度范圍寬及工作電壓高等特點(diǎn),適合驅(qū)動繼電器、顯示器等大功率器件。
繼電器驅(qū)動電路設(shè)計如圖5所示,單片機(jī)控制信號經(jīng)P1.0~P1.3端口輸出,并通過P3.4的控制,將信號鎖存在74LS273中,74:LS273的輸出再經(jīng)過達(dá)林頓驅(qū)動器ULN2003A反向放大后加到繼電器的輸入端,使壓縮機(jī)和風(fēng)機(jī)按要求動作。74LS273鎖存控制信號,一方面增加輸出功率,另一方面也防止單片機(jī)復(fù)位時引起控制的誤動作。
4 軟件的設(shè)計與實(shí)現(xiàn)
系統(tǒng)軟件用C51編寫,采用了模塊化的設(shè)計思想,由主程序模塊、各個功能子程序模塊和中斷服務(wù)子程序模塊三大部分組成。主程序的功能是系統(tǒng)初始化、控制程序走向和調(diào)用功能子程序;功能子程序包括數(shù)據(jù)采集、數(shù)碼顯示、風(fēng)機(jī)和壓縮機(jī)的控制等子程序;中斷服務(wù)子程序包括遙控接收、定時中斷處理等。下面對主要程序模塊進(jìn)行描述。
主程序是整個控制系統(tǒng)軟件的樞紐,通過主程序有機(jī)地調(diào)用系統(tǒng)中各類的子程序及模塊,使它們形成一個聯(lián)系緊密的整體,有條不紊的完成各項預(yù)定的操作指令。系統(tǒng)上電或復(fù)位后,系統(tǒng)首先進(jìn)行初始化,包括各個寄存器和芯片的初始化;然后對室溫進(jìn)行采樣及加權(quán)處理;起始串行通信模塊確定是否接收到網(wǎng)關(guān)發(fā)送過來的命令和數(shù)據(jù),若接收到命令和數(shù)據(jù),設(shè)置相應(yīng)的參數(shù)和標(biāo)志位;調(diào)用鍵盤掃描程序,檢查是否有按鍵按下,若有按鍵按下,識別按鍵并設(shè)置相應(yīng)的參數(shù)和標(biāo)志位;調(diào)用顯示模塊用于顯示設(shè)定溫度、當(dāng)前室溫、定時時間、風(fēng)速、功能和定時狀態(tài)等信息;調(diào)用功能查詢及處理模塊使系統(tǒng)按所設(shè)定的參數(shù)和標(biāo)志位工作。只要系統(tǒng)上電,,主程序就不能停止,一直處于循環(huán)等待狀態(tài),所以主程序沒有結(jié)束運(yùn)行的指令。