李建莉
摘 要:Protues是一款性能優(yōu)良的電子輔助分析與設(shè)計(jì)軟件。運(yùn)用Protues研究了基于C51單片機(jī)的溫度控制直流電動(dòng)機(jī)控制系統(tǒng)電路,并通過(guò)C51單片機(jī)實(shí)現(xiàn)了數(shù)字溫度傳感器的數(shù)據(jù)采集功能,從而實(shí)現(xiàn)了直流無(wú)刷電動(dòng)機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速。整個(gè)電路設(shè)計(jì)包括溫度采集模塊、單片機(jī)控制模塊、溫度顯示模塊、電機(jī)及電機(jī)驅(qū)動(dòng)模塊。計(jì)算機(jī)仿真結(jié)果表明,該電路實(shí)現(xiàn)了溫度控制直流電機(jī)轉(zhuǎn)速的功能。
關(guān)鍵詞:Protues;單片機(jī);電路設(shè)計(jì);電動(dòng)機(jī)
中圖分類(lèi)號(hào):TM33 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.15913/j.cnki.kjycx.2016.14.087
1 系統(tǒng)總體設(shè)計(jì)
控制器是電動(dòng)機(jī)轉(zhuǎn)速控制的核心部分,是電動(dòng)機(jī)有效工作的保障。由于單片機(jī)具有靈活、成本低、易于產(chǎn)品化、抗干擾能力強(qiáng),可構(gòu)成各種智能式控制設(shè)備和智能儀器的特點(diǎn),所以,其適用范圍較大、處理功能較強(qiáng)、運(yùn)行速度較快等。本系統(tǒng)選用單片機(jī)AT89C51作為電機(jī)調(diào)速系統(tǒng)控制器,設(shè)計(jì)出的電動(dòng)機(jī)具有溫度采集、單片機(jī)控制、溫度顯示等功能,可實(shí)現(xiàn)單片機(jī)對(duì)某個(gè)位置的溫度監(jiān)控。當(dāng)溫度低于0 ℃時(shí),電動(dòng)機(jī)全速反轉(zhuǎn);當(dāng)外部溫度低于10 ℃時(shí),電動(dòng)機(jī)加速反轉(zhuǎn);當(dāng)溫度處于10~45 ℃時(shí),電動(dòng)機(jī)逐漸停止轉(zhuǎn)動(dòng);當(dāng)外部溫度高于45 ℃時(shí),電動(dòng)機(jī)加速正轉(zhuǎn);當(dāng)外部溫度高于75 ℃時(shí),電動(dòng)機(jī)全速正轉(zhuǎn)。系統(tǒng)原理如圖1所示。
2 系統(tǒng)電路的設(shè)計(jì)與仿真
2.1 系統(tǒng)的硬件電路
本系統(tǒng)主要由數(shù)字溫度傳感器、單片機(jī)、顯示器、L298驅(qū)動(dòng)芯片、電機(jī)器件等構(gòu)成。其中,數(shù)字溫度傳感器DS18B20可將檢測(cè)到的二進(jìn)制的數(shù)字溫度信號(hào)通過(guò)輸出端DQ,并經(jīng)P3.3引腳直接傳至單片機(jī)AT89C51。溫度數(shù)據(jù)采集設(shè)備通過(guò)溫度比較和對(duì)溫度范圍的控制,經(jīng)P1.2引腳產(chǎn)生PWM(脈寬調(diào)制)信號(hào),通過(guò)L298驅(qū)動(dòng)芯片輸入端ENA控制直流電機(jī)的啟動(dòng)、速度、方向的變化。為了實(shí)時(shí)檢測(cè)采集溫度,需要將采集到的溫度數(shù)據(jù)送至LM016顯示,并通過(guò)單片機(jī)P2口傳輸數(shù)據(jù)。電路原理如圖2所示。
2.2 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)的工作流程為:端口初始化→液晶顯示程序→DS18B20函數(shù)初始化→讀取溫度值并顯示→延時(shí)→開(kāi)啟中斷、等待中斷→T0定時(shí)器控制電動(dòng)機(jī)正/反轉(zhuǎn),并通過(guò)PWM信號(hào)控制電動(dòng)機(jī)的轉(zhuǎn)速。
2.2.1 溫度采集模塊
根據(jù)單總線協(xié)議,使用DS18B20時(shí)應(yīng)先初始化識(shí)別數(shù)據(jù)交換。本系統(tǒng)中的單總線上僅掛接有1個(gè)DS18B20,允許單片機(jī)在不讀取64位序列碼的情況下直接操作DS18B20,因此,可以使用跳過(guò)讀序列號(hào)的操作命令(CCH);對(duì)DS18B20發(fā)出啟動(dòng)溫度轉(zhuǎn)換的操作命令(44H)且轉(zhuǎn)換完成后,再次初始化DS18B20,跳過(guò)讀取序列號(hào)的操作,并發(fā)出讀取暫存器的操作命令(BEH),從而讀出溫度值。