李嵐彤,陳 滕,李 磊
(1.石家莊鐵道大學(xué),河北 石家莊 050000;2.石家莊鐵路技術(shù)學(xué)院,河北 石家莊 050000)
隨著人類生活環(huán)境日趨復(fù)雜化,溫度成為越來(lái)越重要的參數(shù),各個(gè)場(chǎng)所都對(duì)溫度控制提出了嚴(yán)格要求,如溫室大棚和醫(yī)院病房等,尤其是在一些高精度的生產(chǎn)廠房中,對(duì)溫度的要求極其嚴(yán)格。溫度的變化很有可能對(duì)產(chǎn)品品質(zhì)造成極大影響,因此需要一種能夠及時(shí)檢測(cè)溫度變化的設(shè)備,提供準(zhǔn)確的溫度數(shù)據(jù)作為參考。多點(diǎn)溫度監(jiān)控可以根據(jù)人們不同的應(yīng)用環(huán)境自行設(shè)置該環(huán)境的溫度值,及時(shí)反映真實(shí)的溫度數(shù)據(jù),提示人們溫度變化情況,協(xié)助人們及時(shí)作出調(diào)整,起到溫度報(bào)警作用,使得溫度控制更好地服務(wù)于社會(huì)生產(chǎn)。
設(shè)計(jì)基于單片機(jī)的多點(diǎn)溫度監(jiān)控系統(tǒng)時(shí),需要充分考慮主機(jī)部分、測(cè)溫電路、鍵盤輸入電路、溫度顯示電路以及報(bào)警電路的設(shè)計(jì)。主機(jī)部分主要用來(lái)控制各個(gè)電路的正常工作,進(jìn)而實(shí)現(xiàn)溫度控制,當(dāng)某個(gè)溫度出現(xiàn)低于或超出預(yù)設(shè)值就需要控制相應(yīng)的裝置來(lái)達(dá)到加熱或降溫的目的[1]。測(cè)溫電路主要是進(jìn)行多點(diǎn)溫度測(cè)量,然后將數(shù)據(jù)輸入到主機(jī)部分。鍵盤輸入電路主要是通過(guò)設(shè)計(jì)合理的上下限溫度,然后通過(guò)主機(jī)科學(xué)控制溫度。溫度顯示電路主要用于顯示設(shè)定的溫度值,以便于工作人員及時(shí)掌握溫度數(shù)據(jù)。報(bào)警電路主要是當(dāng)測(cè)量得到的溫度超過(guò)上下限值時(shí)進(jìn)行報(bào)警提示。
本設(shè)計(jì)選擇普通的89C51單片機(jī)芯片,具有低功耗和高性能的特點(diǎn),可以方便地應(yīng)用在各種控制領(lǐng)域。它采用了CMOS工藝和高密度非易失性存儲(chǔ)器技術(shù),輸出引腳和指令系統(tǒng)都與MCS51兼容,由CPU、存儲(chǔ)器以及I/O接口組成。其中,中央處理單元CPU包含運(yùn)算器和控制器,運(yùn)算器可以針對(duì)4位、8位以及16位數(shù)據(jù)進(jìn)行操作,控制器中的程序計(jì)數(shù)器是程序的字節(jié)地址計(jì)數(shù)器。存儲(chǔ)器的作用是對(duì)機(jī)器在工作中所產(chǎn)生的數(shù)據(jù)以及運(yùn)算的中間結(jié)果和數(shù)據(jù)進(jìn)行儲(chǔ)存和緩沖等,其中最為主要的功能是用于檢測(cè)數(shù)據(jù)的存儲(chǔ)[2]。
溫度傳感器芯片為DS18B20,具有獨(dú)特的單線接口方式,與微處理器接口連接時(shí)僅需占用1個(gè)I/O端口,并支持多節(jié)點(diǎn),使得分布式溫度傳感器的設(shè)計(jì)更為簡(jiǎn)單。DS18B20在測(cè)量溫度時(shí)不需要任何外部元件,可以通過(guò)數(shù)據(jù)線直接供電,具有超低功耗的工作方式,其測(cè)溫范圍在-55~125 ℃,并可以將溫度轉(zhuǎn)換值以9位數(shù)字碼的方式串行輸出。此外,DS18B20獨(dú)特的單線接口僅僅需要1個(gè)端口引腳就可以進(jìn)行通信,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,進(jìn)而實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能,當(dāng)溫度超過(guò)設(shè)定值后溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作,這在一定程度上保護(hù)了溫度計(jì),延長(zhǎng)了溫度計(jì)的使用壽命。
LED七段數(shù)碼管是由發(fā)光二極管組成用來(lái)顯示數(shù)據(jù)的特定顯示器,這種顯示器使用靈活且簡(jiǎn)單方便。在某段二極管上施加一定的正向電壓時(shí),該段亮起,否則變暗,另外LED顯示器又分為共陰極和共陽(yáng)極兩種,發(fā)光二極管的陰極連接在一起的稱為共陰極LED顯示器,發(fā)光二極管的陽(yáng)極連接在一起的稱為共陽(yáng)極LED顯示器。
報(bào)警電路的設(shè)計(jì)采用的是聲光報(bào)警電路。蜂鳴器本身的用途非常廣泛,當(dāng)溫度超過(guò)預(yù)設(shè)值后,蜂鳴器就會(huì)自動(dòng)報(bào)警,機(jī)器在接收到報(bào)警信號(hào)后會(huì)作出相應(yīng)的反應(yīng),工作人員在聽到機(jī)器報(bào)警后也可以及時(shí)查看是何種故障造成機(jī)器報(bào)警,進(jìn)而采取相應(yīng)的措施以解除報(bào)警。按鍵電路幾乎是任何電路都需要的一種電路,可以根據(jù)實(shí)際需要而分為不同種類,每種按鍵電路的功能也是有些許差異的。本文按鍵電路的使用在于設(shè)置溫度的上下限和確定鍵,其他按鍵基本上屬于復(fù)位鍵類型。在實(shí)踐工作中,這種按鍵不僅可以起到保護(hù)電路的作用,而且可以隨時(shí)關(guān)閉處于非工作狀態(tài)的電路板,便于電路的實(shí)時(shí)控制。每個(gè)按鍵占用1個(gè)I/O端口,與單片機(jī)的引腳進(jìn)行對(duì)接,通過(guò)脈沖信號(hào)將其工作狀態(tài)和數(shù)據(jù)傳送到中央處理器中,以便于CPU判斷數(shù)據(jù)的穩(wěn)定性等狀況。
無(wú)線傳輸模塊是硬件設(shè)計(jì)的最后一個(gè)環(huán)節(jié),要將兩個(gè)芯片設(shè)置為接收端和發(fā)射端,要想實(shí)現(xiàn)兩個(gè)芯片之間的正常通信,還需要保證兩個(gè)芯片的頻道、地址以及每次發(fā)送接收的字節(jié)數(shù)相同[3]。
設(shè)計(jì)的基于單片機(jī)的多點(diǎn)溫度監(jiān)控系統(tǒng)如圖1所示。先對(duì)系統(tǒng)進(jìn)行初始化操作,取合適的溫度點(diǎn)F1和F2,并將溫度數(shù)據(jù)傳送到PC機(jī)上,然后在溫度顯示后,判斷是否有按鍵,如果有則按照有按鍵處理,如果沒(méi)有則需要讀取無(wú)線數(shù)據(jù)。判斷數(shù)據(jù)是否超出預(yù)定值,超出設(shè)定值則執(zhí)行報(bào)警功能,沒(méi)有超出設(shè)定值則需要比較設(shè)置溫度與當(dāng)前溫度的大小差異,通過(guò)繼電器進(jìn)行控制,將控制后的數(shù)據(jù)重新顯示和比較,如此循環(huán)反復(fù)。
圖1 多點(diǎn)溫度監(jiān)控系統(tǒng)程序流程圖
安裝之后的整體電路比較復(fù)雜,需要分模塊進(jìn)行調(diào)試,調(diào)試過(guò)程中發(fā)現(xiàn)了一些問(wèn)題,在初次停電之后沒(méi)有任何反應(yīng),經(jīng)過(guò)多次嘗試、實(shí)驗(yàn)和以及修正后,終于找到了電路中存在的問(wèn)題。電路調(diào)試中遇到的問(wèn)題主要包括以下5個(gè)方面。第一,初次通電之前因?yàn)榻泳€人員的失誤將傳感器接反,導(dǎo)致傳感器發(fā)熱,經(jīng)過(guò)仔細(xì)檢查后改正了錯(cuò)誤,在檢查傳感器是否完好后按照正確的連接方式將其重新連接到電路上。第二,通電后顯示器顯示的不是數(shù)字而是一些亂碼,這使得實(shí)驗(yàn)不得不再次中止,經(jīng)過(guò)分析亂碼形狀和形態(tài),再加上實(shí)際觀察和假設(shè)嘗試,發(fā)現(xiàn)是其中兩段譯碼芯片與數(shù)碼管接反了,更正之后數(shù)碼管顯示回復(fù)正常。第三,在調(diào)試過(guò)程中發(fā)現(xiàn)顯示器所顯示的溫度比真實(shí)的溫度高很多,經(jīng)過(guò)詳細(xì)檢查發(fā)現(xiàn)其原因是錯(cuò)將A/D的個(gè)位和小數(shù)點(diǎn)位接到了顯示器上,經(jīng)過(guò)重新連接后數(shù)據(jù)恢復(fù)正常。第四,每次通電后計(jì)數(shù)都是從4開始的,一直記到0才會(huì)進(jìn)入到循環(huán),中間所耗費(fèi)的時(shí)間太長(zhǎng),故考慮做一個(gè)通電復(fù)位的模塊以解決這個(gè)問(wèn)題,使得計(jì)數(shù)從1開始。第五,在電路焊接過(guò)程中采用板子上面的叉指結(jié)構(gòu)作為公共的電源和地,能夠有效減少焊線的使用,提高復(fù)雜數(shù)字電路系統(tǒng)的使用效率。
結(jié)合計(jì)算機(jī)仿真和實(shí)踐活動(dòng)兩種方式對(duì)單片機(jī)的多點(diǎn)溫度監(jiān)控系統(tǒng)進(jìn)行性能測(cè)試,最終測(cè)量得到的溫度差在允許誤差范圍內(nèi),而且溫度達(dá)到設(shè)定的報(bào)警溫度時(shí)能夠準(zhǔn)確報(bào)警,說(shuō)明整個(gè)監(jiān)控系統(tǒng)符合設(shè)計(jì)要求,系統(tǒng)各個(gè)部分都能夠很好發(fā)揮各自所承擔(dān)的作用和功能。整個(gè)實(shí)驗(yàn)所使用的元件和材料是實(shí)驗(yàn)室現(xiàn)有的或可通過(guò)其他常見材料代替,元件利用率較好,而且沒(méi)有任何浪費(fèi)的現(xiàn)象,其中單片機(jī)芯片具有造價(jià)低和使用便捷等優(yōu)勢(shì),應(yīng)用在多點(diǎn)溫度監(jiān)控系統(tǒng)中,不僅可以得到較為準(zhǔn)確的監(jiān)測(cè)結(jié)果,而且可以節(jié)省監(jiān)測(cè)成本,可以推廣應(yīng)用到各個(gè)領(lǐng)域。
基于單片機(jī)多點(diǎn)溫度監(jiān)控系統(tǒng)的設(shè)計(jì)過(guò)程中需要格外注意以下幾點(diǎn)。首先,在系統(tǒng)設(shè)計(jì)過(guò)程中要以實(shí)際溫度控制為需求設(shè)置限定值,選擇單片機(jī)芯片時(shí)可以先調(diào)查市場(chǎng)上的芯片類型,選擇性價(jià)比更高的芯片,為系統(tǒng)設(shè)計(jì)奠定堅(jiān)實(shí)的基礎(chǔ)。其次,在系統(tǒng)設(shè)計(jì)時(shí)要結(jié)合理論知識(shí)和實(shí)踐經(jīng)驗(yàn),優(yōu)化多點(diǎn)溫度監(jiān)控系統(tǒng)方案。再次,在實(shí)驗(yàn)過(guò)程中需要集中注意力,認(rèn)真對(duì)待每個(gè)細(xì)節(jié)問(wèn)題,從而避免在實(shí)驗(yàn)中出現(xiàn)各種各樣的小問(wèn)題,提高設(shè)計(jì)工作和實(shí)驗(yàn)驗(yàn)證的質(zhì)量和效率。最后,設(shè)計(jì)多點(diǎn)溫度監(jiān)控系統(tǒng)后可以先用計(jì)算機(jī)進(jìn)行仿真驗(yàn)證,在仿真驗(yàn)證沒(méi)有出現(xiàn)問(wèn)題后再進(jìn)行實(shí)踐驗(yàn)證。調(diào)試不能完全依賴計(jì)算機(jī)仿真驗(yàn)證結(jié)果,這是因?yàn)橛?jì)算機(jī)驗(yàn)證是在相對(duì)理性的狀態(tài)下進(jìn)行的,因此只能將其作為參考,實(shí)際調(diào)試結(jié)果還是要以實(shí)踐為主[4]。
本文簡(jiǎn)單分析了多點(diǎn)溫度監(jiān)控系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì),旨在明確單片機(jī)應(yīng)用到溫度監(jiān)控系統(tǒng)中的可行性,證實(shí)多點(diǎn)溫度監(jiān)控系統(tǒng)在實(shí)際生產(chǎn)生活中具有重要作用和價(jià)值。