基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
步進(jìn)電機(jī)又稱脈沖電動(dòng)機(jī),憑借其定位精度高、使用方便、 性價(jià)比高、容易控制等優(yōu)點(diǎn),在辦公自動(dòng)化、工廠自動(dòng)化和計(jì) 算機(jī)外部設(shè)備等領(lǐng)域中受到廣泛應(yīng)用 [1,2],故對(duì)其控制系統(tǒng)的 研究頗為重要。
本文采用 C52 單片機(jī) [3,4] 設(shè)計(jì)步進(jìn)電機(jī)的控制系統(tǒng),并 使用 Protues 繪制仿真圖,同時(shí)與編程軟件(Keil4)進(jìn)行聯(lián)合 調(diào)試仿真,仿真結(jié)果表明,所設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)使用 便捷、有效。
1 步進(jìn)電機(jī)簡(jiǎn)介
步進(jìn)電機(jī)是一種感應(yīng)電動(dòng)機(jī),根據(jù)電子電路的原理將直流電變?yōu)榉謺r(shí)供電、多相時(shí)序控制的電流,用分時(shí)電流為步進(jìn)電機(jī)供電,使步進(jìn)電機(jī)正常工作,而驅(qū)動(dòng)器就是一種能為其分時(shí)供電,多相時(shí)序的控制器[5,6]。
步進(jìn)電機(jī)在不超過負(fù)載的情況下,其轉(zhuǎn)速、停止的位置只由脈沖頻率以及脈沖數(shù)決定,而負(fù)載以外的變化對(duì)其無(wú)影響, 當(dāng)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào)時(shí),便會(huì)驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定好的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度( 步距角 ),其旋轉(zhuǎn)按設(shè)定方向一步步運(yùn)行。步進(jìn)電機(jī)通過控制脈沖個(gè)數(shù)來(lái)控制角位移量, 從而達(dá)到精準(zhǔn)定位。同時(shí)也可通過控制脈沖頻率來(lái)控制其速度與加速度,從而達(dá)到調(diào)速的目的。
2 硬件設(shè)計(jì)
本文以 STC89C52 單片機(jī)為核心處理器,將按鍵作為輸入模塊,以控制步進(jìn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、步進(jìn),并實(shí)現(xiàn)正反轉(zhuǎn)。步進(jìn)電機(jī)選用 28BYJ-48 型四相八拍式步進(jìn)電機(jī),系統(tǒng)構(gòu)成如圖 1 所示。
由于單片機(jī)直接輸出的脈沖信號(hào)不大,無(wú)法讓步進(jìn)電機(jī)正常工作,因此不能將其直接連接到步進(jìn)電機(jī)上,需要在它們之間加上一個(gè)驅(qū)動(dòng)電路。對(duì)于直流電流小于 0.5 A 的步進(jìn)電機(jī)來(lái)說(shuō),可通過型號(hào)為ULN2003A 的達(dá)林頓芯片來(lái)驅(qū)動(dòng)步進(jìn)電機(jī),從而使其正常工作。ULN2003A 系列驅(qū)動(dòng)器的引腳與步進(jìn)電機(jī)連線示意圖如圖 2 所示。左邊1 ~7 為輸入端,接單片機(jī)P2口的輸出端,驅(qū)動(dòng)信號(hào)由P2 口的P2.0 至 P2.3 輸出,左側(cè)10~16 為輸出端引腳,接步進(jìn)電機(jī),引腳 9 接 5 V 電源,該
驅(qū)動(dòng)器提供的電流最高為 0.5 A。
圖 2 驅(qū)動(dòng)電路接線圖
鍵盤是由若干按鍵組成的按鍵矩陣,是一種最簡(jiǎn)單的單片機(jī)輸入設(shè)備,通過鍵盤輸入相應(yīng)數(shù)據(jù)和指令來(lái)實(shí)現(xiàn)人對(duì)機(jī)器的控制,鍵盤電路如圖 3 所示。
圖 3 鍵盤電路圖
本文采用外部中斷的方式。信號(hào)輸入部分為P3 口,P1 口為發(fā)光二極管顯示部分,P2 口作為電機(jī)的驅(qū)動(dòng)部分,整體仿真電路如圖 4 所示。
圖 4 系統(tǒng)整體仿真圖
3 程序設(shè)計(jì)
系統(tǒng)主程序流程如圖 5 所示。系統(tǒng)上電復(fù)位,對(duì)參數(shù)進(jìn) 行初始化,然后檢測(cè)串口是否發(fā)送數(shù)據(jù),當(dāng)確定串口數(shù)據(jù)發(fā)送 后程序便調(diào)用相應(yīng)的子程序 ;如果串口沒有發(fā)送數(shù)據(jù)則程序 重新初始化。系統(tǒng)上電復(fù)位后,鍵盤初始化并復(fù)位,然后進(jìn) 入按鍵查詢,等待操作。當(dāng)有按鍵按下后,系統(tǒng)開始調(diào)用相 應(yīng)的子程序。按鍵程序流程如圖 6 所示,步進(jìn)電機(jī)工作流程 如圖 7 所示。
4 仿真調(diào)試
使用Protues繪制仿真圖,與編程軟件(Keil4)進(jìn)行聯(lián)合調(diào)試仿真。當(dāng)步進(jìn)電機(jī)接收到連續(xù)不斷的脈沖信號(hào)時(shí),則持續(xù)運(yùn)轉(zhuǎn)。步進(jìn)電機(jī)的繞組通電狀態(tài)每改變一次就會(huì)產(chǎn)生一個(gè)脈沖信號(hào),轉(zhuǎn)子也相應(yīng)轉(zhuǎn)過一個(gè)步距角。當(dāng)通電狀態(tài)結(jié)束一個(gè)循環(huán)時(shí),轉(zhuǎn)子會(huì)轉(zhuǎn)過一個(gè)齒距。四相八拍方式的通電順序?yàn)椋?A相線圈最先通電;然后轉(zhuǎn)換變?yōu)锳,B兩相線圈同時(shí)通電; 接著B相線圈通電;再之后B,C兩相線圈同時(shí)通電(即按A-AB-B-BC-C-CD-D-DA-A 的順序進(jìn)行)。當(dāng)步進(jìn)電機(jī)定子繞組按順序周期性通電時(shí),轉(zhuǎn)子沿設(shè)定方向一步步轉(zhuǎn)動(dòng)。步進(jìn)電機(jī)工作波形如圖8所示。
圖 8 步進(jìn)電機(jī)工作波形圖
5 結(jié) 語(yǔ)
本文采用 C52 單片機(jī)來(lái)設(shè)計(jì)步進(jìn)電機(jī)的控制系統(tǒng),介紹 了其總體方案、主控制模塊、驅(qū)動(dòng)電路、鍵盤、晶振電路模塊等, 并使用 Protues 繪制仿真圖,與編程軟件進(jìn)行聯(lián)合調(diào)試仿真, 仿真結(jié)果表明,所設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)正確有效。