裝入CPLD/FPGA的步進(jìn)電機運動(dòng)控制器與驅動(dòng)器
本設計實(shí)例進(jìn)一步拓展了以前將步進(jìn)電機驅動(dòng)器集成到CPLD中的設計(參考文獻1)。本實(shí)例不僅集成了驅動(dòng)器,而且還集成了一個(gè)簡(jiǎn)單的單軸步進(jìn)電機運動(dòng)控制器。根據CPLD大小,可以將多個(gè)運動(dòng)控制器設計到單一設備中。例如,單軸運動(dòng)控制器采用68%或63%的可用宏單元設計到Xilinx XC95108中。運動(dòng)控制器以確定的速度與時(shí)間曲線(xiàn)順時(shí)針或逆時(shí)針旋轉步進(jìn)電機指定的步數。運動(dòng)開(kāi)始時(shí),控制器對電機加速,直到其達到巡航速度,然后減速直到停止(圖1)。
本文引用地址:http://dyxdggzs.com/article/161186.htm控制器可將電機速度調節到16 個(gè)值,V=VMAX×speed/16, 其中速度值為0到16的整數。在加速階段,速度從1到16升高,在巡航階段,速度保持在16,最后,在減速階段,速度下降到1,直到停止??刂破髟谶_到巡航速度階段前如果沒(méi)有足夠的步數,控制器可直接從加速階段進(jìn)入減速階段。在程序中利用恒定“加速”功能可以在1到255間調節加速/減速速度。較大值的加速會(huì )造成緩慢的加速/減速;低值就會(huì )得到較快的加速/減速。該CPLD步進(jìn)電機驅動(dòng)器的輸入包括時(shí)鐘、方向、完全/半步長(cháng)、復位、下一步、啟動(dòng)和停止等。
時(shí)鐘輸入工作在正向時(shí)鐘脈沖邊沿上。最大電機速度為16 個(gè)時(shí)鐘一步。方向輸入確定了電機的旋轉方向。電機順時(shí)針或逆時(shí)針?lè )较蜻\行,取決于該輸入的大小和電機的連接方式。該值在開(kāi)始向高運行后的第一上升時(shí)鐘邊沿鎖定。完全步長(cháng)或半步長(cháng)輸入決定了電機在每個(gè)時(shí)鐘脈沖內的角旋轉。在低態(tài)時(shí),電機在每個(gè)應用的時(shí)鐘脈沖內執行完全步長(cháng),在高態(tài)時(shí)則需要執行半步長(cháng)。在復位輸入時(shí)較大的電流可將電機設定為已定義好的狀態(tài)。在復位輸入較大時(shí),電機可忽略任何時(shí)鐘脈沖。16位的Nstep值定義了下一運動(dòng)將要執行的步數。該值在開(kāi)始向高運行后的第一上升時(shí)鐘邊沿鎖定。開(kāi)始輸入較高的電流可啟動(dòng)運動(dòng)。較大的停止輸入電流可停止運動(dòng),從而退出當前的運動(dòng)。
該CPLD步進(jìn)電機驅動(dòng)器的輸出為A、A_N、B和B_N(圖2)。A 和A_N 通過(guò)電源驅動(dòng)器輸出控制一個(gè)電機線(xiàn)圈,B和B_N輸出通過(guò)電源驅動(dòng)器控制電機的第二線(xiàn)圈。
CPLD/FPGA無(wú)法直接驅動(dòng)電機,所以需要外部驅動(dòng)器。驅動(dòng)器必須達到電機的額定電壓。每個(gè)驅動(dòng)器輸出端的肖特基整流二極管允許在電機線(xiàn)圈中的電流續流。如果使用MOSFET驅動(dòng)器,由于MOSFET有內置的二極管,就不需要外部肖特基整流二極管了。Microchip TC4424A 雙驅動(dòng)器可以驅動(dòng)電機線(xiàn)圈達到18V和3A。
評論