雖然都是雙相步進馬達,但是四線步進馬達跟五,六線步進馬達的驅動電路很不一樣,因為四線步進馬達是雙極馬達,雙極的意思是說,A跟B相位的電流會有兩個方向。而六線式因為有共用腳,所以電流就只有單一方向了。
四線馬達可以使得A0-->A1或是A0<---A1 (箭頭是電流方向)
五,六線馬達則"只"能A0-->A1或"只"能A0<---A1
請參考下面的圖片
下圖是四線步進馬達
(圖中是八顆電晶體組成的雙H橋驅動電路)
這種驅動電路其實也可以驅動單極步進馬達,雖然需要八顆電晶體,比單極二相步進馬達所需的四顆要多。但是適合量產,所以比較常用。
PS:H橋電路是什麼?
H橋電路可以放大功率,還可以讓電流有兩種方向。假設現在只用一顆功率晶體控制一顆直流馬達,那麼因為電流方向固定的關係,所以馬達只能往一個方向轉。如果用了H橋電路,那樣可以有兩種電流流向,所以馬達也有兩種轉動的方向了。
而下圖是五,或六線步進馬達
激磁順序(2相激磁)
A+ A- B+ B-
1 0 0 1
1 1 0 0
0 1 1 0
0 0 1 1
因為每次激磁都只有用到一半的線圈,功率與線圈長度相同的四線馬達比,大約只有四線的70%,所以我個人比較欣賞四線式...
圖片轉載自 http://article.cechina.cn/2009-03/200934115203.htm
現在開始進入主題,使用arduino控制四線步進馬達,所需的電路以及程式碼
電路圖:
使用四根1000 omu的電阻, 兩個sta434a
綠色框框表示sta434a,它包含了一個H橋,共10pin,有斜面的地方是第一腳的位置。綠色點上面有標腳位的數字,照著接就好了 B+B-的電路同A相位的,我就不畫了
PS: A0 A1上的4,5是arduino的pin,與sta434a無關
如果馬達不轉或是發出尖叫的話,就提高供電器的功率。我用的時候是0.5A, 7V,sta434a一下子就變很燙了...下次要加鋁片散熱
上圖改編於http://delphi.ktop.com.tw/board.php?cid=173&fid=1167&tid=93503
code:
程式碼用的是下面網站的
http://arduino.tw/articlesindex/sensors/94-e6ada5e980b2e9a6ace98194stepper-motor.html
留言列表