丁洪義
(佛山市順德區(qū)立創(chuàng)電子有限公司 廣東佛山 528000)
摘 要:文章結(jié)合具體操作應(yīng)用,通過運用具有PWM技術(shù)的單片機控制系統(tǒng)來實現(xiàn)控制風扇的轉(zhuǎn)速及轉(zhuǎn)向,為直流電機的運動控制領(lǐng)域提供技術(shù)實現(xiàn),以期為有關(guān)方面提供參考借鑒。
關(guān)鍵詞:單片機;調(diào)速系統(tǒng);控制
直流電動機是工業(yè)生產(chǎn)中的主要驅(qū)動設(shè)備,隨著當下電力電子技術(shù)及單片機應(yīng)用的發(fā)展,基于單片機控制的PWM直流調(diào)速系統(tǒng)的應(yīng)用開始在使用中推廣。通過單片機的輸出電壓可以改變直流電機的運轉(zhuǎn),從而改變風扇的轉(zhuǎn)動速度及轉(zhuǎn)動方向,具有一定的研究應(yīng)用作用。
1 系統(tǒng)硬件設(shè)計
該控制系統(tǒng)是由AT89C52單片機、晶振電路、復位電路、直流電機、彈性按鍵、晶體管等組成。對于直流電機的控制采用的是典型的H橋驅(qū)動電路。該電路中含有4個三極管和一個直流電機。系統(tǒng)原理圖如圖1所示:
用直流電機來驅(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)選擇風速檔位。
2 系統(tǒng)軟件設(shè)計
在程序中設(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的大量時間。本任務(wù)是采用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%時所對應(yīng)的風扇檔位設(shè)置為低檔(弱風),將PWM占空比為50%時所對應(yīng)的風扇檔位設(shè)置為中檔(舒適風),將PWM占空比為70%時所對應(yīng)的風扇檔位設(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)、高檔)
{ D JB=0;
D JA=1;//電機轉(zhuǎn)動
delay(1680);//延時,電機轉(zhuǎn)動的時長
D JA=0;//電機停轉(zhuǎn)
delay(720); //延時,調(diào)整電機停轉(zhuǎn)的時長}
switch(number)
{ case 0x01:pwm1();break;//低檔,弱風
case 0x02:pwm2();break;//中檔,舒適風
case 0x03:pwm3();break;//高檔,強風
default:;}
3 結(jié)語
綜上所述,通過將單片機作為控制器,操作直流電機的轉(zhuǎn)動方向和轉(zhuǎn)速,進而實現(xiàn)對風扇轉(zhuǎn)動方向和速度的控制。該系統(tǒng)設(shè)計簡單,系統(tǒng)運行穩(wěn)定,可以方便地用于直流電機的調(diào)控,有較好的實用價值,可為后續(xù)產(chǎn)品的研發(fā)做好基礎(chǔ)。
參考文獻:
[1]盧春華、姚海燕、張莉.基于單片機的直流電機調(diào)速系統(tǒng)設(shè)計[J].硅谷.2009(20)
[2]茹占軍、謝家興.基于AT89S52單片機直流電機調(diào)速系統(tǒng)的設(shè)計[J].軟件導刊.2010(08)08endprint