一、細分
1.什麼是驅動器的細分?執行拍數和步距角的關係。
「細分」是針對「步距角」而言。沒有細分狀態的話,控制系統(可以說微控制器)每發乙個步進的脈衝訊號,步進電機就會按照整步(步距角)旋轉乙個特定的角度。步進電機的datasheet都會給出乙個步距角,我們最常見的步進電機的步距角是1.8°。我們通過步進電機驅動器(步進電機驅動板)設定細分狀態,步進電機將會按照細分的步距角旋轉位移角度,從而實現更精密的定位。
列表說明:
電機固有步距角
執行拍數
細分數電機執行時的真正步距角
1.8°
0.9°
1.8°
0.36°
1.8°
0.18°
1.8°
0.09°
1.8°
0.045°
上表可看出,電機執行時的真正步距角=電機固有步距角/細分數。
舉例1:步進電機的步距角為1.8°,驅動器不進行細分設定,工作在整步狀態時,微控制器每發乙個脈衝訊號,步進電機旋轉1.8°。所以步進電機旋轉一周需要的脈衝數為360°/1.8° = 200 個。所以我們微控制器必須要給驅動器傳送200個脈衝才能使步進電機旋轉一周。
舉例2:步進電機的步距角為1.8°,設定驅動器的細分數是10細分,則電機執行時真正的步距角是1.8°/10 = 0.18°,即微控制器每發乙個脈衝訊號,步進電機旋轉0.18°。所以步進電機旋轉一周需要的脈衝數為360°/0.18° = 2000 個。所以我們微控制器必須要給驅動器傳送2000個脈衝才能使步進電機旋轉一周。
舉例3:步進電機的步距角為1.8°,設定驅動器的細分數是40細分,則電機執行時真正的步距角是1.8°/40 = 0.045°,即微控制器每發乙個脈衝訊號,步進電機旋轉0.18°。所以步進電機旋轉一周需要的脈衝數為360°/0.045° = 8000 個。所以我們微控制器必須要給驅動器傳送8000個脈衝才能使步進電機旋轉一周。
細分是步進電機按照微小的步距角旋轉,也就是常說的微步距控制。不同的場合有不同的控制要求,並不是要求驅動步進電機一定要細分。
執行拍數與驅動器細分的關係:執行拍數是指步進電機執行時每轉乙個齒距需要的脈衝數。例如某個步進電機有50個齒,如執行拍數設定為160,那麼步進電機旋轉一圈需要50*160=8000步;對應步距角=360/8000 = 0.045°。其實對於我們使用者來講沒必要去計算是幾步幾拍,我們只需要知道:步進電機整步執行需要的脈衝數。例如:步進電機步距角1.8°,微控制器每秒鐘給200個脈衝,則步進電機就能夠在一秒內轉完一圈;如果設定細分為40細分,則微控制器要每秒鐘給8000個脈衝,步進電機才能夠在一秒內轉完一圈。
2.細分的好處
步進電機驅動器採用細分的功能能夠消除步進電機的低頻共振現象,減少震動,降低工作的噪音。低頻共振是步進電機固有特性,只有通過驅動器細分的辦法才能夠減輕消除。
利用細分方法還能夠提高步進電機的輸出轉矩。細分狀態下提供給步進電機的電流顯的「持續、強勁」,極大的減少步進電機旋轉是的反向電動勢。
二、常見的細分數設定方法
怎麼進行設定細分?細分是通過驅動器進行設定的。關於細分,可以通過硬體設定細分數,也可以通過微控制器軟體進行設定,就看你電路是怎麼設定了。
如圖1 tb6560步進電機驅動器所示,這個驅動器是通過硬體設定細分數的,通過撥碼開關來選擇細分數。該驅動器可設定四個細分數:1/2/8/16四個細分。大學時期,我們見得最多和使用最多還具有細分功能可能就是tb6560這個驅動器。
圖1 tb6560步進電機驅動器
如圖2電機驅動晶元所示,這種步進電機的驅動晶元在(手冊)datasheet中都會有說明是通過哪幾個引腳進行細分設定。如下圖2是通過m1 m2 m3這三個引腳來進行細分數的設定(手冊中有說明)。此電路是通過選擇焊接哪個電阻來選擇細分數的,如圖,焊接的r38 r37 r35,即設定為 l l h ,所以為16細分。當然這個電路圖也可以通過軟體進行設定,但是在電路設定時,需要將m1/m2/m3引腳分別和微控制器的io進行連線,然後通過微控制器控制這三個引腳的電平來設定細分數。
圖2
圖3
圖4
關注jkchen的部落格:
步進電機驅動詳解
最近在使用步進電機的時候,發現細分驅動器太大了,而且只是會使用細分驅動器的話並不能代表你會用步進電機了,於是就想找個小一點的驅動自己編寫 驅動步進電機,於是l298n模組就符合我的要求了,它不僅小而且還帶有兩路大功率電機的輸出,把他接到步進電機的四相剛剛好!按照慣例,先上效果圖 可以看出,我能夠精確...
步進電機驅動方式總結
方式一 uln2003驅動 適用範圍 最大驅動電流 0.5a 驅動5v 直流電機,5v二相六線線步進電機,12v二相六線線步進電機 短時間可用,發熱量大,注意散熱 無散熱片 注 二相四線線步進電機不能用 uln2003 驅動,需要用 h橋電路來驅動,或者使用專用晶元 二相四線步進電機 uln2003...
A4988驅動步進電機
a4988一般用arduino來驅動,我是用stm32f103驅動的。我用的是 驅動比較好寫,首先要弄清楚接線方式。io初始化 void motor init void 細分 x 1 全步 x 2 半步 x 4 1 4步 x 8 1 8步 x 16 1 16步 void step micr u16 ...