A4988步进电机驱动器驱动控制42步进电机速度,步进电机调速,调节驱动电流

   
 
1  A4988步进电机驱动器简介

方便使用,是我们这些用户最想要的,固有的名词和深入介绍在这就不多说了,您可以百度,或这下载附件,芯片手册中有详细的说明。
A4988是一款带转换器和过流保护的DMOS微步进电机驱动器,它用于操作双极步进电机,在步进模式,输出驱动的能力35V和±2A。
转换器是A4988易于实施的关键。只要在“STEP”引脚输入一个脉冲,即可驱动电动机产生微步。无须进行相位顺序表、高频率控制行或复杂的界面编程。A4988界面非常适合复杂的微处理器不可用或过载的应用。

2  产品特点

1、控制简单,只需要控制STEP与DIR两个端口;
2、精度调整,五种不同的步进模式:全、半、1/4、1/8、1/16;
3、可调电位器可以调节输出电流,从而获得更高的步进率;
4、兼容3.3V和5V逻辑输入;

3  芯片典型电路

<ignore_js_op> 
注意步进电机的接线方式,步进电机为两相四线的步进电机,OUT1A与OUT1B分别接电机同相的两端;OUT2A与OUT2B分别接电机另一相的两端。在连接步进电机时,一定要知道哪两个线是同一相。

4  最大额定值

<ignore_js_op>

5  步进模式设置

<ignore_js_op>
例如全模式时,一个脉冲,步进电机旋转角度1.8°;在1/4模式时,一个脉冲,步进电机旋转角度为0.45°。

6  模块连接图

<ignore_js_op>
测试中选择型号为17HS5413(42BYGH)的两相四线步进电机,步距角为1.8°,200个脉冲转动一圈。
STEP、DIR分别连接单片机的两个控制端口,EN可以使用单片机端口控制,也可以直接连接GND使能;MS1、MS2、MS3按照上一节“步进模式设置”,接高低电平,设置步进模式,来选择不同的步距角。设置脉冲的频率,来控制旋转速度。
2B、2A、1A、1B分别接步进电机红、蓝、黑、绿线。
VMOT、GND接12V左右直流电源(电压大小更具步进电机不同,选择合适电压)。
VDD、GND接3.3V或5V。
7  实验代码
  1. //初始化步进电机控制端口
  2. //STEP1 PCout(4)
  3. //DIR1 PCout(5)
  4. void STEP_Init(void)
  5. {
  6. RCC->APB2ENR|=1<<4;    //使能PORTC时钟
  7. GPIOC->CRL&=0XFF00FFFF;
  8. GPIOC->CRL|=0X00330000;
  9. }
  10. //dir:为方向控制,TRUE:正转 FALSE:反转
  11. //period为周期
  12. //steps:脉冲个数
  13. void Step_Control(u8 dir,u16 period,u32 steps)
  14. {
  15. u32 i;
  16. for(i=0; i <= steps;i++)
  17. {
  18. DIR = dir;
  19. STEP = 1;
  20. delay_us(1);
  21. STEP = 0;
  22. delay_us(period);
  23. }
  24. }
  25. #define        TRUE  1
  26. #define FALSE 0
  27. //端口定义
  28. #define STEP PCout(4)
  29. #define DIR PCout(5)
  30. int main(void)
  31. {
  32. Stm32_Clock_Init(9); //系统时钟设置
  33. delay_init(72);             //延时初始化
  34. STEP_Init();                 //步进电机驱动端口初始化
  35. LED_Init();                           //初始化与LED连接的硬件接口
  36. while(1)
  37. {
  38. LED = !LED;
  39. Step_Control(FALSE,1600,200);
  40. delay_ms(1000);
  41. Step_Control(TRUE,1600,400);
  42. delay_ms(1000);
  43. }
  44. }
程序实现功能:电机反转1圈、正转2圈。
不改变程序,设置不同的步进模式,观察步进电机的旋转角度。
<ignore_js_op> A4988步进电机驱动器使用手册.rar (636.55 KB, 下载次数: 554) 
此文件主要包含1:A4988步进电机驱动器使用手册,主要涉及步进模式设置、与单片机和步进电机的连接方式;
              2:A4988芯片手册;
              3:步进电机驱动程序例程
例程是通过延时来实现控制步进电机速度的,缺点就是单片机“其他的不能干了”;也有使用PWM来控制步进电机的,但是这个缺点就是,调速度时要不停的初始化,脉冲个数也不好控制。个人决定中断是最好用的,在下次更新的时候我们贴上。
 
 
 
 
   
大家还有一个比较关心的问题,就是如何调节A4988电机驱动的输出电流。
<ignore_js_op>

最大输出电流,与Rs和Vref有关,I=Vref/(8*Rs)。
Rs:在驱动板上是0805的贴片电阻封装,通过上面的丝印,R***,可以知道电阻的阻值,我手中的模块上面的电阻丝印为R100,电阻阻值为0.1Ω。
滑动变阻器:驱动板上的滑动变阻器为圆形的,上面有一个缺口,默认向下,顺时针旋转时,相当于上图的滑动电阻指针向左移动,当缺口朝向A4988芯片时,是一个0Ω和10k的临界状态。
VDD加5V电源, Vref的最大电压为1.67,I=1.67/(8*0.1)=2.09A。步进电机实际测得的电压是A4988输出电流的0.7倍,即1.46A。步进电机不同,承受的电流也不同,17HS5413的电流为1.3A,此时的输出电流,已经高于电机所承受电流,需要将滑动变阻器逆时针旋转。

