基于A(yíng)TMEGA48單片機的儀表步進(jìn)電機的細分控制原理及應用
從以上的分析可知,兩相四拍是整步運轉不細分,兩相八拍其實(shí)是2細分。合成的磁場(chǎng)和電流矢量夾角以90o和45o的方式變化,如此往復循環(huán)。本文引用地址:http://dyxdggzs.com/article/160311.htm
參考相關(guān)資料后不難發(fā)現:細分驅動(dòng)技術(shù)常用近似正弦波的階梯型電流代替矩形波電流,產(chǎn)生一個(gè)微步旋轉磁場(chǎng),從而帶動(dòng)電機以更小的步距角轉動(dòng),其電流波形和旋轉磁場(chǎng)矢量如圖1所示。同時(shí)由于正弦波電流變化平滑,使電機運行更平穩、噪聲更小。即通過(guò)改變相鄰兩相(A,B)電流的大小和方向(A相正弦波和B相余弦波矢量疊加),以改變合成磁場(chǎng)的夾角,通過(guò)電流矢量合成的方式來(lái)控制步進(jìn)電機運轉。
硬件設計和軟件編程
根據細分原理可知,對于兩相步進(jìn)電機,需要同時(shí)控制兩組線(xiàn)圈的電壓大小和方向才能達到合成電流矢量控制的目的,控制線(xiàn)圈的電流大小有兩種方案:其一是通過(guò)單片機寫(xiě)入數字量,由數模轉換器件輸出模擬電壓,控制線(xiàn)圈電流大小;其二是通過(guò)某些單片機自帶的PWM引腳輸出占空比可控的方波,用其交流有效值控制線(xiàn)圈電流大小。很顯然,按照正弦規律變化的占空比決定了線(xiàn)圈電流大小也按照相同的正弦規律變化。線(xiàn)圈的電壓施加方向可以通過(guò)邏輯門(mén)電路來(lái)實(shí)現。
綜上,選用具有兩路16位精度PWM功能的ATMEGA48單片機,外圍硬件電路設計如圖2。
使用該單片機具有PWM功能的PB1和PB2連接PWM_A和PWM_B,使用兩個(gè)普通引腳連接DIR_A和DIR_B即可實(shí)現對電機的控制。原理說(shuō)明如下:電機的A、/A、B、/B分別對應四輸入與門(mén)電路的3、6、8、11引腳。在DIR_A和DIR_B為低電平時(shí),門(mén)電路的1、9引腳為0狀態(tài),三極管Q3、Q4截止,門(mén)電路的4、12引腳由于上拉處于1狀態(tài),這樣,與門(mén)電路的3、8輸出為0,即A、B為0;此時(shí)與門(mén)電路的6、11輸出與PWM_A和PWM_B保持一致,即/A、/B由PWM_A和PWM_B決定。在其他狀態(tài)下,也具有同類(lèi)特點(diǎn):A和/A之間、B和/B之間的通電極性由DIR_A和DIR_B決定;A和/A之間、B和/B之間的電流大小由PWM_A和PWM_B的占空比決定。而且只要三極管Q3、Q4工作正常,與門(mén)電路就不會(huì )出現邏輯混亂的情況。
配合硬件的設計,軟件上編寫(xiě)了一個(gè)由64個(gè)數據組成的數組,分別對應了0~90o正弦波幅度變化的8位數字量化值(以階梯波的方式模擬了64點(diǎn)正弦波抽樣),每個(gè)值用來(lái)控制輸出波形占空比,實(shí)際上參與了電流矢量夾角轉動(dòng)90o過(guò)程中其電流大小的計算。眾所周知,正弦、余弦波相位相差90o,在已知0~90o正弦波幅度變化表后,同樣可以得出90o~180o、180o~270o、270o~360o(0o)的正弦波、余弦波幅度變化表,所以通過(guò)0~90o正弦波幅度變化的8位數字量化表的演化,就可以在兩相八拍(二細分)的基礎上把電流矢量夾角分成四個(gè)象限,配合極性的控制,在每個(gè)象限中把A或/A的正弦波和B或/B的余弦波作8種組合,在每種組合中完成電流大小的變化,最終作到兩相64拍(16細分)的控制。而且,最巧妙的一點(diǎn)就在于:通過(guò)選擇64個(gè)數據對應每90o范圍的正弦波的64個(gè)點(diǎn),就可以用一個(gè)字節的大小來(lái)作為區分4個(gè)象限的標志,便于對正、余弦的角度進(jìn)行演化,即0~63對應0~90o,64~127對應90o~180o,128~191對應180o~270o,192~255對應270o~360o。
兩相64拍A、B、/A、/B的驅動(dòng)狀態(tài)表如表3(以B為起始狀態(tài))。
由于儀表指針從當前角指向目標角時(shí),變化量會(huì )有不同。為保證指針響應靈敏、無(wú)抖動(dòng),必須在正、反轉時(shí)考慮加、減速控制。程序中,可以根據變化量的大小和正負設定幾個(gè)控制區間,分別寫(xiě)入不同的延時(shí)參數,根據此延時(shí)參數來(lái)控制電流大小、方向(改變PWM_A和PWM_B、DIR_A和DIR_B)變化時(shí)間,就達到了加、減速的控制的目的。
結語(yǔ)
通過(guò)雙PWM方式控制兩相步進(jìn)電機,既達到了高精度細分的目的,又在硬件成本上得到了優(yōu)化。在現有電路的后級增加功率驅動(dòng)電路并作程序的少量修改,就可以做成高精度、多細分步進(jìn)電機驅動(dòng)器。
評論