基于A3972的步進電機驅動模塊設計
系統軟件設計
本文引用地址:http://www.biyoush.com/article/117154.htm系統軟件設計是設計的關鍵部分,電機每轉動一步都是由單片機軟件向驅動芯片寫入控制字0、控制字1來實現的,所以控制字值的設定是設計的關鍵,本文還給出一個合理的加速曲線,以解決電機的啟動力矩與轉速的矛盾。如圖7電機正反轉流程所示,電機每轉動一微步,需要向控制字0寫入兩路橋電流,而橋電流由6位線性DAC值決定,結合細分值、電流方向和電流衰減模式將DAC值按一定規(guī)律寫入驅動芯片即可。
電機啟動的加速過程分為5個速度等級,電機啟動時設定速度等級SpeedNo為0,以最小恒速位移為單位,逐漸提高速度等級,并通過設置定時器T0的值來作為兩個微步之間的時間延時,從而改變步速。圖8速度延時流程中Flag為延時結束標志位,定時器T0溢出時置位。
結語
該驅動模塊已用于本研究所研發(fā)的自動收發(fā)卡機項目,驅動42系列兩相步進電機,步距角為1.8°,為了進一步提高步進電機定位精度和系統的運行平穩(wěn)性,采用細分級數為16。從運行的實際情況看,該步進電機驅動器實現了較高的穩(wěn)速精度,運行可靠,取得了滿意的效果。
評論