A4988驱动42步进电机

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,此时的输出电流,已经高于电机所承受电流,需要将滑动变阻器逆时针旋转。

时间: 2024-12-13 19:58:52

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

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

实验目的 了解步进电机的工作原理 学习步进电机的驱动方法 实验器材 TPYBoard v102 1块 微型步进电机(28BYJ-48) 1个 步进电机驱动板(ULN2003APG) 1块 micro USB数据线 1条 杜邦线 若干 步进电机的介绍 本次实验采用的是28BYJ-48 四相八拍电机,电压DC5V~12V. 24BYJ48名称的含义: 24:电机外径24mm B:步进电机中步字的拼音首字母 Y:永磁中永字的拼音首字母 J:减速的减字拼音首字母 48:四相8步 实物图 工作原理 步进电

[转载]步进电机原理介绍与基于STM32的SPWM驱动步进电机,使用软件实现电机细分

文章摘自: http://bbs.eeworld.com.cn/thread-370591-1-1.html 一.混合式步进电机的结构和驱动原理 电机原理这部分不想讲的太复杂了,拆开一台电机看看就明白了.      电机的转子是一个永磁体, 它的上面有若干个磁极SN组成,这些磁极固定的摆放成一定角度.电机的定子是几个串联的线圈构成的磁体. 出线一般是四条线标记为A+,A-,B+,B-.A相与B相是不通的,用万用表很容易区分出来,至于各相的+-出线实际是不用考虑的,任意一相正负对调电机将反转.另外

绿色A4988步进电机驱动模块与红色有什么不同

本质上A4988驱动模块都没有什么区别,一般而言,市面上A4988主要是RS电阻值不一样,一般有3种类型0.05 欧姆, 0.1 欧姆或者0.2 欧姆 这会导致最大输出电流不一样. A4988驱动最大电流计算公式:I_TripMax= Vref/(8*Rs).例如:Rs为R100,我们需要最大1.5A的驱动电流,Vref参考电压就需要调节到1.2 V. 参考电压Vref可以通过调节电位器改变,顺时针旋转电位器调大电压,逆时针旋转电位器调小电压.测量电位器金属旋钮和GND之间的电压,即是Vref.

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

用的42步进电机: 厂家可能不一样,两项四线步进电机,里面有两个线圈.在电机什么电都没有接的情况下,用万用表测量四个管脚:两两短接(或者阻值很小)的为一组,可以分别接A+,a-剩余接B+,B-;顺序可以互换:  经测,我用的17hs4417  黑绿一组,红蓝一组. 建议还是买个步进电机驱动器,五六十一个,相当好用. 贴一下STM32串口控制步进电机的代码: #include "led.h" #include "delay.h" #include "key.

LCD 3D 打印的设计和制作

技术原理 根据 王成伟 公开的 LCD 3D打印原理 http://blog.sina.com.cn/s/blog_69c8f72b01017jme.html 该技术是类似使用投影仪实现的DLP 3D打印原理实现的,按我的理解,基本上就是把现在常见的LCD 投影仪中的一部分提取出来用作3d打印机的一部分, 使用405nm的紫光LED左右光源(现在常见的光敏树脂都是405nm波长的) 控制部分使用 开源的nanodlp 配合树莓派 实现,直接通过树莓派 连接 A4988步进电机驱动模块实现Z轴控制

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

RAMPS1.4 3D打印控制板:软件下载\连接\安装\测试 特别说明: 电源接反,电机驱动板接反将有可能烧毁芯片和电路,请再三确认后再进行通电. 如何使用: 1.需要用到的模块或器件: Arduino Mega2560 主控板(该套件包含):这是3d打印机的大脑,负责控制整个打印机来完成特定的动作,如打印特定的文件等: RAMPS1.4 (该套件包含):这是上面主控板的拓展板,有它是为了更好的与其它硬件进行连接和控制的,起到过渡桥梁的作用: A4988步进电机驱动板(该套件包含):这是用来连接

&quot;废物利用&quot;也抄袭——“完全”DIY&quot;绘图仪&quot;&lt;一、准备工作&gt;

上一个光驱造已经解体若干天了,因为事情很多arduino也不太熟悉,直到今天才做出了一个可以用的样本.当然,上位机和下位机代码都写好了,可以正常工作,但是由于电路知识还是中学那点没还给老师的,加以各种结构构件也是第一次自己设计制造,所以还有很多不尽人意的地方.把整个过程记录一下,以供大家参考.当然,最主要的部分还是程序设计,其他的已经有很多教程了,我也是跟着学了不少. 一.所用材料 1.三角洲一台,这确实省了很多苦工,精确度虽然的确不咋地,但还是可以满足一般需求的(自己玩玩够了). 2.Ardu

800元组装一台3D打印机全教程流程-零件清单

继前面的教程800元组装一台3D打印机全教程流程 k800是一台根据kosselmini改进的低成本3d打印机,通过改变设计,降低了成本,但损失较少性能,取得性价比. 主要改动是:底部支架改为->通用支架行星步进改为->小比例齿轮步进直线滑轨改为->滑车鱼眼关节并联臂->强磁并联臂 电机部分:43mm长的42步进电机X4个,42步进负责k800(kosselmini)3d打印机的“驱动”以及“送丝”工作.某宝价格基本在45元左右,负责“送丝”的42步进,如果要求比较高可以购买63m

【龙印】龙芯1C300A片内ADC的测试

本来是想用1c300a片内自带的ADC+ntc热敏电阻作为3d打印机的温度传感器的.后来测试发现精度不够,只有外挂adc了.测试如下 先用两个电阻串联,用万用表测试开路时的电阻,通电时的电压,并读取1C300A片内ADC的值,通过电压手动计算理论的ADC值.大概的示意图如下 测试结果如下 该ADC是十位的,满量程1023,量程中间(512)附近的精度还可以,量程的两端就有点差了. 其中,第一项R1=4.6k,R0=73.6k是把ntc热敏电阻接到ramps1.4扩展板上测试的结果. 下面是用脚本