初识Arduino,有什么错漏的地方请指正.

学会使用A4988驱动电机对于DIY3D打印机,雕刻机很有帮助。

6线一般是两组,先用万用表接其中一根线,然后一次点其他线,凡是不同的都是另外一组,每一组有三根线,两两测试,电阻最大的是线圈的两头抽头,剩下一根是中心抽头。

实验目的:Arduino与A4988驱动42步进电机

材料如下:

Arduino uno *1
A4988            *1
42步进电机    *1
面包板            *1
9V外接电源    *1
导线               若干

step 1:接线

关于接线更详细的相关资料:http://fritzing.org/projects/a4988-single-stepper-test/

MS1 , MS2 , MS3 跳线说明:(例子里是低电平,悬空或接地线,使用全步进模式)

分别是全步进,1/2步进,1/4步进,1/8步进,1/16步进模式。

步进电机走一步是1.8度,一圈就是200步。例如使用1/16步进,则需要走3200步才等于一圈。

step 2:测试程序程序

网盘下载程序

[objc]  view plain copy
  1. int x;
  2. void setup()
  3. {
  4. pinMode(6,OUTPUT); // Enable
  5. pinMode(5,OUTPUT); // Step
  6. pinMode(4,OUTPUT); // Dir
  7. digitalWrite(6,LOW); // Set Enable low
  8. }
  9. void loop()
  10. {
  11. digitalWrite(4,HIGH); // Set Dir high
  12. for(x = 0; x < 200; x++) // Loop 200 times
  13. {
  14. digitalWrite(5,HIGH); // Output high
  15. delayMicroseconds(800); // Wait 1/2 a ms
  16. digitalWrite(5,LOW); // Output low
  17. delayMicroseconds(800); // Wait 1/2 a ms
  18. }
  19. delay(1000); // pause one second
  20. digitalWrite(4,LOW); // Set Dir low
  21. for(x = 0; x < 200; x++) // Loop 2000 times
  22. {
  23. digitalWrite(5,HIGH); // Output high
  24. delayMicroseconds(800); // Wait 1/2 a ms
  25. digitalWrite(5,LOW); // Output low
  26. delayMicroseconds(800); // Wait 1/2 a ms
  27. }
  28. delay(1000); // pause one second
  29. }

ps后记学习:

*脚6(-en) 低电平为启动电机(enable),貌似也可以不接,试过一样能运行.但如果要控制电机的启动关闭还是要用上

*脚4(-dir) 用高低电平控制方向.

*脚5(-step) 用高低电平驱动电机转动.注意中间间隔等待的微秒值,如果太快会导致电机有声响不转动.

4988步进电机驱动板常见问题

1、4988驱动板可以驱动57电机吗?
4988可以驱动的电机跟尺寸关系不大,主要与工作电流有关,理论上电流小于2A的步进电机都是可以驱动的,不论是42还是57电机。

2、可以驱动多大的电流?
如果4988芯片上没有加散热片,电流最好在1.2A以下。如果加散热片,电流可以达到2A。

3、步进电机的连接方式是什么?
正如4988板子背面所标识的,连接方式是依次连接步进电机的1B-1A-2A-2B,或者反向为2B-2A-1A-1B,或者1A-1B-2B-2A,其它的方式一次类推。如果你的电机线是标准的红蓝绿黑的颜色,可以按照颜色连接为:红-蓝-绿-黑,或相反:黑-绿-蓝-红。

4、如何调节相电流?
相电流的大小跟步进电机的扭力有直接关系,如果感觉你的步进电机扭力不足,可以加大4988板子的电流配置。驱动板是通过一个小的电位器来实现对输出电流的配置的。可以通过用万用表测量电位器中间管脚的电位。电位和电流的关系满足下面的公式:Vref = A*0.8.也就是如果你想配置电机工作电流为1A,则电位应该配置在0.8V。默认的元件配置可以将电流调节到1.5A,如果需要更大电流需要修改电路中的R1,将30K的阻值改为20K(左右),就可以将电流调节到2A左右。

5、4988板子的细分如何配置?
4988板子细分配置需要ramps或其它相似板子的短路块来配置。ramps上对应每个4988驱动都有ms1,ms2,ms3三个短路块来调节细分(需要取下4988板子才可以看到),
ms1 | ms2 | ms3
no | no | no |全细分
yes | no | no |1/2(2细分)
no | yes | no | 1/4 (4细分)
yes | yes | no |1/8(8细分)
yes | yes | yes | 1/16(16细分)

6、接上电机后,电机不能正常运行,在左右抖动,是什么原因?
电机出现抖动一般有两个原因,
一是缺相:可能是4988板子没有焊接好或因为外力导致4988的输出端某一相断开,造成电机缺相从而抖动。也有可能是步进电机接线只用一相没有连接好;
而是两相接错:如果步进电机没有按照正确的顺序进行连接,电机也会出现抖动的情况,请按照问题3进行正确的连接。

7、4988可以驱动两相六线或两相无线的电机吗?
可以,两相连线按照问题3连接,将中间抽头悬空即可。

