張成法,郭 芳,賈會祥
(濰坊工程職業(yè)學院,山東 青州 262500)
基于單片機的直流電機控制風扇系統(tǒng)設(shè)計
張成法,郭 芳,賈會祥
(濰坊工程職業(yè)學院,山東 青州 262500)
本設(shè)計采用PWM技術(shù),通過控制AT89C52單片機的I/O端口引腳不斷輸出高低電平來實現(xiàn)PWM信號輸出,從而控制風扇風速,利用單片機控制直流電機的轉(zhuǎn)動來實現(xiàn)對風扇的驅(qū)動。
單片機;直流電機;PWM
利用單片機和PWM技術(shù)實現(xiàn)對直流電機的控制在運動控制領(lǐng)域應用的越來越廣泛。本設(shè)計要求基于AT89C52單片機的控制電路能夠調(diào)整風扇的轉(zhuǎn)動速度和方向。風扇的轉(zhuǎn)動使用直流電機來驅(qū)動,通過AT89C52單片機輸出不同方向的電平來改變直流電機的運轉(zhuǎn),從而改變風扇的轉(zhuǎn)動方向;風扇的轉(zhuǎn)速可以通過AT89C52單片機提供的PWM電壓來控制。
該控制系統(tǒng)是由AT89C52單片機、晶振電路、復位電路、直流電機、彈性按鍵、晶體管等組成。對于直流電機的控制采用的是典型的H橋驅(qū)動電路。該電路中含有4個三極管和一個直流電機。系統(tǒng)原理圖如圖1所示:
圖1 系統(tǒng)原理圖
用直流電機來驅(qū)動風扇的轉(zhuǎn)動。用單片機的P1.0、P1.1引腳來控制直流電機的正反轉(zhuǎn),當P1.0引腳是高電平、P1.1引腳是低電平的時候,會將4個三極管中左上對角線的一對導通,這時電流從左向右流過直流電機,此時電機正轉(zhuǎn);當P1. 0引腳是低電平、P1.1引腳是高電平的時候,會將4個三極管中右上對角線的一對導通,這時電流從右向左流過直流電機,此時電機反轉(zhuǎn)。通過改變電動機的正反轉(zhuǎn),從而改變風扇的轉(zhuǎn)動方向。
利用彈性按鍵S1來調(diào)整風扇的轉(zhuǎn)動方向。當?shù)谝淮伟聪掳存IS1時,直流電機正轉(zhuǎn),當?shù)诙伟聪掳存IS1時,直流電機反轉(zhuǎn),當?shù)谌伟聪掳存IS1時,直流電機又回到第一次的正轉(zhuǎn),依次反復。
利用單片機提供的PWM電壓來控制風扇的轉(zhuǎn)速。利用彈性按鍵S2來控制風扇的轉(zhuǎn)速,風扇的轉(zhuǎn)速有三檔:低檔、中檔和高檔。單片機引腳分別輸出占空比為30%、50%和70%的脈寬調(diào)制信號PWM就可以讓風扇風速處于低檔、中檔和高檔。當?shù)谝淮伟聪掳存IS2時,風扇處于低檔運行,當?shù)诙伟聪掳存IS2時,風扇處于中檔運行,當?shù)谌伟聪掳存IS2時,風扇處于高檔運行,依次循環(huán),根據(jù)按鍵S2被按下的次數(shù)來循環(huán)選擇風速檔位。
在程序中設(shè)置變量flag,表示轉(zhuǎn)向標志位,flag=0表示電機正轉(zhuǎn),flag=1表示電機反轉(zhuǎn),首先檢測按鍵S1是否按下,然后延時10ms左右去除按鍵抖動,再次檢測按鍵S1是否按下,如果按鍵S1確實按下,通過語句flag=~flag改變電機轉(zhuǎn)向。
檢測按鍵S2是否按下,然后延時10ms左右去除按鍵抖動,再次檢測按鍵S2是否按下,如果按鍵S2確實按下,然后統(tǒng)計一下按鍵S2按下去的次數(shù),用switch case語句來實現(xiàn)風扇低檔、中檔和高檔三檔的轉(zhuǎn)換,如果按鍵S2按下去一次,那么風扇在低檔運行,如果按鍵S2按下去兩次,那么風扇在中檔運行,如果按鍵S2按下去三次,那么風扇在高檔運行。
隨著大規(guī)模集成電路技術(shù)的不斷發(fā)展,很多單片機都有內(nèi)置PWM模塊。有些51單片機內(nèi)部沒有PWM模塊,因此本
設(shè)計采用軟件模擬法,這種方法簡單實用,缺點是占用CPU的大量時間。本任務是采用AT89C52單片機輸出不同的PWM脈寬調(diào)制信號來控制風扇風速。單片機讀取連接到P3.3引腳上的按鍵S2的狀態(tài),判斷是請求低檔、中檔還是高檔,來調(diào)整PWM電平信號的占空比,以達到調(diào)節(jié)風扇風速的目的。PWM的占空比越大,直流電機的轉(zhuǎn)動速度越快;PWM的占空比越小,直流電機的轉(zhuǎn)動速度越慢。風扇低中高三檔的實現(xiàn)可以通過單片機P1.0、P1.1引腳輸出不同占空比值的脈寬調(diào)制信號PWM來實現(xiàn)。本系統(tǒng)將PWM占空比為30%時所對應的風扇檔位設(shè)置為低檔(弱風),將PWM占空比為50%時所對應的風扇檔位設(shè)置為中檔(舒適風),將PWM占空比為70%時所對應的風扇檔位設(shè)置為高檔(強風)。以風扇正轉(zhuǎn)、高檔為例講述PWM,讓P1.0引腳輸出高電平,電機轉(zhuǎn)動,然后持續(xù)一段時間t1;讓P1.0引腳輸出低電平,電機停轉(zhuǎn),然后再持續(xù)一段時間t2,使電機轉(zhuǎn)動持續(xù)時間t1與電機停轉(zhuǎn)持續(xù)時間t2的比值為70%,此時PWM的占空比就是70%,風扇風速被設(shè)置在高檔。
本系統(tǒng)部分程序如下所示:
void pwm3()//函數(shù)功能:輸出占空比為70%的脈寬調(diào)制信號(正轉(zhuǎn)、高檔)
文章利用AT89C52單片機作為控制器控制直流電機的轉(zhuǎn)動方向和轉(zhuǎn)速,從而實現(xiàn)對風扇轉(zhuǎn)動方向和速度的控制。該系統(tǒng)設(shè)計簡單,有較好的實用價值。
[1]江世明,許建明,朱群峰,等.單片機原理及應用[M].上海:上海交通大學出版社,2013.
[2]楊紅.基于單片機的電機控制系統(tǒng)研究[J].煤炭技術(shù),2012,31(9):48-49.
Design of DC Fan M otor Control System based on MCU
ZHANG Cheng-fa,GUO Fang,JIA Hui-xiang
(Weifang Engineering Vocational College,Qingzhou,Shandong 262500,China)
The design adopts PWM technology and realizes PWM signal output through outputting high and low current by controlling at I/O portpin of AT89C52 single chipmicrocomputer,so as to control the fan speed.It realizes fan drive by controlling dcmotor rotationwith single chipmicrocomputer.
single chipmicrocomputer;DCmotor;PWM
TP368.1
A
2095-980X(2016)11-0059-02
2016-10-07
張成法(1984-),男,山東青州人,碩士研究生,主要研究方向:單片機與嵌入式系統(tǒng)。