在HCS08系列MCU上用軟件實(shí)現(xiàn)儀表步進(jìn)電機(jī)的驅(qū)動
電機(jī)轉(zhuǎn)動的加減速
本文引用地址:http://www.ex-cimer.com/article/109228.htm步進(jìn)電機(jī)在轉(zhuǎn)動時,因?yàn)檗D(zhuǎn)子、傳動齒輪和負(fù)載的轉(zhuǎn)動慣量,使它從一個位置轉(zhuǎn)動到下一個位置(一個分步或微步)需要一定的時間。如果在轉(zhuǎn)子轉(zhuǎn)動到下一個位置之前,驅(qū)動信號就又往前走了一步的話,那么轉(zhuǎn)子的磁場方向和定子線圈產(chǎn)生的氣隙磁場方向之間的夾角就會超過一個分步或微步所對應(yīng)的角度。只要轉(zhuǎn)子的旋轉(zhuǎn)速度跟不上驅(qū)動信號的變化速度,這個夾角就會越來越大,當(dāng)夾角超過180°時,磁場對轉(zhuǎn)子的作用力的方向就會變得跟原來的方向相反。結(jié)果就是轉(zhuǎn)子所轉(zhuǎn)過的角度和氣隙磁場所轉(zhuǎn)過的角度不相等了,也就是轉(zhuǎn)子所轉(zhuǎn)過的步數(shù)和驅(qū)動信號走過的步數(shù)不相等了,人們常把這種現(xiàn)象叫做“失步”。同樣的,當(dāng)要使步進(jìn)電機(jī)從高速的旋轉(zhuǎn)中停下來的時候,如果驅(qū)動信號的變化過快,轉(zhuǎn)子就有可能在慣性的作用下繼續(xù)旋轉(zhuǎn)超過180°,從而也產(chǎn)生失步。另外,由于轉(zhuǎn)子軸承、傳動齒輪和負(fù)載上都有一定的摩擦阻力,因此電機(jī)在連續(xù)轉(zhuǎn)動時的速度也是有限的,如果驅(qū)動信號的變化速度超過了電機(jī)能達(dá)到的最大轉(zhuǎn)速的話,電機(jī)也會失步。
那么,如果讓驅(qū)動信號一直保持較慢的變化速度,是不是就沒有問題了呢?答案當(dāng)然是否定的。這是因?yàn)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/步進(jìn)電機(jī)">步進(jìn)電機(jī)作為儀表的顯示部件,我們要求它能夠?qū)⒈粶y信號的變化實(shí)時地顯示出來;而電機(jī)轉(zhuǎn)動如果比較慢,那么儀表的顯示就無法跟上被測信號的變化。
為了讓步進(jìn)電機(jī)既不會失步,又能轉(zhuǎn)得盡可能快,那么就要讓驅(qū)動信號
的變化速度和轉(zhuǎn)子轉(zhuǎn)動的速度保持基本一致。當(dāng)電機(jī)啟動的時候,轉(zhuǎn)子做加速轉(zhuǎn)動,這時第一步的持續(xù)時間要比較長,然后每一步的持續(xù)時間逐漸變短,對應(yīng)的轉(zhuǎn)動速度變化如圖3所示。電機(jī)停止的過程則與之相反。在VID29系列步進(jìn)電機(jī)的數(shù)據(jù)手冊上給出了電機(jī)啟動/停止時允許的驅(qū)動信號的變化速度(啟動頻率)和電機(jī)連續(xù)轉(zhuǎn)動時允許的驅(qū)動信號的變化速度(最大驅(qū)動頻率),我們可以根據(jù)它們計(jì)算出第一步的持續(xù)時間和加速過程結(jié)束后的每一步的持續(xù)時間。
步進(jìn)電機(jī)和MCU的硬件連接
在LG32 Cluster Reference Design中,MCU和步進(jìn)電機(jī)之間的連接如圖4所示。其中使用了一片74ACT125作為電流放大驅(qū)動,這是因?yàn)镸C9S08LG32的I/O口輸出的電流最大只有10mA,而VID29步進(jìn)電機(jī)需要的驅(qū)動電流最大可達(dá)20mA。使用TPM模塊的兩個PWM輸出通道驅(qū)動步進(jìn)電機(jī)兩個線圈的正極,兩個普通I/O口驅(qū)動兩個線圈的負(fù)極。TPM模塊的兩個通道也可以設(shè)置成普通I/O口,這樣就可以根據(jù)需要使用微步方式驅(qū)動或者分步方式驅(qū)動。
在MC9S08LG32中集成了兩個TPM模塊,其中TPM1有2個通道,TPM2有6個通道。在這里選擇TPM1來驅(qū)動步進(jìn)電機(jī),是因?yàn)楫?dāng)把一個TPM模塊的某一個通道設(shè)置為PWM輸出時,此TPM模塊公用的模數(shù)(MOD)寄存器將被設(shè)成一個比較特殊的值,這樣就會給它的其它通道的功能使用造成很多限制。所以為了更加充分地利用MCU的資源,這里選擇了通道較少的TPM1,而把通道較多的TPM2留作他用。
pwm相關(guān)文章:pwm是什么
評論