摘? 要:為解決直流電機控制功率小、調(diào)速頻繁等問題,對其晶體管組成的H橋驅(qū)動電路予以改進。系統(tǒng)基于AT89S51單片機為核心,硬件采用直流繼電器結(jié)構(gòu),軟件編程實現(xiàn)不同占空比的PWM脈沖輸出。經(jīng)Keil C51、Proteus仿真及虛擬儀器的數(shù)據(jù)波形監(jiān)測,并通過實際調(diào)試與運行,表明可實現(xiàn)控制功能,并且具有功率大、成本低、工作可靠、控制電壓范圍廣、沒有發(fā)熱現(xiàn)象等特點。
關(guān)鍵詞:單片機;PWM;H橋驅(qū)動;軟件仿真
中圖分類號:TP368.1? ? ? 文獻標識碼:A 文章編號:2096-4706(2021)01-0048-04
Improvement of DC Motor PWM Control System Based on Single chip? Microcomputer
GAO Zhiwei
(College of Intelligent Manufacturing,Henan Technician College,Zhengzhou? 450007,China)
Abstract:In order to solve the problems of low control power and frequent speed regulation of DC motor,the H-bridge driving circuit composed of transistors is improved. The system is based on the AT89S51 single chip microcomputer as the core,the hardware adopts a DC relay structure,and the software programming realizes the PWM pulse output with different duty cycles. The data waveform monitoring of Keil C51,Proteus simulation and virtual instrument,and the actual debugging and operation show that the control function can be realized,and it has the characteristics of high power,low cost,reliable operation,wide control voltage range,and no heating phenomenon.
Keywords:single chip microcomputer;PWM;H-bridge driving;software simulation
0? 引? 言
作者針對全國職業(yè)院校技能競賽機電一體化項目中機械手的定位系統(tǒng),特別是直流電機的驅(qū)動和運行控制部分。選擇對原有的晶體管H橋電路進行改進,使用雙直流繼電器交替工作實現(xiàn)轉(zhuǎn)向控制。為簡化硬件電路實現(xiàn)靈活控制和完善,采用C語言編程對轉(zhuǎn)速精確控制。同時,由于直流電機具有起動和調(diào)速性能好、調(diào)速范圍廣平滑、過載能力較強、受電磁干擾影響小等特點,改進的控制系統(tǒng)也可在電動車、地鐵、精密裝備等行業(yè)廣泛應用。
根據(jù)直流電動機的電壓平衡方程式,即U=E+IaRa、E=CeΦn,其中,U為外加于轉(zhuǎn)子線圈的直流電源電壓,Ra為轉(zhuǎn)子繞組總的等效電阻,E為轉(zhuǎn)子轉(zhuǎn)動時轉(zhuǎn)子線圈產(chǎn)生的總的感應電動勢,Ia為流過電樞繞組的總電流,Ce為電動勢常數(shù),Φ為繞組每極的磁通量。
可知轉(zhuǎn)速公式為:
n=(U-IaRa)/CeΦ
從式中可以看出,改變轉(zhuǎn)速,可調(diào)節(jié)電樞電壓,且屬恒轉(zhuǎn)矩調(diào)速方法,動態(tài)響應快。改變轉(zhuǎn)向,要從自動調(diào)換電樞電壓的極性入手。系統(tǒng)的改進需要明確控制思路、完善硬件設(shè)計步驟、優(yōu)化程序執(zhí)行流程、精確分析運行結(jié)果,從以下方面著手。
1? 控制思路
1.1? 轉(zhuǎn)向控制
脈沖寬度調(diào)制(Pulse Width Modulation,PWM)技術(shù)具有兩個很重要的參數(shù):頻率和占空比[1]。頻率,就是周期的倒數(shù);占空比,就是高電平在一個周期內(nèi)所占的比例。如圖1所示,頻率F的值為1/(T1+T2),占空比D的值為T1/(T1+T2)。通過改變單位時間內(nèi)脈沖的個數(shù)可以實現(xiàn)調(diào)頻;通過改變占空比可以實現(xiàn)調(diào)壓。占空比越大,所得到的平均電壓也就越大,幅值也就越大;占空比越小,所得到的平均電壓也就越小,幅值也就越小。只要改變PWM信號的占空比,就可以改變直流電機兩端的平均電壓,從而實現(xiàn)直流電機的調(diào)速。只要單片機(MCU)編程輸出不同時間的延時,即占空比可調(diào)的方波,就可控制電機兩端的電壓,從而實現(xiàn)電機轉(zhuǎn)速的控制。
1.2? 轉(zhuǎn)速控制
改變電機兩端的電源極性可以改變電機的轉(zhuǎn)速,需要通過H橋電路來實現(xiàn),無論是三極管還是直流繼電器組成的H橋,都是把直流電機接在橋中間,對臂元件輪流導通改變電源的極性。如圖2所示,只需單片機編程分時輸出高低電平,即可控制H橋的導通與截止情況,進而控制電壓極性,實現(xiàn)對轉(zhuǎn)向的控制。
2? 硬件設(shè)計
2.1? H橋驅(qū)動電路的設(shè)計
H橋電路由四個功率電子開關(guān)構(gòu)成,可以是晶體管或者MOS管,如圖3所示。電子開關(guān)兩兩構(gòu)成橋臂,在同一時刻只要對角的兩個電子開關(guān)導通,另外兩個截止,且每個橋臂的上下管不能同時導通,通過這個電路就可以實現(xiàn)電機的正反轉(zhuǎn)調(diào)速。正轉(zhuǎn)時,V5、V6接高電平,V3、V4接低電平,V4、V5導通,V3、V6截止,電流的流向為:VCC→V5→電機+→電機-→V4→GND。反轉(zhuǎn)時,V5、V6接低電平,V3、V4接高電平,V4、V5截止,V3、V6導通,電流的流向為:VCC→V3→電機-→電機+→V6→GND[2]。在實際使用分離元器件時,必須要嚴格控制死區(qū)時間,不能讓每個橋臂上的電子開關(guān)同時導通,這樣容易導致電源短路,電流過大,會把兩個電子開關(guān)燒壞。也可使用專用的H橋芯片,比如L298N、L293D等,適用于驅(qū)動小功率的直流電機的場合。同時,由于晶體管的開關(guān)特性,其通斷的頻次可以更高,即可以輸出頻率高的PWM脈沖以對電機進行控制,適用于小功率、高頻率、高轉(zhuǎn)速的場合。
對于控制大功率直流電機,可以使用繼電器控制,如圖4所示。因單片機輸出為+5 V,直流電機的工作電壓為12 V或24 V,通過三極管驅(qū)動并控制線圈的得電與失電。若繼電器K1得電,則電機兩端所加電壓的極性為左正右負;若K2得電,則為左負右正,即可改變電機的轉(zhuǎn)速。線圈上承載高電壓,讓控制電路流經(jīng)較小電流。但繼電器驅(qū)動存在不能頻繁工作并且繼電器的火花會對外圍電路產(chǎn)生一定的干擾等現(xiàn)象。另外,如果繼電器線圈吸合、斷開的頻次太快,則會導致噪聲大且工作不安全等問題,適用于大功率、低頻率、低轉(zhuǎn)速的場合。
2.2? 控制電路設(shè)計
整體電路設(shè)計如圖5所示,以單片機為控制核心,電源、時鐘、復位電路組成其最小系統(tǒng)。輸入部分包括轉(zhuǎn)向和轉(zhuǎn)速控制,轉(zhuǎn)向控制接在P3.2引腳,轉(zhuǎn)速控制接在P3.3引腳,均通過外部中斷實現(xiàn);輸出部分包括P1.0、P1.1引腳,控制H橋。因直流電機額定電壓為24 V,繼電器線圈工作電壓的選擇也為12 V(在Proteus仿真時統(tǒng)一采用12 V,實際制作時可用光耦實現(xiàn)電壓轉(zhuǎn)換)[3];因三極管選用NPN型,故輸出高電平時導通,使電源、線圈、三極管組成閉合回路。
3? 程序流程圖及軟件設(shè)計
3.1? 流程圖
在如圖6所示的主程序流程圖中,程序開始后首先進行初始化狀態(tài)的設(shè)置,比如電機是停止的、轉(zhuǎn)速次數(shù)當前值為1、單片機的雙向I/O口為高電平、外部中斷0及外部中斷1的相關(guān)參數(shù)設(shè)置(IE、TCON寄存器)等[4]。然后判斷標志位的狀態(tài),以決定電機處于正轉(zhuǎn)還是反轉(zhuǎn)。最后根據(jù)轉(zhuǎn)速變量記錄的次數(shù),調(diào)整至低速、高速、中速對應函數(shù)執(zhí)行。
中斷服務(wù)子程序如圖7和圖8所示,根據(jù)中斷類型號先找到對應入口地址。對于轉(zhuǎn)向子程序來說,執(zhí)行中斷就是改變標志位的狀態(tài),定義位變量(bit數(shù)據(jù)類型,取值為0或1),以表示電機處于正轉(zhuǎn)或者反轉(zhuǎn)狀態(tài);對于轉(zhuǎn)速子程序來說,執(zhí)行中斷就是記錄按下次數(shù),定義無符號字符型變量(unsigned char數(shù)據(jù)類型,取值為0~255),根據(jù)實際運行效果,變量只可能取1、2、3三個數(shù)值,以表示低速、中速、高速,如果超出范圍,重新置1,實現(xiàn)低-中-高速循環(huán)。
3.2? 軟件設(shè)計
程序開始時,用#include?
程序設(shè)計結(jié)構(gòu)化,將功能性、需重復執(zhí)行的內(nèi)容定義為子函數(shù)。程序中如若用到,只需調(diào)用即可,大大提高了執(zhí)行效率。正反轉(zhuǎn)的低速、中速、高速程序類似,只需改變單片機I/O口的輸出狀態(tài)和PWM函數(shù)的參數(shù),用switch語句實現(xiàn)多分支結(jié)構(gòu)的選擇。
3.3? PWM子函數(shù)
以低速正轉(zhuǎn)子程序為例,如圖9(a)所示。DJA、DJB變量分別定義的是P1.0和P1.1端口,DJA=1、DJB=0表示電機處于正轉(zhuǎn)(Q1導通、Q2截止,繼電器RL1線圈得電、RL2線圈失電,電機的+、-電源端分別接電源的高、低電位)。延時函數(shù)delay()后面的參數(shù)表示輸出PWM脈沖高電平的時間[5],DJA=0;delay(1 680)表示輸出低電平的時間,則占空比為[720÷(720+1 680)]×100%=30%。通過調(diào)整延時函數(shù)的參數(shù)即可得到50%、70%占空比,從而輸出不同的PWM脈沖。由于PWM的頻率一般選在25 kHz左右,低于20 kHz會產(chǎn)生人耳可辨的電磁音,所以應選擇合適的延時時間(本例中延時函數(shù)的參數(shù)設(shè)置:高電平為720,低電平為1 680),以決定輸出頻率,主程序調(diào)試過程如圖9(b)所示。
4? 系統(tǒng)調(diào)試與分析
經(jīng)過作者繪制電路圖、編輯C語言源程序、Keil和Proteus聯(lián)調(diào)等過程,借助于虛擬儀器(示波器、直流電壓表等)[6]等數(shù)據(jù)和波形分析,軟件仿真效果圖如圖10所示(占空比為70%時)。并結(jié)合實際硬件制作和調(diào)試運行,可看到:當按下轉(zhuǎn)向按鈕時,電機能實現(xiàn)正反轉(zhuǎn)控制;當按下轉(zhuǎn)速按鈕,分別切換至低、中、高速時,示波器上顯示波形的占空比發(fā)生改變,轉(zhuǎn)速隨之變化。
該控制系統(tǒng)硬件設(shè)計簡單,可根據(jù)應用電路適時補充和完善;軟件編程層次分明,函數(shù)的定義與使用能簡潔程序結(jié)構(gòu),減少冗余的指令,提高執(zhí)行效率;按鈕采用外部中斷的中斷方式,節(jié)省了單片機內(nèi)部資源,避免了按鍵抖動等問題,使程序執(zhí)行更實時、準確。
5? 結(jié)? 論
基于單片機的直流電機PWM控制系統(tǒng)結(jié)構(gòu)簡單、控制靈活,可根據(jù)實際控制要求不斷拓展。若要求無級調(diào)速、控制轉(zhuǎn)速更準確、噪音更低,則可以在輸入端擴展紅外光電碼盤或霍爾器件,配合光電耦合器的電壓轉(zhuǎn)換和隔離作用,提高抗干擾能力,準確測量直流電機的轉(zhuǎn)速。還可在輸出端擴展A/D轉(zhuǎn)換和數(shù)碼管動態(tài)顯示(LCD),直觀監(jiān)測轉(zhuǎn)速、轉(zhuǎn)向、電壓、PWM脈沖等信息,使整個控制系統(tǒng)更直觀、更全面。
參考文獻:
[1] 肖振興.直流電機變速的PWM波的幾種產(chǎn)生方法 [J].現(xiàn)代信息科技,2020,4(11):42-44.
[2] 王靜霞.單片機應用技術(shù)(C語言版):第3版 [M].北京:電子工業(yè)出版社,2015.
[3] 陳新兵,胡維,龍曉莉,等.基于Proteus的直流電機控制教學探索 [J].中國教育技術(shù)裝備,2020(10):31-34.
[4] 李瑾.基于51單片機的PWM直流調(diào)速風扇控制系統(tǒng) [J].機械工程與自動化,2018(1):187-189.
[5] 王文成,李健.基于單片機的電機轉(zhuǎn)速測量系統(tǒng)的設(shè)計 [J].儀表技術(shù)與傳感器,2011(8):70-72.
[6] 孫萬麟,宋莉莉,韓晨.基于Keil+Proteus的單片機實驗設(shè)計及仿真 [J].系統(tǒng)仿真技術(shù),2020,16(3):181-184.
作者簡介:高志偉(1985—),男,漢族,河南洛陽人,講師,高級技師,本科,研究方向:機電一體化。