(昆山供電公司,江蘇 昆山 215300)
基于STC89C52單片機電機溫控自動調(diào)節(jié)系統(tǒng)的設計
丁志杰
(昆山供電公司,江蘇 昆山 215300)
本文設計了一款用STC89C52單片機作為控制核心,集成溫度傳感器、L298d電機驅(qū)動。通過軟件編程實現(xiàn)數(shù)據(jù)分析和控制,直接設定溫度上、下限值,根據(jù)使用者設定的溫度,自動在對應溫度時做出低速檔、高速檔、停機動作。經(jīng)過實驗,該系統(tǒng)運行穩(wěn)定,精確度高。
溫度測量;電機;轉(zhuǎn)速控制
智能溫度控制系統(tǒng)在工業(yè)生產(chǎn),特別是在電力、家電、材料、汽車電子等行業(yè)得到廣泛應用。在現(xiàn)代化建設中,能源消耗非常大,但我國的能源利用率較低。因此實現(xiàn)智能溫度控制,對提高能源利用率和現(xiàn)代化建設具有非常重要的現(xiàn)實意義。
本設計實現(xiàn)了一種電機溫控自動調(diào)節(jié)系統(tǒng),具有靈敏的溫度感應和顯示功能,本系統(tǒng)能通過溫度的變化對電機的轉(zhuǎn)速進行智能化控制,用戶可以設置溫度上、下限值。
系統(tǒng)總體設計思想是將整個復雜系統(tǒng)劃分為各個簡單的小模塊,再由各個小模塊功能組合,從而實現(xiàn)系統(tǒng)預期功能。通過分析可以將本系統(tǒng)劃分為系統(tǒng)控制模塊、溫度測量模塊、溫度設置模塊、顯示模塊、測速模塊、電機驅(qū)動模塊和直流電機等模塊。
2.1 系統(tǒng)總體硬件組成
通過分析,最終確定本系統(tǒng)主要包括STC89C52單片機控制模塊、單片機最小系統(tǒng)模塊、DS18B20溫度測量模塊、按鍵設置溫度模塊、LCD液晶顯示模塊、L298電機驅(qū)動模塊、光電傳感器測速模塊和被控的直流電機幾個模塊。
2.2 系統(tǒng)各模塊設計
(1)STC89C52單片機最小系統(tǒng)。單片機最小系統(tǒng)又稱為單片機最小應用系統(tǒng),指用最少的元器件組成的可以工作的單片機系統(tǒng)。
對于一般單片機來說,最小系統(tǒng)模塊應該包括:單片機、晶振電路和復位電路。具體電路設計如圖1所示。
圖1 STC89C52單片機模塊電路圖
本設計晶振電路選取的晶振為12MHz,單片機12個時鐘周期為1個機器周期,機器周期的時間T為:
所以根據(jù)經(jīng)驗計算可得,電阻可取阻值10K,電容可取電容值10μF。
(2)DS18B20溫度測量模塊和溫度設置模塊。溫度測量主要由DS18B20,一個電阻組成。將DS18B20采集的溫度信號轉(zhuǎn)換成二進制數(shù),通過單片機處理然后在液晶顯示器上顯示。由于傳感器連接到單片機P0口,單總線通常需要一個外部約為4.7~10k的上拉電阻,這樣,當總線空閑時,其狀態(tài)為高電平時,上拉電阻系統(tǒng)設計取10k。
溫度設定模塊電路圖鍵端連接到地,另一端接入SCMP0.3,P0.4,P0.5端口,并連接一個上拉電阻器,其阻值為電阻10k。
(3)LCD液晶顯示模塊。CD液晶顯示模塊電路包括1個1602液晶顯示屏、滑動變阻器等。其連接方式如下:數(shù)據(jù)線DB0~DB7連接單片機的P2口;3條控制線RS、RW、E、分別接P3.0、P3.3、P3.1;10k的滑動變阻器用來調(diào)節(jié)液晶顯示的對比度。
(4)L298電機驅(qū)動模塊。由于控制對象的系統(tǒng)設計中只有一個電機,并且兩個正負交替,所以IN1-IN4只需要一個端口連接到所述單芯片微計算機,如圖IN4連接到P1.0。為了確保L298芯片可以正常穩(wěn)定的工作,需要穩(wěn)定芯片的輸入電壓,所以芯片兩個電源輸入需要添加濾波電路。通過在平行一端的另一端接地電解電容器和陶瓷電容器的濾波電路后連接電源輸入。其效果是減少濾波器電路的紋波系數(shù),可消除一些通過正反饋形式紋波功率,也就是使電壓穩(wěn)定。電解電容器交流濾波低頻分量,一般選擇100uF的陶瓷電容比電源噪聲濾波器的工作頻率較高,一般選擇0.1uF。
(5)直流電機模塊。馬達是電感性負載,中斷或逆轉(zhuǎn)時,可以產(chǎn)生反向感應,電動勢非常高,如果不釋放將擊穿電路控制芯片。增加一個二極管,二極管導通感應電動勢,電能釋放后,起到了保護作用。因此電機兩端要加入四個二極管。
(6)光電傳感器測速模塊。槽型光電開關是對射式光電開關的一種,又叫做U型光電開關,是一款紅外線感應光電產(chǎn)品,槽型光電傳感器模塊檢測距離長、響應速度快。光電傳感器測速采用光電碼盤測速法,通過測出轉(zhuǎn)速信號的頻率或周期來測量電機轉(zhuǎn)速的一種無接觸測速法。光電碼盤安裝在轉(zhuǎn)子端軸上,隨著電機的轉(zhuǎn)動,光電碼盤也跟著一起轉(zhuǎn)動,如果有一個固定光源照射在碼盤上,則利用光敏元件來接收到的光的次數(shù)就是碼盤的編碼數(shù)。若編碼數(shù)為60,測量時間為t,測量到的脈沖數(shù)為N,則n=N/t。
整體軟件部分的設計主要包括主程序模塊、DS18B20測溫模塊、溫度模塊設置、LCD液晶顯示模塊、L298電機驅(qū)動模塊、光電速度傳感器模塊。主程序模塊的功能是為幾個模塊的整體框架和初始化工作的其余部分;DS18B20測溫模塊,用于實時檢測環(huán)境溫度,并轉(zhuǎn)換由液晶顯示器;密鑰設定溫度是通過模塊子程序?qū)崟r改性溫度上限和下限,并在液晶顯示器;LCD液晶顯示模塊,用于實時溫度,溫度上限和下限和速度;L298電機驅(qū)動模塊所使用的驅(qū)動程序,實現(xiàn)電動機的速度控制;單片機光電傳感器測速模塊用于電機脈沖計數(shù),來測量電機速度和液晶顯示器(LCD)相結(jié)合。
劃分成模塊,確定每個模塊的功能,確定模塊之間的調(diào)用關系,確定模塊之間的接口和模塊之間傳遞的信息。方案實施功能檢測時,電量傳感器讀取 溫度命令后正常工作,會從LCD上顯示的DS18B20溫度值讀取。同時,用戶可通過按鈕來設置溫度下限,并顯示在LCD上。單片機通過比較溫度傳感器測試的當前溫度和設定的溫度值,從而驅(qū)動電機開始不同方式的工作。為更直觀地看到電機轉(zhuǎn)速的變化與光電傳感器的旋轉(zhuǎn)速度,在LCD顯示的單塊芯片進行實時測量。電機溫度功能由溫度和速度顯示子程序模塊的設置,通過工具按鈕來顯示。
4.1 仿真
KEIL編程軟件提供了一個完整的發(fā)展計劃,其中包括C語言編輯器、宏匯編、連接器、庫管理,以及強大的調(diào)試器的原理等。
(1)打開KEIL軟件,編寫好相應的程序進行編譯。(2)點擊“項目”選項,打開“為目標選項”中選擇“輸出”鍵,那么“科瑞HEX文件”勾選上,生成可以在PROTUES仿真圖中使用的HEX文件。(3)打開軟件PROTUES,得出相應的模擬圖,在單片機上雙擊,在出現(xiàn)的選項中選定剛才生成的“程序文件”選項。最后選擇確定按鈕即可仿真成功。
4.2 結(jié)果分析
本次設計的是電機溫控自動調(diào)節(jié)系統(tǒng),由于仿真圖上需要運行的器件繁多,仿真量大,在運行時發(fā)現(xiàn)仿真出現(xiàn)卡頓和液晶亂碼現(xiàn)象。尤其在測速時液晶顯示速度值有時候沒有明顯變化。
仿真結(jié)果表明,模擬仿真設置時的最高溫度為40.0℃。當實際溫度高于設定溫度時,即電動機溫度升高至42.0℃,電機速度逐漸變快,達303轉(zhuǎn)每分鐘。當實際溫度低于設定溫度時,電機轉(zhuǎn)速下降,當溫度進一步下降,電機會停止運行。
仿真結(jié)果分析表明,本文設計的單片機電機溫控自動調(diào)節(jié)系統(tǒng)運行流暢、穩(wěn)定可靠、功率較小、實現(xiàn)了預期的控制要求。
4.3 硬件調(diào)試
根據(jù)電路原理圖將系統(tǒng)各模塊用硬件器材分別焊接組裝出來,最終將各個模塊與單片機接口連接,這樣硬件系統(tǒng)就初步完成。按照整個電路圖用肉眼觀察實物的焊接是否與原理圖一樣,有沒有漏焊、錯焊和松焊的地方。檢查無問題后,可以用萬用表對硬件電路進行進一步檢查。首先檢查系統(tǒng)電源和地線的接通是否正常,然后檢測各器件之間是否有短路、斷路等現(xiàn)象。接下來可以上電查看液晶是否正常運行,然后下載一段液晶顯示程序?qū)σ壕нM行測試,檢查液晶是否能正常顯示字符,同時也可以看出溫度傳感器等是否能正常工作。通過以上測試結(jié)果表明,本系統(tǒng)實現(xiàn)了預期功能。
[1]徐漫琳,李立成,鄭濤,高天露,段開宇. 基于STC89C52單片機的正三棱柱翻轉(zhuǎn)黑板控制系統(tǒng)[J]. 機電工程,2014,11:1441~1446.
[2]金琦淳,李寒霜,陳煒煒. 基于單片機的智能溫控散熱器設計[J]. 現(xiàn)代電子技術,2016,10:113~115.
TM383.6;TP368.12
A
1671-0711(2017)04(上)-0128-02