基于單片機的步進電機升降速及精度控制研究
黃法恒,劉 利
(上海交通大學(xué),上海200240)
摘要:介紹了單片機控制步進電機的一般硬件結(jié)構(gòu),在此基礎(chǔ)上提出了三種步進電機升速的實現(xiàn)方法,最后分析了單片機定時誤差對步進控制的影響,并得出了解決辦法。
關(guān)鍵詞:單片機;步進電機;升速曲線;定時誤差
中圖分類號:tm383. 6 文獻標志碼:a 文章編號:1001-6848(2010)03-0095-03
1控制系統(tǒng)硬件
步進電機驅(qū)動器的輸入信號共有三路,分別是:步進脈沖輸入信號cp,電機運轉(zhuǎn)方向控制輸入信號cw,急停復(fù)位輸入信號rest。它們通過單片機的i/o輸入。當(dāng)輸入信號對應(yīng)的單片機引腳輸出高電平時,對應(yīng)的三極管工作于飽和狀態(tài)。管壓降極小,輸入信號可以通過光耦使驅(qū)動器工作;而當(dāng)對應(yīng)引腳為低電平時,三極管工作于截止區(qū),無信號輸出,驅(qū)動器對應(yīng)項關(guān)閉。設(shè)計中,在外部控制信號和中斷的控制下,步進脈沖由p2.0按照一定的頻率發(fā)出;p2.1高電平時步進電機順時針轉(zhuǎn)動,低電平時逆時針轉(zhuǎn)動;而p2.2高電平時步進電機鎖緊,低電平時電機可以自畝轉(zhuǎn)動。
2升降頻方法及其實現(xiàn)
當(dāng)步進電機帶負載時的運行頻率低于起動頻率時,步進電機能以運行頻率直接起動,并以該頻率連續(xù)運行。需要停止的時候,可以從運行頻率直接降到零速。而當(dāng)步進電機的運行頻率為負載啟動頻率)或負載過大時,易出現(xiàn)丟步或堵轉(zhuǎn)的現(xiàn)象;停止時頻率過高,易出現(xiàn)過沖的現(xiàn)象,造成位置精度降低。因此,需要對步進電機采用升降頻控制,以使電機從啟動頻率工或者低于啟動頻率的某個合適的值(此值與負載和步進驅(qū)動有關(guān))開始,逐漸加速升到運行頻率,h然后進入勻速運行。最后的降頻可以看作是升頻的逆過程。
脈沖通過單片機定時中斷產(chǎn)生,每中斷一次,p2.0引腳電平取反,中斷兩次產(chǎn)生一個周期的脈沖。調(diào)節(jié)每次定時器的重裝值,就可以得到相應(yīng)頻率的步進脈沖,直至不同的升降頻越線[4-6]。
采用51系列單片機進行升降頻控制時,設(shè)單片機的晶振頻率;經(jīng)過丘次升頻達到目標頻率,在第n升頻時的頻率為f(n)。升速時各頻率等間距分布,并且定時器工作在方式1,則此時定時器的裝載常數(shù)為:
設(shè)步進電機在f(n)頻率下運行時間為出(與系統(tǒng)要求有關(guān)),則在此頗率下運行的步數(shù)為:
為了達到精確定位的目的,編程時,將頻率f(n)的保持時間換算為步數(shù),并對步數(shù)z(n)進行計數(shù)。每次計滿時,定時器重裝下一頻率的初值。
升降頻曲線的規(guī)劃以不失步為原則。步進電機常用的升降頻控制方法有三種:
2.1 s型升速曲線
s曲線加減速采用降速與升速對稱的曲線來實現(xiàn)升降速控制。如圖1所示,在步進電機加減速的過程中,使步進電機在每次加頻率時均運行相同的步數(shù)z(n),即可得到s型升降速曲線。具體來說,可以根據(jù)系統(tǒng)要求,計算出加減速的允許時間,并進一步計算出每個加速頻率的允許時間a,繼而得到各頻率對應(yīng)的步數(shù)。
這種升速方法的優(yōu)點是升降極快,編程簡單,且加速是連續(xù)變化的,從而避免了柔性沖擊。由于頻率不斷升高,每個加速頻率的運行時間血是不斷減小的,加速度是不斷增大的。因此其缺點是負載力矩較小,在加速過程中容易產(chǎn)生失步現(xiàn)象。所以此方式在高速、低載荷的情況下應(yīng)用較廣。
2.2直線型升速曲線
如果在步進電機加減速的過程中,加速度是恒定不變的,則得到直線型升降速曲線。如圖2所示,在直線型升降速曲線中,電機的運行頻率每躍升一個臺階,在該頻率下的運行時間at都是相同的。而根據(jù)系統(tǒng)允許的加減速時間,很容易得到at,進而得到每個頻率下的步數(shù)z(n)。
 < |