8、电机停止转动时会有滋滋的电流声。
首先说明的是这是正常现象。步进电机的特点是走特定的角度而不是一直转,所以步进电机都有一个参数,步距角。如果通过细分,可以最小走 步距角/细分数的角度,比如步距角为1.8度的步进电机,采用16细分,最小可以走的角度是1.8/16=0.1125度。但由于这个角度非常小,并且不一定在电机物理所在的位置(1.8度为一个物理位置),所以步进电机停止时也需要通电,从而保证电机不会自动跳到物理步距角上。因为这个特性使得步进电机在静止时会有电流声,这属于正常现象,不用担心。

Arduino+A4988+步进电机相关推荐

  1. arduino+A4889+步进电机

    内容 本篇文章主要是对步进电机相关原理介绍,并实现了arduino+A4899步进电机驱动对四二步进电机进行驱动. 材料清单 arduino nano(其他型号也可以).A4899.42步进电机.ar ...

  2. 淘晶驰+arduino控制步进电机

    淘晶驰屏幕+arduino控制步进电机 ps:写的不好请指正. 1.准备材料 淘晶驰屏幕(带有触屏功能) arduino UNO板子 面包板 电源以及相关的配件 步进电机+配套启动器 电源设备交流转直 ...

  3. 基于Arduino控制步进电机 编码器普菲特TB6600控制

    1.因为步进电机用的是下面 这种,它的电流是1.5A,因此我们把编码器上的 开关用1.7A的通道. 就是上面 这个通道,可以看出来我们要把s4,s5打开s6关闭. 就是上面 这种. 然后接线,先接电机 ...

  4. Arduino - 28BYJ-48步进电机+ULN2003驱动模块

    步进电机的操作倒是简单,只需要引用Stepper.h库文件操作即可. 关键点: 1.网上买的步进电机,很多接线顺序都不对.经过不懈努力查资料,终于找到了能用的接线方式: 电机上的12345针脚,对应着 ...

  5. 玩转X-CTR100 l STM32F4 l DRV8825 A4988 步进电机控制

    我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器控制步进电机,实现步进 ...

  6. 【STM32】A4988步进电机驱动器的使用-未完待续

    文章目录 A4988使用方法 A4988控制模式 A4988驱动板逻辑控制图 A4988的接线方式 步进电机接线 A4988使用STM32F103C8T6进行驱动 A4988原理图封装 与步进电机连接 ...

  7. Arduino编程-步进电机角度控制

    #include<Stepper.h>#define KEY 2 //定义 key_1 I/O number is 2 // 参考文件 /*28BYJ-48.pdf该参数根据电机每一转的步 ...

  8. arduino 控制步进电机

    Arduino 可以通过控制步进电机的电流来控制步进电机的运动.通常,我们会使用 Arduino 的数字输出引脚来控制步进电机的电流.我们可以通过编写代码来实现步进电机的驱动,控制电机的转动方向和转动 ...

  9. Arduino 控制步进电机的转速随时间按正弦规律变化

    下面这段Arduino代码可以用的前提条件是,你用的步进电机的驱动器只需要你给定速度(脉冲时间间隔)和方向即可(推荐用这种驱动器),不需要你具体地指定A+,A-,B+,B-四根线分别是高电平还是低电平 ...

最新文章

  1. WinCE中命令行工具Viewbin简介(查看nk.bin中包含的文件)
  2. java内存栅栏_内存屏障(Memory Barriers/Fences) - 并发编程中最基础的一项技术
  3. 【Q】之Linux中的防火墙netfilter iptables
  4. Net 分页功能的实现
  5. sharepoint ECMA
  6. [.NET Core].NET Core R2安装及示例教程
  7. Shell变量的初始值赋值
  8. 多个定时器相互干扰的问题_相互问题
  9. Auto Layout 和 Constraints
  10. C++中类的拷贝控制
  11. oracle manager 配置,Oracle Net Manager 基本配置
  12. HTML网页设计结课作业~仿小米商城网站纯HTML模板源码(HTML+CSS)
  13. HOJ 4585 Shaolin(map, 迭代器)
  14. HTML实现可编辑下拉框
  15. Vue基础语法知识(自用,完整版)
  16. STM8S103之tim1PWM输出
  17. [渝粤教育] 西南科技大学 材料力学 在线考试复习资料(1)
  18. 第1章---hiahia
  19. pd.DataFrame()快速筛选数据
  20. ESP8266 网络服务器仪表显示传感器读数

热门文章

  1. SAP MIRO付款条件与折扣
  2. nRF52832 — 提高蓝牙BLE的数据传输速率
  3. linux中find命令详解,Linux下的find指令详解
  4. PTA——然后是几点
  5. 阳了别怕,保护好自己
  6. 中国大学MOOC课程《Python语言程序设计》课后练习第一周
  7. Maven升级3.8.1后maven-default-http-blocker (http://0.0.0.0/): Blocked mirror for repositories
  8. 统计java类含有多少个方法_35个Java代码优化的小技巧,你知道几个?
  9. 1182. 旅游航道(tarjan算法)
  10. 增强 Stream 接口的 distinct 方法的一些思考