Arduino步进

时间:2012-05-28 22:40:34

标签: arduino

我正在使用Arduino Uno,电源屏蔽(REf to model)和双极步进电机构建系统。

我无法使用Arduino的步进器库启动电机。我用

实例化我的步进器
Stepper myStepper(motorSteps, motorPin1,motorPin2m motorPin3,motorPin4);

继续使用Arduino提供的示例代码。

当我在Arduino上启动代码时,电机会发出一些声音,但它不会转动。

如何确定使用合适的电机引脚?在电源屏蔽上,使用哪种模式,PWMPLL

7 个答案:

答案 0 :(得分:6)

如你所知,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回答:)

答案 1 :(得分:4)

arduino草图不​​起作用是正常的。它像这样驱动电机:

  • PIN1:线圈1,正向电流
  • PIN2:线圈1,反向电流
  • PIN3:线圈2,正向电流
  • PIN4:线圈2,反向电流

你的盾牌以这种方式驱动步进器:

  • PIN1:当前向前/向后
  • PIN2:PWM的电流强度
  • PIN3:PWM的电流强度
  • PIN4:当前前进/后退

驱动步进电机不是一个好主意,因为您甚至不需要PWM来驱动步进电机。这是驱动直流电机。您可以编写自己的草图来驱动带有该盾牌的步进器,但是您应该找到一个适合arduino的盾牌来驱动步进器。寻找像“UL2003 stepper module”这样的东西,花费很少。

编辑:我有一个这样的模块,它就像一个魅力。小心你需要的力量。也许你需要像L298N module这样的东西。我也很少,而且工作正常。

答案 2 :(得分:1)

在步进电机中你有多少根电线? 4或6。

您的连接有问题。这就是它发出这样声音的原因。

用万用表测试。你发现两根电线具有很高的阻力。其他两个人给了一半。用电机驱动器out1连接前两个,用out2连接第二个。

您没有提到您正在使用哪种电机驱动器。尝试使用L298电机驱动器护罩。

答案 3 :(得分:1)

我认为你遇到的问题与你试图使用的盾牌类型有关。您链接的电源屏蔽设计用于直流电机,并且您正尝试使用步进电机(有关差异的说明,请参阅this网站)。

我建议尝试使用支持使用步进电机的另一个屏蔽(如Sparkfun EasyDriver)。

答案 4 :(得分:1)

连接电机引脚的问题似乎是错误的。 您确定,您将真正的绕组连接到电机吗? 用欧姆表测量电机引脚。应该有两个绕组,它们有引脚A1-A2和B1-B2。在这些引脚之间你应该看到一些电阻值。 然后一定要用正确的顺序连接到盾牌。

答案 5 :(得分:1)

如果电机发出一些声音,这是个好消息。至少你有联系它。由于它只是一个声音但没有运动,因此可能有三件事情在这种行为之下;

  1. 电机错误的针脚连接
  2. 电机驱动器的电流供应不足。
  3. 使用PWM确定的代码步数可能是 根据电机可以处理的太少或太高。
  4. 我可以提供此URL链接以确定电机引脚;

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

答案 6 :(得分:1)

在mi项目中,我使用双极电机(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)
  }