熊方 李愛民
摘要:本文基于v2Arm Cortex-M3為內(nèi)核的324A微控制器STM32F103R6,對步進(jìn)電機實現(xiàn)正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止?fàn)顟B(tài)進(jìn)行控制。該設(shè)計利用了STM32的GPIO端口、中斷、定時器等資源和技術(shù)進(jìn)行硬件、軟件設(shè)計,通過Keil軟件仿真和實驗證明,該設(shè)計方案穩(wěn)定可行,系統(tǒng)運行各項指標(biāo)符合設(shè)計要求。
關(guān)鍵詞:STM32;步進(jìn)電機;運動控制
中圖分類號:TP273 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2020)05-0003-02
0引言
步進(jìn)電機是廣泛應(yīng)用于智能制造、汽車電子和精密儀器等領(lǐng)域的執(zhí)行器。在非超載的情況下,電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負(fù)載變化的影響。STM32系列處理器是由ST公司以Am Cortex-M3為內(nèi)核開發(fā)生產(chǎn)的32位處理器,專為高性能、低成本、低功耗的嵌入式應(yīng)用而設(shè)計。STM32F103R6屬于增強型系列處理器,有64個引腳,32KB閃存容量,工作頻為72MHz,有16個內(nèi)核中斷線、1個高級定時器、3個通用16位定時器。本文基于STM32F103R6處理器設(shè)計一款簡潔的商陛能、低成本、低功耗的步進(jìn)電機運動控制系統(tǒng)。
1系統(tǒng)方案
該系統(tǒng)包括STM[32F103R6處理器、控制按鍵、電機驅(qū)動器和步進(jìn)電機四個部分,如圖1所示。STM32接收到按鍵信息,對步進(jìn)電機運行狀態(tài)進(jìn)行控制。
2硬件設(shè)計
2.1控制鍵盤
控制鍵盤的設(shè)計采用獨立式鍵盤方式,如圖2所示。KEYO~KEY4分別與SM32的PA8-PA12連接。當(dāng)按鍵沒有按下時,引腳上是高電平;當(dāng)按鍵按下時,引腳上是低電平。
2.2電機驅(qū)動
本設(shè)計中,步進(jìn)電機驅(qū)動器采用ULN2003A,它是一種新型的七路高耐壓、大電流達(dá)林頓晶體管驅(qū)動IC,在繼電器驅(qū)動、電磁閥驅(qū)動、伺服電機以及步進(jìn)電機驅(qū)動電路當(dāng)中廣泛應(yīng)用。驅(qū)動電路如圖3所示,STEP_A、STEP_B、STEP_C、STEP_D分別接到STM32的PB8-PB11。
3軟件設(shè)計
3.1步進(jìn)電機正反轉(zhuǎn)控制
以四相八拍步進(jìn)電機為例,只要對步進(jìn)電機的各相繞組按合適的時序通電,就能使步進(jìn)電機步進(jìn)轉(zhuǎn)動。加上正時序A_AB_B_HCC_CD_D_DA_A,步進(jìn)電機正轉(zhuǎn)。加上反向時序步進(jìn)電機反轉(zhuǎn)。正反轉(zhuǎn)控制函數(shù)void STEP MO"FOR RUN(u8 Direction)主要程序如下:
3.6步進(jìn)電機加減速控制
為了克服步進(jìn)電機失步和過沖現(xiàn)象,應(yīng)采用與電機控制相適應(yīng)的控制算法,即在啟動和停止時實行加減速控制。其實質(zhì)是在速度變化過程中控制發(fā)送脈沖的頻率實現(xiàn)速度的加減速。通常加減速算法主要有梯形曲線、指數(shù)曲線和s型曲線。
4結(jié)語
本文針對步進(jìn)電機,選用STM32F103R6芯片進(jìn)行控制。利用了STM32的GPlO口、定時器、中斷等資源和技術(shù)來完成,通過Kdl軟件進(jìn)行仿真和在開發(fā)板上進(jìn)行實驗,實現(xiàn)了步進(jìn)電機正轉(zhuǎn)、反轉(zhuǎn)、停止、加速、減速的運動控制。程序中如果加人s速度曲線或其它優(yōu)化算法,可以減少步進(jìn)電機啟動和停止過程中的振動和失步現(xiàn)象,提高電機控制精度和平穩(wěn)度。該設(shè)計簡易、低成本、低功耗,便于應(yīng)用。