崔作慶
肇慶市技師學(xué)院
以單片機(jī)為核心的空調(diào)溫度控制單元設(shè)計(jì)
崔作慶
肇慶市技師學(xué)院
崔作慶,肇慶市技師學(xué)院,學(xué)歷:本科,職稱:空調(diào)與制冷工程師。
本文是以單片機(jī)為核心的溫控單元的設(shè)計(jì)制作過程。溫差≤1℃,液晶顯示溫度。該設(shè)計(jì)用溫度傳感器AD590準(zhǔn)確測(cè)量溫度,運(yùn)算放大器OP07把放大的溫度-電壓信號(hào)送入ADC0809進(jìn)行A/D轉(zhuǎn)換,再把數(shù)字信號(hào)傳給單片機(jī),由單片機(jī)比較實(shí)測(cè)溫度與設(shè)定溫度,最后控制空調(diào)機(jī)工作。
課題的意義
空調(diào)機(jī)是對(duì)空氣的溫度、濕度、潔凈度和空氣流動(dòng)速度等參數(shù)進(jìn)行調(diào)節(jié),以滿足人體舒適性或生產(chǎn)工藝性的要求。溫度是“四度”中最重要的一個(gè)參數(shù),而溫度控制是否準(zhǔn)確,是影響空調(diào)系統(tǒng)運(yùn)行好壞的一個(gè)重要因素。
高精度溫控就是把溫度控制得更加精準(zhǔn),更好地滿足舒適性,特別是工藝性空調(diào)的要求。例如菌種的培養(yǎng)車間、藥廠的車間、高精度實(shí)驗(yàn)室等場(chǎng)合都需要有精準(zhǔn)的溫度控制。而一般空調(diào)機(jī)的溫控在2~3℃左右,誤差較大。
要做到對(duì)溫度的精準(zhǔn)控制,首先就需要非常靈敏的溫度測(cè)量裝置進(jìn)行檢測(cè),將準(zhǔn)確的采集信號(hào)通過高靈敏度的溫度傳感器送到微處理器,用微處理器來實(shí)現(xiàn)對(duì)空調(diào)機(jī)的高精度溫度控制,這樣才能滿足高精度的要求。單片機(jī)系統(tǒng)有體積小、性價(jià)比高、指令豐富、控制靈活、外圍接口部件多等優(yōu)點(diǎn),其在溫控領(lǐng)域得到廣泛應(yīng)用。
本課題的工作
本文針對(duì)單片機(jī)對(duì)溫控系統(tǒng)若干關(guān)鍵技術(shù)進(jìn)行研究,主要在以下三個(gè)方面:①以低成本為核心的總體設(shè)計(jì)方案,系統(tǒng)的組成及工作原理。②系統(tǒng)的硬件設(shè)計(jì)。③系統(tǒng)的軟件設(shè)計(jì)。
總體設(shè)計(jì)
選用89S51單片機(jī)為中央處理器,用高精度的溫度傳感器AD590實(shí)時(shí)精確測(cè)量溫度,用運(yùn)算放大器OP07放大溫度-電壓信號(hào), ADC0809進(jìn)行A/D轉(zhuǎn)換后的信號(hào)傳給單片機(jī),由單片機(jī)控制液晶顯示器,并與設(shè)定溫度比較,最后對(duì)空調(diào)機(jī)發(fā)出信號(hào)指令,控制空調(diào)機(jī)的運(yùn)行。
溫度傳感器AD590具有較高精度和重復(fù)性。超低溫漂移精度運(yùn)算放大器OP07放大溫度-電壓信號(hào),便于A/D轉(zhuǎn)換,以提高溫度采集電路的可靠性。
ADC0809是一個(gè)8路8位逐次逼近的A/D轉(zhuǎn)換器。轉(zhuǎn)換時(shí)間為100μs。在CPU啟動(dòng)A/D命令發(fā)出后,執(zhí)行一個(gè)固定的延時(shí)程序,讀入數(shù)據(jù)指令,讀取轉(zhuǎn)換結(jié)果。
液晶顯示模塊是將液晶顯示器件與控制、驅(qū)動(dòng)電路和PCB板裝配在一起的組件,可以直接與單片機(jī)連接。
總體方案結(jié)構(gòu)如圖1所示。
其技術(shù)路線為:用按鈕輸入標(biāo)準(zhǔn)溫度值,用LCD實(shí)時(shí)顯示空氣溫度,用驅(qū)動(dòng)電路控制壓縮機(jī)完成制冷機(jī)的運(yùn)行,用匯編語言完成軟件編程。
溫度采樣電路
AD590是一種半導(dǎo)體集成電路。該傳感器的線性度好,精度適中,靈敏度高,體積小,使用方便,因此常用于測(cè)量和熱電偶的冷端補(bǔ)償。溫度采集系統(tǒng)主要由AD590、OP07、IN4732組成。
A/D轉(zhuǎn)換電路
由信號(hào)處理電路輸出的信號(hào)為模擬信號(hào),必須轉(zhuǎn)化為數(shù)字信號(hào),才能被單片機(jī)處理,它是模擬系統(tǒng)與計(jì)算機(jī)的接口部件。
本系統(tǒng)采用ADC0809大規(guī)模集成電路芯片,是一種具有8路模擬量輸入的8位A/D轉(zhuǎn)換器,采用逐次逼近式A/D轉(zhuǎn)換器,輸出的數(shù)字信號(hào)有三態(tài)緩沖器,可以和單片機(jī)直接接口。ADC0809由一個(gè)8路模擬開關(guān)、一個(gè)地址鎖存與譯碼器、一個(gè)8位A/D轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。
圖1 總體結(jié)構(gòu)框圖
單片機(jī)的選擇
本系統(tǒng)控制程序簡單,盡量采用整型運(yùn)算,盡可能避免浮點(diǎn)數(shù)運(yùn)算,故運(yùn)算量小,故一般的51 單片機(jī)都可滿足要求。選擇時(shí)考慮了以下因素:①單片機(jī)應(yīng)有內(nèi)部程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,避免擴(kuò)展造成系統(tǒng)復(fù)雜,增加了系統(tǒng)的不穩(wěn)定性。②因需要調(diào)試軟件,故單片機(jī)內(nèi)存應(yīng)可以多次擦寫。③程序中使用了外部中斷0 和時(shí)間中斷T0,所選單片機(jī)應(yīng)該有兩個(gè)以上中斷源。④程序算法簡單,單片機(jī)應(yīng)支持MCS-51 系列通用匯編語言開發(fā),以利于軟硬件的結(jié)合。
ADC0809片內(nèi)無時(shí)鐘,故利用8051提供的地址鎖存使能信號(hào)ALE經(jīng)D觸發(fā)器二分頻后獲得時(shí)鐘。ALE信號(hào)的頻率是單片機(jī)時(shí)鐘頻率的六分之一,如果時(shí)鐘頻率為6MHz,則ALE信號(hào)的頻率為1MHz,經(jīng)二分頻后為500KHz,與ADC0809時(shí)鐘頻率吻合。ADC0809具有三態(tài)輸出鎖存器,故其數(shù)據(jù)輸出引腳可直接與單片機(jī)的數(shù)據(jù)總線相連。地址碼引腳ADD A~C分別與地址總線的低三位A0、A1、A2相連,以選通IN0~I(xiàn)N7中的一個(gè)通道。采用單片機(jī)的P2.7(地址總線最高位A15)作為A/D的片選信號(hào),并將A/D轉(zhuǎn)換的ALE和START腳相連,以實(shí)現(xiàn)在鎖存通道地址的同時(shí)啟動(dòng)ADC0809轉(zhuǎn)換。啟動(dòng)信號(hào)由單片機(jī)的寫信號(hào)和P2.7經(jīng)或非門而產(chǎn)生。在讀取轉(zhuǎn)換結(jié)果時(shí),用單片機(jī)的讀信號(hào)和P2.7經(jīng)或非門加工得到的正脈沖作為OE信號(hào)去打開三態(tài)輸出鎖存器。編寫的軟件按下列順序動(dòng)作:令P2.7=A15=0,并用A0、A1、A2的組合指定模擬通道的地址;執(zhí)行一條輸出指令,啟動(dòng)A/D轉(zhuǎn)換;然后根據(jù)所選用的是查詢、中斷、等待延時(shí)三種方式之一的條件去執(zhí)行一條指令,讀取A/D轉(zhuǎn)換結(jié)果。
數(shù)字顯示部分
顯示模塊的選擇
液晶顯示器以其電壓低、體積小、功耗少等特點(diǎn),在便攜儀表和低功耗系統(tǒng)中的應(yīng)用越來越多。液晶顯示模塊是將液晶顯示器與控制、驅(qū)動(dòng)電路和PCB板裝配在一起的組件,帶有串行接口或并行接口,可以直接與單片機(jī)連接。
點(diǎn)陣字符型液晶顯示模塊是由點(diǎn)陣字符液晶顯示器和專用的行、列驅(qū)動(dòng)器、控制器及必要的連接件、結(jié)構(gòu)件裝配而成,可以顯示數(shù)字和西文字符。選用此模塊。
LCD1602簡介
LCD1602可顯示2行16個(gè)字符,有8位數(shù)據(jù)總線。有D0-D7,和RS、R/W、EN三個(gè)控制端口,工作電壓為5V,并且?guī)в凶址麑?duì)比度調(diào)節(jié)。其應(yīng)用電路簡單,便于設(shè)計(jì)。
驅(qū)動(dòng)控制電路
驅(qū)動(dòng)控制系統(tǒng)采用發(fā)光二極管代表加熱或制冷。
鍵盤電路
選用獨(dú)立式按鍵接口。這種方式各種按鍵相互獨(dú)立,每個(gè)按鍵接一根輸入線。其工作狀態(tài)不影響其他輸入線。軟件設(shè)計(jì)選用查詢方式和外部中斷相結(jié)合的方法來設(shè)計(jì)。按鍵直接與89S51的I/O口線相連接,通過讀I/O口,判定各I/O口的電平狀態(tài),即可識(shí)別出按下的按鍵。
主程序模塊
主程序模塊主要完成控制系統(tǒng)各部件的初始化和實(shí)現(xiàn)各功能子程序的調(diào)用,以及測(cè)量中各功能模塊的協(xié)調(diào)在無外部中斷申請(qǐng)時(shí),單片機(jī)通過循環(huán)對(duì)外部溫度進(jìn)行實(shí)時(shí)顯示。本設(shè)計(jì)主程序流程圖如圖2所示。
系統(tǒng)程序啟動(dòng)后,先清理系統(tǒng)內(nèi)存,然后采集溫度,A/D轉(zhuǎn)換后,傳輸?shù)絾纹瑱C(jī),再由單片機(jī)控制顯示設(shè)備,然后系統(tǒng)進(jìn)入待機(jī)狀態(tài),等待鍵盤輸入設(shè)定溫度,然后系統(tǒng)將設(shè)定溫度與現(xiàn)在的溫度進(jìn)行比較,得出結(jié)果后,控制空調(diào)設(shè)備的運(yùn)行。
A/D轉(zhuǎn)換子程序
89S51給出一個(gè)脈沖信號(hào)啟動(dòng)A/D轉(zhuǎn)換后,ADC0809對(duì)接收到的模擬信號(hào)進(jìn)行轉(zhuǎn)換,在預(yù)先設(shè)定的延時(shí)后,89S51直接從ADC0809中讀取數(shù)據(jù)。
仿真
通過ISIS軟件,進(jìn)行仿真。分別調(diào)整溫度上升到35℃和下降到-10℃。軟件測(cè)試:測(cè)試使用偉福(WAVE)6000仿真器。通過測(cè)試,達(dá)到控制要求。
圖2 主程序流程圖
系統(tǒng)調(diào)試
靜態(tài)測(cè)試
在不通電源,不插器件的情況下,用萬用表×100Ω擋按圖紙的接線點(diǎn)檢測(cè)電阻。最后測(cè)量電源正、負(fù)極入口處電阻,不應(yīng)有短路現(xiàn)象。
通電測(cè)量
不插器件,用萬用表×10V擋檢測(cè)電路電壓。只有與電源端相連或有關(guān)分壓端的引腳才有電壓,其他引腳都不應(yīng)有電壓。檢測(cè)電位器上的分壓電源,調(diào)整到所規(guī)定的電壓值。
動(dòng)態(tài)測(cè)試
所有器件插好通電,觀察幾秒,如果有異?,F(xiàn)象,立即斷電,查明原因并改正。
聯(lián)機(jī)統(tǒng)調(diào)
將程序?qū)懭隦OM,通電調(diào)試。用鍵盤輸入目標(biāo)溫度值,檢測(cè)驅(qū)動(dòng)電路輸出信號(hào)是否正確。連接空調(diào)機(jī),調(diào)整溫度設(shè)定。觀察到標(biāo)準(zhǔn)溫差≤1℃,并能根據(jù)設(shè)定的溫度實(shí)現(xiàn)自動(dòng)加熱或降溫處理。
在制作過程中,一定要認(rèn)真檢查每個(gè)步驟。若在合理布線,裝配無誤時(shí)還出現(xiàn)電路無輸出的情況,那就是原理圖錯(cuò)誤,就要檢查原理圖??偟臋z查順序是原理圖、PCB圖、裝配情況、焊接工藝。
10.3969/j.issn.1001-8972.2015.06.032