張 娜,余節(jié)旭,王明方,宋語欣,關(guān)龍基
(哈爾濱華德學(xué)院,黑龍江 哈爾濱 150025)
近年來,數(shù)字溫度傳感器的功能全面優(yōu)化,同時人們對數(shù)字溫度傳感器的需求和要求也在逐年提升?,F(xiàn)在所應(yīng)用的溫度傳感器是基于單片機(jī)來進(jìn)行發(fā)展和設(shè)計的,無論是在農(nóng)業(yè)生產(chǎn)或者科學(xué)研究方面都發(fā)揮著重要作用[1]。最早出現(xiàn)的具有調(diào)速功能的電機(jī)就是直流電機(jī),可以說在交流電機(jī)出現(xiàn)以前,直流電機(jī)的電力拖動是唯一的電力拖動方式。在多年的研究和使用過程中,直流電機(jī)在調(diào)速控制領(lǐng)域中有著不可取代的作用和地位,同時給各行各業(yè)的發(fā)展帶來了便利和更高的經(jīng)濟(jì)效益。直流電機(jī)基于其良好的線性調(diào)速功能和簡單易行的控制理論等,在實(shí)際的生產(chǎn)和生活中占據(jù)重要地位[2]。
文章所設(shè)計的由溫度控制的電機(jī)轉(zhuǎn)速控制系統(tǒng)是基于單片機(jī)的溫度控制直流電機(jī)轉(zhuǎn)速控制電路,采用單片機(jī)構(gòu)成的控制系統(tǒng),在相應(yīng)的軟件控制下,可以完成設(shè)計所要實(shí)現(xiàn)的功能。當(dāng)傳感器采集溫度在10℃~45℃時,電動機(jī)靜止不動;當(dāng)傳感器采集溫度高于45℃且不大于75℃時,直流電動機(jī)在驅(qū)動芯片的控制下順時針加速;當(dāng)采集溫度高于75℃時,電動機(jī)以460r/min 的速度順時針轉(zhuǎn)動;當(dāng)采集溫度在0 ~10℃時,電動機(jī)反向加速轉(zhuǎn)動,或先減速再反向轉(zhuǎn)動;當(dāng)采集溫度小于0℃時,電動機(jī)以460r/min 的速度逆時針反轉(zhuǎn);當(dāng)采集溫度回到10℃~45℃時,電動機(jī)減速至停止轉(zhuǎn)動。
該設(shè)計可以節(jié)約人力資源和降低系統(tǒng)成本,從而有效地提高工作效率,實(shí)現(xiàn)復(fù)雜的控制,且控制靈活性和適應(yīng)性好,無零點(diǎn)漂移,控制精密高,可提供人機(jī)界面,多機(jī)聯(lián)網(wǎng)工作。同時,采用智能功率電路驅(qū)動比傳統(tǒng)的分立功率器件組成的驅(qū)動體積小,功能強(qiáng);減少了電路元器件數(shù)量,提高了系統(tǒng)的可靠性;控制電路和功率電路集成在一起,使監(jiān)控更容易實(shí)現(xiàn);集成化使電路的連線減少,減少了布線電容和電感以及信號傳輸?shù)难訒r,增強(qiáng)了系統(tǒng)抗干擾的能力;集成化使系統(tǒng)成本大大降低。這將有利于溫度自動控制系統(tǒng)的智能化發(fā)展。
溫度控制直流電機(jī)轉(zhuǎn)速系統(tǒng)設(shè)計通過設(shè)計初步分析電路圖各部分的工作原理和相關(guān)理論知識,為系統(tǒng)硬件部分的設(shè)計提供強(qiáng)有力的理論支持。
根據(jù)設(shè)計需要,該設(shè)計從硬件電路和軟件程序兩方面來進(jìn)行。首先,在硬件上,需要通過測量元件把檢測到的外部溫度讀入AT89C51 單片機(jī)中,選擇靈敏度高、抗干擾、線性度好的溫度傳感器,為了能夠便于與單片機(jī)傳輸信號,還要保證輸出數(shù)字量。其次,相關(guān)信息傳遞給單片機(jī)后,單片機(jī)要輸出兩種控制信號,一種是用于溫度顯示,另一種是用于驅(qū)動電機(jī)。根據(jù)需要,可以選擇液晶顯示方式,通過編程使讀入的數(shù)值在顯示器上顯示出來。這樣采用以單片機(jī)為核心構(gòu)成的溫度控制系統(tǒng),不僅結(jié)構(gòu)簡單,而且降低了系統(tǒng)成本,節(jié)約了資源,提高了工作效率[3]。在軟件上,利用Proteus 軟件設(shè)計出基于單片機(jī)的溫度控制直流電機(jī)轉(zhuǎn)速系統(tǒng)設(shè)計的電路圖,并且用Keil 軟件編寫該系統(tǒng)設(shè)計的程序,經(jīng)過編譯,生成十六進(jìn)制的目標(biāo)代碼文件“.hex”。在Proteus 軟件上連接電路圖后,調(diào)入已編譯好的目標(biāo)代碼文件“.hex”,使所編程的程序結(jié)合電路圖在仿真軟件Proteus 上運(yùn)行,清晰地展現(xiàn)模擬實(shí)物運(yùn)行的狀態(tài)和過程。
系統(tǒng)方案設(shè)計要考慮可行性和硬件上的經(jīng)濟(jì)實(shí)用性。該系統(tǒng)采用以單片機(jī)為主的微控制器,通過溫度傳感器進(jìn)行外界溫度的輸入。溫度信號送入單片機(jī)后,由軟件程序來判斷和進(jìn)行溫度的比較和范圍劃定,比較后由程序控制單片機(jī)生成不同的脈寬調(diào)制信號,送給電機(jī)驅(qū)動芯片的控制端,以控制直流電動機(jī)的起動、調(diào)速、調(diào)向。整個電路設(shè)計包括復(fù)位電路、晶振電路、溫度采集電路、溫度顯示電路以及直流電機(jī)驅(qū)動電路,其系統(tǒng)結(jié)構(gòu)框圖如圖1 所示。
圖1 系統(tǒng)結(jié)構(gòu)框圖
1)單片機(jī)選型。該設(shè)計主控單元選用單片機(jī),型號為美國ATMEL 公司的AT89C51。它是一種高效的微控制器,具有8 位多功能CPU 和FLASH 閃存器,可進(jìn)行1 000 次的反復(fù)擦寫,同時具有2 個16 位的定時器/計數(shù)器,空閑停止CPU 的工作,低功耗,掉電可保存RAM 中的內(nèi)容,作為學(xué)習(xí)和設(shè)計,都是一種既靈活又價廉的選擇。
2)溫度采集器件選型。該設(shè)計選用數(shù)字式溫度傳感器進(jìn)行溫度采集,型號為DS18B20。其輸出信號是數(shù)字信號,具有體積小、硬件開銷低、抗干擾能力強(qiáng)、精度高的特點(diǎn)。DS18B20 數(shù)字溫度傳感器接線方便,封裝后可應(yīng)用于多種場合。
3)顯示器件選型。該設(shè)計選用顯示器件型號為液晶顯示LCD1602(LM016L)。顯示方式主要有數(shù)碼顯示和液晶顯示兩種,其中,液晶顯示應(yīng)用較廣,視覺效果更好,可延伸到工業(yè)、光學(xué)等各種領(lǐng)域。LCD1602 是字符型液晶顯示器,通常具有14 或16 條引腳,分為背光可調(diào)和不可調(diào)兩種。該設(shè)計選用的是不帶背光、雙排顯示的液晶顯示器。
4)電機(jī)驅(qū)動芯片選型。該設(shè)計在電機(jī)控制上,選用電機(jī)專用的驅(qū)動芯片,型號為L298。它是一種能夠接受高電壓大電流的全橋驅(qū)動芯片,既可以驅(qū)動直流電機(jī),也可以驅(qū)動步進(jìn)電機(jī)。其內(nèi)部內(nèi)置5V 供電,不需外接,內(nèi)含2 個H-Bridge 的高電壓、大電流全橋式驅(qū)動器,操作方便,穩(wěn)定性好。
系統(tǒng)硬件設(shè)計是通過設(shè)備選型的確定,將所需要的器件放到各電路中,按要求完成各電路的接線,并了解各電路對該設(shè)計的作用。
單片機(jī)的最小系統(tǒng)是指一個能完成最基本操作的單片機(jī)系統(tǒng)。該設(shè)計的最小系統(tǒng)由時鐘電路、復(fù)位電路組成。時鐘電路內(nèi)部的振蕩電路是1 個高增益反相放大器,采用12MHz 的晶振和22pF 的電容。復(fù)位電路用可將單片機(jī)內(nèi)部各電路的狀態(tài)恢復(fù)到一個確定的初始值,由10kΩ 電阻和10uF 電解電容構(gòu)成。當(dāng)系統(tǒng)上電工作時,單片機(jī)恢復(fù)到初始狀態(tài),準(zhǔn)備開始工作。
溫度采集電路由4.7kΩ 電阻和溫度傳感器DS18B20構(gòu)成,該電路的功能是進(jìn)行溫度采集,然后利用單片機(jī)處理所獲取的溫度數(shù)據(jù)。溫度傳感器DS18B20 有3 個管腳:VCC 為外接供電電源接入端,DQ 為數(shù)字信號輸入/輸出端,GND 為接地,能夠?qū)崿F(xiàn)全數(shù)字溫度轉(zhuǎn)換及輸出,完成單一總線數(shù)據(jù)通信功能[4]。該系統(tǒng)中DS18B20 的DQ 口與單片機(jī)的P3.3 口連接,GND 接地。
溫度顯示電路采用液晶顯示器1602 顯示測量溫度。1602 顯示曲線、字符、漢字的方式不同,該設(shè)計中單片機(jī)P0.0 到P0.7 口用于顯示器的數(shù)據(jù)傳輸,即溫度信息數(shù)值顯示;P2.0 到P2.2 分別用于存儲器選擇、讀寫數(shù)據(jù)控制以及使能端控制。當(dāng)溫度數(shù)值有變化時,經(jīng)過單片機(jī)數(shù)據(jù)分析,高低電平的變化,點(diǎn)亮相應(yīng)行列字符,顯示實(shí)時溫度。
該電路為直流電機(jī)驅(qū)動電路,由專用芯片L298、2 個100nF 電容、4 個二極管和1 個直流電機(jī)構(gòu)成,IN1 和IN2用于輸入控制電位控制電機(jī)的正反轉(zhuǎn)。當(dāng)ENA=1,IN1=1 且IN2=0 時,電機(jī)正轉(zhuǎn);反之,則電機(jī)反轉(zhuǎn)[5]。該系統(tǒng)的整體電路圖如圖2 所示。
圖2 電路原理圖
單片機(jī)的系統(tǒng)軟件設(shè)計主要由C 語言設(shè)計指令,根據(jù)主程序流程圖和子程序流程圖的設(shè)計清晰地闡明設(shè)計要求的內(nèi)容。在子程序設(shè)計中程序是比較重要的一部分。另外,電機(jī)轉(zhuǎn)速主要用于PWM 波的控制,當(dāng)溫度不同時,根據(jù)設(shè)計要求調(diào)整單片機(jī)輸出的PWM 波形,即利用調(diào)節(jié)占空比來調(diào)節(jié)電機(jī)的平均轉(zhuǎn)速;當(dāng)占空比減小時,電機(jī)的平均轉(zhuǎn)速自然變小,反之則變大。最后,經(jīng)過反復(fù)調(diào)試,成功實(shí)現(xiàn)電路的仿真。
該設(shè)計介紹了溫度控制直流電機(jī)轉(zhuǎn)速系統(tǒng)設(shè)計的基本原理,然后通過方案設(shè)計確定了系統(tǒng)組成,主要包括單片機(jī)、溫度傳感器、驅(qū)動芯片、顯示器等器件,在硬件上,通過各單元模塊的設(shè)計,實(shí)現(xiàn)了溫度的采集、溫度信號傳輸、單片機(jī)對溫度信號的采集與比較、溫度的顯示、驅(qū)動電路的控制、電機(jī)轉(zhuǎn)速的控制。由于不同轉(zhuǎn)速下電機(jī)的反應(yīng)不同,該設(shè)計可用于任何溫度采集后,需要啟動加熱器或風(fēng)扇的自動控制場合,電路結(jié)構(gòu)簡單、響應(yīng)速度快,溫度測量準(zhǔn)確,具有一定的實(shí)用價值。