西北民族大學 邵 博
針對風扇在運行的過程中,無法進行智能調速,本文設計了一個自動調速系統(tǒng)。由DS18b20進行溫度采集,在系統(tǒng)內設置了溫度閾值,由于溫度的不同,單片機會根據(jù)函數(shù)關系輸出不同占空比的PWM波,其中溫度數(shù)據(jù)每兩分鐘更新一次,從而智能地實現(xiàn)了風扇的轉速控制。同時,為了方便部分人群的使用,本項目仍保留了傳統(tǒng)的按鍵控制檔位的功能,并還在其基礎上增加了藍牙模塊,更加方便用戶遠程控制風扇轉速。其中轉速,溫度以及風扇狀態(tài)由LCD1602進行顯示。
目前市場上傳統(tǒng)的電風扇大都是通過按鍵來調節(jié)檔位的,極個別廠家推出的新型電風扇也可以通過紅外遙控的方式來改變檔位。這兩種方式都隱含的一點是轉速的調節(jié)必須要通過人的參與。在某些場合下,如睡眠時,人無法參與到檔位的調節(jié),風扇就會一直以恒定的轉速轉動。這不僅浪費電能,同時也給部分人帶來諸多不便。本設計中的智能遠程風扇控制系統(tǒng),通過DS18B20采集溫度,根據(jù)溫度數(shù)據(jù)定時調整風扇的轉速,在無需人的參與下實現(xiàn)風速的自動調節(jié)。同時其擴展的藍牙通信功能也比紅外遙控的實用性更強。
本系統(tǒng)以STC89C52作為主控單元。模擬溫度量由DS18B20進行采集并轉換成數(shù)字量,之后單片機中再對DS18B20中的溫度數(shù)據(jù)進行讀取,通過溫度值來產(chǎn)生相應占空比的PWM波對電機進行調速。之后溫度數(shù)據(jù)與電機轉速數(shù)據(jù)再送到LCD1602A中顯示。并且,本設計還可支持另外兩種方式對風扇轉速進行調節(jié)。故本設計共存在三種模式,即自動模式、手動按鍵模式、遠程操控模式。具體的系統(tǒng)硬件框圖如圖1所示。
圖1 系統(tǒng)硬件框圖
本設計所選取的單片機是STC公司的STC89C52,它是一款8位的低功耗、高性能的單片機,內部集成8KB的FLASH,1KB的RAM,以及高性能CMOS8的微處理器。并且價格經(jīng)濟實惠,抗干擾能力強,其運算能力基本滿足本設計的需要。
智能風扇控制系統(tǒng)選用的是DS18B20溫度傳感器,該傳感器由美國的DALLAS半導體公司所推出,與傳統(tǒng)的熱敏電阻等測溫元件相比,它內部已經(jīng)集成有模數(shù)轉換模塊,因此可直接采集到被測溫度的數(shù)字信號,方便單片機進行數(shù)據(jù)處理。并且還可根據(jù)實際要求通過簡單的編程實現(xiàn)9-12位的不同精度的讀取方式。
本系統(tǒng)所采用的通信模塊是ALIENTEK公司生產(chǎn)的ATK-HC05藍牙模塊,此模塊性能高且具有主從一體的通訊方式,可以與各種帶藍牙功能的智能終端進行配對。并且該模塊具有寬波特率范圍:4800-1382400,還能兼容5V的單片機最小系統(tǒng)。再者,ATKHC05模塊非常小巧(16mm×32mm),模塊通過6個2.54mm間距的排針與外部連接,可以很方便與本設計進行連接,使用非常靈活、方便。
智能風扇控制系統(tǒng)選用的是LCD1602A液晶顯示器,此液晶顯示器功耗低、可顯示兩行的內容,支持ASCII碼的顯示。適用于智能風扇控制系統(tǒng)這種小型設計。
L298N目前是比較主流的電機驅動模塊,它可實現(xiàn)電動機正反轉及調速;啟動性能好,啟動轉矩大;工作電壓可達到36V,內含兩個H橋的高電壓大電流全橋式驅動器,可以用來驅動直流電動機和步進電動機、繼電器線圈等感性負載。
本系統(tǒng)選用的是微型130電機電動馬達,具有體積小,噪音低,高效率,大扭力,使用壽命長,穩(wěn)定可靠,直流供電,節(jié)省電能且產(chǎn)生熱量低等性能特點。
系統(tǒng)的主程序首先需要進行一些初始化的操作,例如:對LCD1602的初始化,對DS18B20的初始化,電機的初始化等。之后則是循環(huán)查詢DS18B20的狀態(tài),以讀取當前的溫度值,并對溫度進行處理,溫度值的BCD碼處理后,將其段碼送顯示緩沖區(qū),以備定時掃描服務程序處理。并將獲得的當前溫度值與設定溫度值進行實時比較,進而來對風扇轉速實時調節(jié),達到最優(yōu)降溫效果。
該程序可以實現(xiàn)自主循環(huán),因不同的控制模式,可產(chǎn)生相應的調速效果,以達到最優(yōu)降溫效果。具體流程圖如圖2所示。
圖2 主程序流程圖
溫度檢測程序主要是讀出存儲在DS18B20里的RAM中的數(shù)據(jù),單片機直接讀取其中的字節(jié)地址,并且在讀出時進行CRC校驗,校驗正確時才能對溫度數(shù)據(jù)進行讀取和改寫。具體過程如下:首先對DS18B20進行參數(shù)設定和初始化,以驅動DS18B20進行溫度轉化,讀取溫度。讀取的溫度經(jīng)CRC校驗后若無異常,則返回讀取溫度,對比檢驗后對系統(tǒng)的相關參數(shù)進行設定;若出現(xiàn)異常情況則調用相應的控制程序進行對應處理。程序流程圖3所示。
圖3 溫度檢測程序
智能溫度控制模式下,單片機定時采集溫度,從而自動的對風速進行調節(jié),達到不同的降溫效果。其上的液晶顯示模塊顯示當前的實時溫度、當前風扇開閉情況、當前風扇檔位。整個系統(tǒng)接通電源進行初始化之后,顯示屏幕的第一行顯示NTT(當前溫度);第二行顯示風扇開閉情況(ON:風扇開啟;OFF:風扇關閉),以及當前風扇檔位。調試圖如圖4所示。由此可見,智能溫度控制模式能正常工作。
圖4 智能溫度控制調試圖
利用STC89C52單片機的串口通訊原理,書寫藍牙串口通訊程序。測試時,從手機APP藍牙串口向STC89C52單片機發(fā)送指令,單片機接收到指令后,在其定義引腳上發(fā)出相應的電平信號,從而控制L298N驅動模塊,對直流電機進行調速控制。具體工作的效果如圖5所示。
圖5 遠程溫度控制調試圖
結論:本次系統(tǒng)通過模塊化的設計方式成功的實現(xiàn)了系統(tǒng)的所有功能。將單片機用于風扇系統(tǒng)的控制當中,極大的提升了系統(tǒng)的智能性,使得無需在人的干預下,仍能使風扇轉速自動改變。本系統(tǒng)的遠程調速則是用到了藍牙通信的方式,在某些條件下,給了用戶更好的操作體驗。本設計為智能風扇的發(fā)展提供了一定的思路與理念,期待后人的繼續(xù)完善。