课程表

Arduino 基础

Arduino 函数库

Arduino 进阶

Arduino 项目

Arduino 传感器

Arduino 电机控制

Arduino 声音

工具箱
速查手册

Arduino 步进电机

当前位置:免费教程 » 程序设计 » Arduino

步进电机或步进电机是无刷同步电机,其将整圈旋转分成多个步骤。 与当向其施加固定的DC电压时连续旋转的无刷DC电机不同,步进电机以离散步进角旋转。

因此,步进电机被制造成具有每转12,24,72,144,180和200的步长,从而产生每步30°,15°,5°,2.5°,2°和1.8°的步进角。 步进电机可以带或不带反馈进行控制。

想象一下在RC飞机上的电机。 电机在一个方向或另一个方向上转速非常快。 您可以根据给予电机的功率量来改变速度,但是您不能告诉螺旋桨停在特定位置。

现在想象一个打印机。 打印机内有很多移动部件,包括电机。 一个这样的马达用作进纸,当纸张被打印在其上时移动纸张的旋转辊。 此电机需要能够将纸张移动一个精确的距离,以便能够打印下一行文本或图像的下一行。

还有另一个马达连接到使打印头来回移动的螺杆上。 再次,该螺杆需要移动精确的量以一个接一个地打印。 这就是步进电机派上用场的地方。

 

进步机电

 

步进电机如何工作?

常规的直流电动机只在方向上旋转,而步进电动机可以以精确的增量旋转。

步进电机可以根据需要转动精确的度数(或步长)。 这使您可以完全控制电机,允许您将其移动到确切的位置并保持该位置。 它通过为电机内部的线圈供电非常短的时间来这样做。 缺点是你必须给电机一直供电,以保持它在你想要的位置。

你现在需要知道的是,为了移动步进电机,你要告诉它在一个方向或另一个方向上移动一定数量的步进,并告诉它沿那个方向步进的速度。 有许多种类的步进电机。 这里描述的方法可以用于推断如何使用本教程中未提到的其他电机和驱动程序。 但是,始终建议您查阅具体型号的电机和驱动器的数据表和指南。

 

增量旋转

 

必需的组件

您将需要以下组件 -

  • 1 × Arduino UNO 板
  • 1 ×小型双极步进电机如下图所示
  • 1 ×LM298驱动IC
 
小型双极步进电机

 

程序

按照电路图进行连接,如下图所示。

电路图

 

草图

在计算机上打开Arduino IDE软件。 在Arduino语言编码将控制你的电路。 通过单击新建打开一个新的草图文件。

Sketch

 

Arduino代码

  1. /* Stepper Motor Control */
  2.  
  3. #include <Stepper.h>
  4. const int stepsPerRevolution = 90;
  5. // change this to fit the number of steps per revolution
  6. // for your motor
  7. // initialize the stepper library on pins 8 through 11:
  8. Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);
  9.  
  10. void setup() {
  11. // set the speed at 60 rpm:
  12. myStepper.setSpeed(5);
  13. // initialize the serial port:
  14. Serial.begin(9600);
  15. }
  16.  
  17. void loop() {
  18. // step one revolution in one direction:
  19. Serial.println("clockwise");
  20. myStepper.step(stepsPerRevolution);
  21. delay(500);
  22. // step one revolution in the other direction:
  23. Serial.println("counterclockwise");
  24. myStepper.step(-stepsPerRevolution);
  25. delay(500);
  26. }

 

代码说明

该程序驱动单极或双极步进电机。 电机连接到Arduino的数字引脚8 - 11。

 

结果

电机将在一个方向上旋转一圈,然后在另一个方向上旋转一圈。

转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号