單片機實(shí)現的步進(jìn)電機控制系統具有成本低、使用靈活的特點(diǎn),廣泛應用于數控機床、機器人,定量進(jìn)給、工業(yè)自動(dòng)控制以及各種可控的有定位要求的機械工具等應用領(lǐng)域。步進(jìn)電機是數字控制電機,將脈沖信號轉換成角位移,電機的轉速、停止的位置取決于脈沖信號的頻率和脈沖數,而不受負載變化的影響,非超載狀態(tài)下,根據上述線(xiàn)性關(guān)系,再加上步進(jìn)電機只有周期性誤差而無(wú)累積誤差,因此步進(jìn)電機適用于單片機控制。步進(jìn)電機通過(guò)輸入脈沖信號進(jìn)行控制,即電機的總轉動(dòng)角度由輸入脈沖總數決定,而電機的轉速由脈沖信號頻率決定。步進(jìn)電機的驅動(dòng)電路是根據單片機產(chǎn)生的控制信號進(jìn)行工作。因此,單片機通過(guò)向步進(jìn)電機驅動(dòng)電路發(fā)送控制信號就能實(shí)現對步進(jìn)電機的控制。
1 系統設計原理
步進(jìn)電機控制系統主要由單片機、鍵盤(pán)LED、驅動(dòng)/放大和PC上位機等4個(gè)模塊組成,其中PC機模塊是軟件控制部分,該控制系統可實(shí)現的功能:1)通過(guò)鍵盤(pán)啟動(dòng)/暫停步進(jìn)電機、設置步進(jìn)電機的轉速和改變步進(jìn)電機的轉向;2)通過(guò)LED管顯示步進(jìn)的轉速和轉向等工作狀態(tài);3)實(shí)現三相或四相步進(jìn)電機的控制:4)通過(guò)PC上位機實(shí)現對步進(jìn)電機的控制(啟停、轉速和轉向等)。為保護單片機控制系統硬件電路,在單片機和步進(jìn)電機之間增加過(guò)流保護電路。圖l為步進(jìn)電機控制系統框圖。

2 系統硬件電路設計
2.1 單片機模塊
單片機模塊主要由MSP430FG4618單片機及外圍濾波、電源管理和晶振等電路組成。MSP430FG4618單片機內部的8 KB RAM和116 KB Flash滿(mǎn)足控制系統的存儲要求,P1和P2端口在步進(jìn)電機工作過(guò)程中根據按鍵狀態(tài)判斷是否跳入中斷服務(wù)程序來(lái)改變步進(jìn)電機的工作狀態(tài),USART模塊實(shí)現單片機和PC上位機之間的通信,實(shí)現PC機對步進(jìn)電機控制。電源管理電路提供穩定的3.3 V和5 V電壓,分別給單片機、晶振電路和驅動(dòng)和功率放大電路供電。32 kHz晶振給單片機、鍵盤(pán)/顯示接口器件8279和脈沖分配器PMM8713提供時(shí)鐘;當采用USART模塊時(shí)需開(kāi)啟8MHz晶振設置通信模塊。圖2為單片機模塊結構框圖。

2.2 鍵盤(pán)/LED模塊
為實(shí)現人機對話(huà),該系統設計擴展了3x4按鈕矩陣鍵盤(pán)和4片8段LED數碼管,可手動(dòng)直接操作該控制系統。系統上電后,通過(guò)鍵盤(pán)輸入步進(jìn)電機的啟停、步數轉速和轉向等,由LED管動(dòng)態(tài)顯示步進(jìn)電機的轉速和轉向。鍵盤(pán)的輸入和LED管的輸出由8279進(jìn)行控制,減少單片機工作負擔。8279編程工作在鍵盤(pán)掃描輸入方式,讀入鍵盤(pán)時(shí)具有去抖動(dòng)功能,避免誤觸發(fā)。圖3為鍵盤(pán)LED模塊設計結構框圖。

