全國熱線電話:

0519-8918 1758
產品中心PRODUCT SHOW
聯系我們CONTACT US

    聯系人:聶經理

    手機:18605199068  18602586200

    電話:0519-89181758  83700750  

    Q Q:710285815

    郵箱:18605199068@126.com

    地址:江蘇省常州市武進區(qū)大通西路200號。

直流無刷電機和無刷直流電機信息智能網

51單片機通過脈寬調制PWM來控制電動機實現調速的設計
2022-06-20

直流電動機轉速N的表達式為:N=U-IR/Kφ 由上式可得,直流電動機的轉速控制方法可分為兩類:調節(jié)勵磁磁通的勵磁控制方法和調節(jié)電樞電壓的電樞控制方法。其中勵磁控制方法在低速時受磁極飽和的限制,在高速時受換向火花和換向器結構強度的限制,并且勵磁線圈電感較大,動態(tài)響應較差,所以這種控制方法用得很少?,F在,大多數應用場合都使用電樞控制方法。 對電動機的驅動離不開半導體功率器件。在對直流電動機電樞電壓的控制和驅動中,對半導體器件的使用上又可分為兩種方式:線性放大驅動方式和開關驅動方式。 線性放大驅動方式是使半導體功率器件工作在線性區(qū)。這種方式的優(yōu)點是:控制原理簡單,輸出波動小,線性好,對鄰近電路干擾??;但是功率器件在線性區(qū)工作時由于產生熱量會消耗大部分電功率,效率和散熱問題嚴重,因此這種方式只用于微小功率直流電動機的驅動。絕大多數直流電動機采用開關驅動方式。開關驅動方式是使半導體器件工作在開關狀態(tài),通過脈寬調制PWM來控制電動機電樞電壓,實現調速。 ? 在PWM調速時,占空比α是一個重要參數。以下3種方法都可以改變占空比的值。 (1)定寬調頻法 這種方法是保持t1不變,只改變t2,這樣使周期T(或頻率)也隨之改變。 (2)調頻調寬法 這種方法是保持t2不變,只改變t1,這樣使周期T(或頻率)也隨之改變。 (3)定頻調寬法 這種方法是使周期T(或頻率)保持不變,而同時改變t1和t2。 前兩種方法由于在調速時改變了控制脈沖的周期(或頻率),當控制脈沖的頻率與系統(tǒng)的固有頻率接近時,將會引起振蕩,因此這兩種方法用得很少。目前,在直流電動機的控制中,主要使用定頻調寬法。 直流電動機雙極性驅動可逆PWM控制系統(tǒng) 雙極性驅動則是指在一個PWM周期里,作為在電樞兩端的脈沖電壓是正負交替的。 雙極性驅動電路有兩種,一種稱為T型,它由兩個開關管組成,采用正負電源,相當于兩個不可逆控制系統(tǒng)的組合。但由于T型雙極性驅動中的開關管要承受較高的反向電壓,因此只用在低壓小功率直流電動機驅動。 另一種稱為H型。 H型雙極性驅動 1. 電動機控制電路模塊 H橋電動機驅動電路的工作原理: A:當單片機的P0.0腳輸出高電平,而P0.1腳輸出低電平時,通過光電耦合器后仍然輸出為高電平,使Q4管導通,此時Q1也處于導通狀態(tài),但Q2管的基極的電位被強行拉低,Q2管處于截止狀態(tài)。由于單片機的P0.1腳輸出低電平, Q8處于截止狀態(tài),而此時Q7因為Q5的截止而處于導通狀態(tài),從而使電動機形成回路,電機正常工作。 B:同理可得,當P0.0腳輸出低電平,而P0.1腳輸出高電平時,三極管的狀態(tài)與上述相反,電機同樣處于正常工作狀態(tài)。 C:當P0.0腳和P0.1同時為高電平或低電平,由于Q4與Q8和Q3與Q7的工作狀態(tài)相同,同時處于導通或截止,使電機兩斷電位相同,無法使電機形成閉和回路,電機不工作,著就是所謂本設計所提及的剎車狀態(tài)。 由于電路中在驅動功率管的發(fā)射極各添加了一個小電感,目的是為了使電機驅動電壓更加穩(wěn)定,得到較為平滑的驅動電壓,從而增加了剎車時動作的準確性,減少電機的在起動和停止的瞬間產生過大的電壓對功率管的沖擊,導致功率管的損壞。同時也提高了電機的剎車控制可靠性和準確性,不至于因慣性而導致控制上產生較大的誤差。 該橋的優(yōu)點是電路的原理簡單、易控制、功耗低帶負載能力強、剎車的精度很高而且價格低廉。在驅動電路的控制信號輸入斷采用了光電隔離技術,減小H橋電機驅動電路對單片機的干擾,實現模擬電路與數字電路的隔離。在單片機的配合下,通過PWM調節(jié)脈寬的方法,實現了對驅動電機的輕松調速,通過鍵盤的配置可以對體的參數進行修改,可以使電機適應各種不同的工作狀態(tài),而實現智能控制的目的。正因為采取了PWM該技術,使我們完成基本要求的過程變得簡單易行。 在電路中所采取的功率管為中功率管,其中將驅動功率管設計為靈活替換方式,可以根據實際驅動電路的需要,從而調整功率管的型號而不用另行更改電路,就可以滿足電路控制的要求 2、軟件模塊部分 在速度控制方面,一般是能通過改變加在電機兩端的電壓來實現的,可以是連續(xù)改變(加直流電壓),也可以是斷續(xù)改變(加脈沖電壓)。為了簡單用,我們采用了脈寬調速,脈寬的變化可以通過硬件或軟件來實現。 方案一 硬件實現是通過改變振蕩電路中RC參數來調整充放電時間。若用硬件電路來實現,在穩(wěn)定性方面得不到保證。 方案三 用軟件的作法是通過設置高電平及低電平的保持時間來達到PWM的脈寬調制目的。 就比較而言,軟件調整量化指標更高、調整更可靠、更方便、更準確。因此在設計時,常考慮方案二。 脈沖頻率對電機轉機也有影響,脈沖頻率高連續(xù)性好,但帶負載能力差,頻率低則反之。經實驗發(fā)現,脈沖頻率在15━20HZ效果最佳。在本設計中采用了20HZ進行設計。 脈沖調速實質上是調節(jié)加在電機兩端的平均功率,通過計算可發(fā)現電機的速度與脈寬成正比。 軟件編程的考慮是設置脈寬這個變量。在P0.0,P0.1的輸出控制信號來產生20HZ可調脈寬方波。 下面是51單片機的實驗程序 #include 《 reg51.h 》 #include 《 intrins.h 》 sbit K1 =P1^4 ; //增加鍵 sbit K2 =P1^5 ; //減少鍵 sbit P00 =P0^1; sbit BEEP =P3^7 ; //蜂鳴器 unsigned char PWM=0xe7; //賦初值 void Beep(); void delayms(unsigned char ms); void delay(unsigned char t); /*********************************************************/ void main() { P1=0xff; TMOD=0x21 ; TH0=0xff ; //50us延時常數 TL0=0xce ; //頻率調節(jié) TH1=PWM ; //脈寬調節(jié) TL1=0 ; EA=1; ET0=1; ET1=1; TR0=1 ; while(1) { do{ if(PWM!=0xff) {PWM++ ;delayms(10);} else Beep() ; } while(K1==0); do{ if(PWM!=0xce) {PWM-- ;delayms(10);} else Beep() ; } while(K2==0); } } void TImer0() interrupt 1 { TR1=0 ; TH0=0xff ; TL0=0xce ; TH1=PWM ; TR1=1 ; P00=0 ; //啟動輸出 } void TImer1() interrupt 3 { TR1=0 ; P00=1 ; //結束輸出 } /*********************************************************/ //蜂鳴器子程序 /*********************************************************/ void Beep() { unsigned char i ; for (i=0 ;i《100 ;i++) { delay(100) ; BEEP=!BEEP ; //Beep取反 } BEEP=1 ; //關閉蜂鳴器 delayms(100); } /*********************************************************/ // 延時子程序 /*********************************************************/ void delay(unsigned char t) { while(t--) ; } /*********************************************************/ // 延時子程序 /*********************************************************/ void delayms(unsigned char ms) { unsigned char i ; while(ms--) { for(i = 0 ; i 《 120 ; i++) ; } } 來源;21ic

0519-8918 1758
聯系人:聶經理 郵箱:niejli@126.com 地址:江蘇省常州市武進區(qū)大通西路200號。 電話:0519-8918 1758

版權所有 ? 常州永沛機電技術有限公司 直流無刷電機|無刷直流電機|直流防爆電機|常州永沛機電技術有限公司|電動平車電機|電動船電機|直流減速電機


蘇ICP備13004000號