2012-05-28 38 views
6

我正在用Arduino Uno,電源屏蔽(REf to model)和雙極步進電機構建系統。Arduino步進器

我無法使用Arduino的步進庫啓動電機。我實例化我的步進器

Stepper myStepper(motorSteps, motorPin1,motorPin2m motorPin3,motorPin4); 

並繼續提供與Arduino一起提供的示例代碼。

當我在Arduino上啓動代碼時,電機會發出一些聲音,但它不會轉動。

如何確定正確的電機引腳使用?在電源屏上,使用哪種模式,PWMPLL

回答

3

這是正常的,arduino草圖不​​起作用。它驅動馬達這樣的:

  • PIN1:線圈1,正向電流
  • PIN2:線圈1,反向電流
  • PIN3:線圈2,正向電流
  • PIN4:線圈2,反向電流

你的盾牌驅動步進這樣:

  • PI N1:當前向前/向後
  • PIN2:電流強度與PWM
  • PIN3:電流強度與PWM
  • PIN4:當前向前/向後

不是一個好主意,以驅動步進電機,如你甚至不需要PWM來驅動步進器。這是爲了驅動直流電機。您可以編寫自己的草圖,用該盾牌驅動步進器,但應該找到適合arduino驅動步進器的盾牌。尋找像「UL2003 stepper module」這樣的東西,它的成本很低。

編輯:我有這些模塊之一,它的作品就像一個魅力。小心你需要的力量。也許你需要像L298N module這樣的東西。我也沒有太多,他們工作得很好。

+0

這個怎麼樣:http://www.adafruit.com/products/81? – gpasse

5

正如你所建議的那樣,adafruit馬達屏蔽應該適合arduino步進庫,因爲它使用L293D來驅動馬達。它可以驅動2步進電流爲0.6A(適用於大多數可在打印機,軟盤/ CD/DVD閱讀器中找到的小步進器)。

要小心,他們似乎用自己的庫這個盾牌,你可以在這裏找到:

http://www.ladyada.net/make/mshield/download.html

並且知道如何連接步進,請看這裏:

http://www.ladyada.net/make/mshield/use.html

很抱歉,用這種方式回覆您的評論,但我沒有足夠的評論評論......所以請,+1我的答案,如果你認爲這是一個很好的答案:)

0

在步進電機你有多少電線? 4或6.

您的連接有問題。這就是它發出這種聲音的原因。

用萬用表測試。你發現兩根導線給予高阻力。其他兩個從一半。將前兩個連接到電機驅動器out1,後兩個連接out2。

您沒有提及您使用的是哪個電機驅動器。嘗試使用L298電機驅動器護罩。

0

我認爲你遇到的問題與你試圖使用的盾牌的種類有關。您鏈接的電源屏蔽設計用於直流電機,並且您正在嘗試使用步進電機(請參閱this網站了解其差異的說明)。

我會建議您嘗試另一個屏蔽(如Sparkfun EasyDriver)支持使用步進電機。

0

這個問題似乎是錯誤的連接電機引腳。 你確定,你將真正的繞組連接到電機? 用歐姆表測量電機引腳。應該有兩個帶有引腳A1-A2和B1-B2的繞組。在這些引腳之間,你應該看到一些電阻值。 然後確保你連接到正確的順序屏蔽。

0

如果電機發出一些聲音,這是個好消息。至少你有接觸它。既然它只是一種聲音,但沒有運動,這種行爲下面可能會有三樣東西;電動機從電動機驅動器

  • 不足電流饋源的

    1. 錯誤引腳連接。
    2. 使用PWM代碼確定的步數可能是 太小或太高,因爲每個電機都可以處理。

    我可以提供這個網址鏈接來確定電機引腳輸出;

    How Can I Determine My Stepper Motor Wiring Without the Stepper Motor Pinout

  • 0

    在M項目中,我使用雙極電動機(NEMA17),你可以駕駛它很容易與A4988 pololu(或drv8825,功能更強大,更昂貴的)。 這些驅動程序具有H橋內,並允許您控制電機通過簡單:

    while(1){ 
        digitalWrite(PIN_STEP, HIGH); 
        delay(1000); 
        digitalWrite(PIN_STEP, LOW); 
        delay(1000); 
    //1RPM = 100 microsecond delay for a 1.8 degree angle motor (200 steps per 
        turn) 
        }