2.3 驅動(dòng)/放大模塊
控制系統采用步進(jìn)電機控制用的脈沖分配器(又稱(chēng)邏輯轉換器)PMM8713,該器件是CMOS集成電路,相輸出驅動(dòng)能力(源電流或吸入電源)為20 mA,適用于控制三相或四相步進(jìn)電機,可選擇下列6種激勵方式:三相步進(jìn)電進(jìn):1相,2相,1-2相;四相步進(jìn)電進(jìn):1相,2相,1-2相。輸入方式可選擇單時(shí)鐘(加方向信號)和雙時(shí)鐘(正轉或反轉時(shí)鐘)兩種方式,具有正反轉控制、初始化復位、原點(diǎn)監視、激勵方式監視和輸入脈沖監視等功能。器件PMM8713由時(shí)鐘選通、激勵方式控制、激勵方式判斷和可逆環(huán)形計數器等部分構成,所有輸入端內都設有施密特電路,可提高抗干擾能力。PMM8713輸出需接功率驅動(dòng)電路,選用功率驅動(dòng)器PMM2101,最大輸出電流為1.4 A,滿(mǎn)足驅動(dòng)步進(jìn)電機的要求。驅動(dòng)/放大電路如圖4所示。MSP430單片機通過(guò)調節PMM8713的端口1~4輸入脈沖信號控制步進(jìn)電機的啟停、速度和轉向等。

3 系統軟件設計
3.1 單片機程序
利用單片機的定時(shí)器TIMER_A(TA)中斷產(chǎn)生脈沖信號,通過(guò)在響應的中斷程序中實(shí)現步進(jìn)電機步數和圈數的準確計數,通過(guò)PWM實(shí)現轉速控制;利用P1.0端口的中斷關(guān)閉TA中斷程序,并推入堆棧,停止電機;P1.1中斷則開(kāi)啟TA中斷,堆棧推入程序計數器(PC),開(kāi)啟電機;P3.1端口輸出高電平由PMM8713的U/D端口控制電機的轉向;P3.0~P3.7端口接8279的8個(gè)數據接口,當單片機掃描到矩陣鍵盤(pán)有鍵按下時(shí),利用P2端口的中斷設置TA,控制啟停、調速和轉向等,同時(shí)單片機反饋給8279控制LED管顯示轉速和轉向。其程序流程如圖5所示。

3.2 PC上位機模塊
PC上位機模塊實(shí)現PC機對步進(jìn)電機的控制。利用MSP430單片機的USART模塊實(shí)現與PC上位機的通信,PC機通過(guò)串口向單片機發(fā)送控制命令,實(shí)現電機控制。單片機所接收到控制命令暫存在RXBUFFER中,然后與存儲在片內Flash的中斷程序的入口地址相比較,相同就進(jìn)入中斷,實(shí)現步進(jìn)電機的控制。操作該模塊時(shí)需要開(kāi)啟8 MHz晶振為USART模塊設置波特率(設置波特率為9 600)?刂栖浖蒝B6.0編寫(xiě),利用MSComm控件實(shí)現串行通訊功能。其控制軟件界面如圖6所示。

4 系統檢測
為檢驗該控制系統的實(shí)際工作情況,在給定PMM2101輸出工作電流的狀態(tài)下采用能量轉化法測得步進(jìn)電機輸出的最大靜轉矩。選取輸出電流間隔0.2 A,測到步進(jìn)電機最大靜轉矩與電流之間關(guān)系的靜特性曲線(xiàn),如圖7所示,說(shuō)明該控制系統設計較合理。

5 結論
該系統通過(guò)MSP430單片機控制步進(jìn)電機運轉情況,可靠性高,在電機運行時(shí)能夠方便設定步進(jìn)電機的啟/停、轉速和方向,提高步進(jìn)電機的步進(jìn)精度;能夠控制三相或四相步進(jìn)電機;由PC上位機完全控制步進(jìn)電機的各種運行方式,使系統能夠應用于惡劣環(huán)境中,保證人員安全,適用范圍較廣,且電路簡(jiǎn)單,成本較低,控制方便,移植性強,實(shí)用價(jià)值高。 |