A4988驱动42步进电机的更多相关文章

  1. TPYBoard v102 驱动28BYJ-48步进电机

    TPYBoard v102 驱动28BYJ-48步进电机 实验目的 了解步进电机的工作原理 学习步进电机的驱动方法 实验器材 TPYBoard v102 1块 微型步进电机(28BYJ-48) 1个 ...

  2. Arduino+A4988驱动两相四线步进电机

    先吐槽一下,在某宝买东西这么多年碰到的不靠谱的卖家也没这几天多.丝杆发短,42电机只有32大,碳杆上的鱼眼粘的没法再歪了还死紧……所以组装还得几天.于是先玩了一下DC-DC降压模块和A4988,规划了 ...

  3. Arduino UNO开发板、Arduino CNC Shield V3.0扩展板、A4988驱动板、grbl固件使用教程

    前言 CNC Shield V3.0可用作雕刻机,3D打印机等的驱动扩展板,板上一共有4路步进电机驱动模块的插槽,可驱动4路不进电机,而每一路步进电机都只需要2个IO口,也就是说,6个IO口就可以很好 ...

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

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

  5. arduino中驱动 步进电机

    参考:https://www.arduino.cn/thread-75936-1-1.html 知识点:    步进电机是一种将电脉冲转化为角位移的执行机构.通俗一点讲:当步进驱动器接收到一个脉冲信号 ...

  6. STM32串口控制步进电机(原创)

    用的42步进电机: 厂家可能不一样,两项四线步进电机,里面有两个线圈.在电机什么电都没有接的情况下,用万用表测量四个管脚:两两短接(或者阻值很小)的为一组,可以分别接A+,a-剩余接B+,B-;顺序可 ...

  7. 用STM32定时器中断产生PWM控制步进电机

    控制步进电机可以使用PWM.定时器中断.延时,这里用的就是定时器中断来让它转动. 一.硬件部分1.使用的硬件板子用的是正点原子的STM32F103 mini板,驱动器是DM420(DM420驱动器资料 ...

  8. RAMPS1.4 3D打印控制板:软件下载\连接\安装\测试

    RAMPS1.4 3D打印控制板:软件下载\连接\安装\测试 特别说明: 电源接反,电机驱动板接反将有可能烧毁芯片和电路,请再三确认后再进行通电. 如何使用: 1.需要用到的模块或器件: Arduin ...

  9. "废物利用"也抄袭——“完全”DIY"绘图仪"<一、准备工作>

    上一个光驱造已经解体若干天了,因为事情很多arduino也不太熟悉,直到今天才做出了一个可以用的样本.当然,上位机和下位机代码都写好了,可以正常工作,但是由于电路知识还是中学那点没还给老师的,加以各种 ...

随机推荐

  1. C++实现顺序表的14种操作

    C++顺序表的操作 2017-12-27 // 顺序表.cpp: 定义控制台应用程序的入口点. //Author:kgvito YinZongYao //Date: 2017.12.27 #inclu ...

  2. 吴裕雄--天生自然 JAVASCRIPT开发学习:prototype(原型对象)

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. 吴裕雄--天生自然 JAVASCRIPT开发学习:函数调用

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. PAT Advanced 1053 Path of Equal Weight (30) [树的遍历]

    题目 Given a non-empty tree with root R, and with weight Wi assigned to each tree node Ti. The weight ...

  5. 关于debug模式下对象toString报空指针的问题。Method threw 'java.lang.NullPointerException' exception. Cannot evaluate cn.gooday.jsh.service.common.dto.RestControllerResult.toString()

    这个如果debug的时候可以一步步走到正常return或者运行的时候有正确返回值.说明代码是没问题的. 出现这个的原因是dto对象里有一些字段查出来是空的,或者这个字段本来在dto里就是冗余字段. 因 ...

  6. Hough直线and圆环变换(如何检测直线、圆环)

    1.霍夫变换 2.cv2.HoughLines() 返回值就是(ρ, θ).ρ 的单位是像素,θ 的单位是弧度.这个函数的第一个参 数是一个二值化图像,所以在进行霍夫变换之前要首先进行二值化,或者进行 ...

  7. 微信官方小程序示例demo 微信开发者工具打开不显示云开发按钮

    如果直接打开官方的demo,微信开发者工具上是不显示云开发按钮的. 是因为默认appid是测试号.要换成一个正式appid就会显示云开发按钮了. 分享一个朋友的人工智能教程.零基础!通俗易懂!风趣幽默 ...

  8. pyQt 流布局的一个例子

    瀑布流布局 from PyQt5.QtCore import QPoint, QRect, QSize, Qt from PyQt5.QtWidgets import (QApplication, Q ...

  9. Java方法的多态

    方法的多态 重载.方法名相同,其他可以不同 重写.父类子类的方法名相同.访问权限不能更小 重写: 继承了父类 父类方法不能满足 子类.父类这个方法的方法名相同 参数相同 返回类型相同 访问权限不能更小 ...

  10. placeholder在IE下的兼容问题

    最近写项目要求兼容到ie8,写完了去ie测试的时候,发现了placeholder在ie下的兼容问题,为了解决,搜罗网上各种牛人的解决方案,自己总结如下: css样式(设置各浏览器下placeholde ...