基于SPMC75F2413A單片機的步進電機加減速控制
步進電機易于與數字電路接口,但一般數字電路的信號能量遠遠不足以驅動電機。因此,必須有一個與之匹配的驅動器來驅動步進電機。驅動器通過給電機繞組提供特定的激磁電流,告訴電機需要運行多少微步。步進電機運行在整步模式時,因為剛好與電機的機械設計特點相吻合。此時定轉子齒正好完全對齊,且繞組中流過的電流最大,步距角也最大。隨著細分數的增加,步矩角相應減小。
該系統采用Allergo公司生產的驅動器SLA7042M,其本質上是利用數字量輸入控制輸出電流,其內部的2個4 bit的移位寄存器分別接收由SerialData引腳輸入的電機相位信息和激磁電流比例數據。該4 bit的移位寄存器的第l位先載入相位信息,接著依次串行載入激磁電流比例數據的最低位,次低位,最后載入最高位。驅動部分電路如圖3所示。本文引用地址:http://www.104case.com/article/173305.htm
3 系統軟件設計
通過式(1)可計算出每個頻率檔的頻率以及在該檔內步進電機所走的步數,將這40個檔的頻率以及各個檔內所走的步數分別存入2個數組變量。該系統軟件程序首先判斷步進電機是否能達到最大速度。當規定步進電機轉動的步數少時,步進電機不能達到最大速度,速度就要開始下降。這時首先應求出升速所能達到的步數和頻率,及降速所能達到的步數和頻率。而減速過程和加速過程正好相反,即就是將2個數組中存入的數據,按相反順序輸出。圖4為步進電機S曲線加減速軟件流程。
4 結束語
使用凌陽SPMC75F2413A單片機,采用S曲線增減速的方法有效控制了步進電機啟動和停止過程中容易產生的失步及過沖現象。該控制方法有效、實用,已在數控切削系統中得到驗證,結果穩定可行。
評論