4-1-6 arduino控制42步进电机(电机专项教程)

2024-08-22 07:36

本文主要是介绍4-1-6 arduino控制42步进电机(电机专项教程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

4-1-6 arduino控制42步进电机(电机专项教程)

  • 4-1-6 arduino控制42步进电机
    • NEMA双极性步进电机
    • A4988
    • 如何使用arduino连接A4988驱动模块
    • Arduino控制Nema-17步进电机(简化版)
    • A4988 Vref电压调节(具体看视频)

4-1-6 arduino控制42步进电机

在这里插入图片描述

之前学习了步进电机的基本工作原理,此学习如何使用arduino控制步进电机

直接控制比较麻烦,此处使用arduino控制A4988再间接控制NEMA17步进电机

A4988模块(非常常见,功能全面,控制NEMA17步进电机最常用的模块)
在这里插入图片描述
在这里插入图片描述

http://www.taichi-maker.com/homepage/reference-index/motor-reference-index/arduino-a4988-nema-stepper-motor/

使用此页面比较方便找到阅读

有详细说明及电路连接以及程序

这里主要是讲解如何控制NEMA17步进电机,还有个stepper库控制28BYJ-48步进电机的
http://www.taichi-maker.com/homepage/reference-index/arduino-library-index/stepper-library/
Stepper库

如何控制NEMA步进电机

NEMA双极性步进电机

http://www.taichi-maker.com/homepage/reference-index/motor-reference-index/nema-stepper-motor/

在这里插入图片描述

基座为方形的,正方形的边长为1.7英寸的(只代表方形尺寸,但内部结构可能不同)
需要知道其他的参数如极性、步进角度、电流、电压等,通过接线图得知
双极性(2相4线)
步进角度为1.8度时表名为全步进控制方式,此时转1步则转1.8度;当以半步进方式控制电机时,转1步就是0.9度;1/4步进控制方式则为转1步就是0.45度;一次类推1/8、1/16。
在这里插入图片描述

并不是所有的NEMA17都可以被A4988控制,我们需要看NEMA17电机的基本参数再决定其是否使用A4988控制

具体哪些NEMA17可以被A4988控制?入下

A4988

首先让我们来看一下A4988电机驱动板的引脚功能:
在这里插入图片描述

A4988电机驱动板引脚说明 以上示意图引自dronebot workshop(www.dronebotworkshop.com)网站

VMOT – 电机电源正极(A4988给电机的外接可用电源电压为8V ~ 35V)注:此引脚用于连接为电机供电的电源(使用的是直流电源,若有个220V的电机,是无法接在此处的,要220v必须有220V的电源给A4988供电,只会烧毁A4988)
GND – 电机电源接地
2B, 2A – 电机绕组2控制引脚(第二相)
1A, 1B – 电机绕组1控制引脚(第一相)
VDD – 逻辑电源正极(3 – 5.5伏)注:此引脚用于为A4988电机驱动板供电(给A4988模块本身提供的信号电源,而非给电机的供电电源)
GND – 逻辑电源接地
ENABLE – 使能引脚(低电平有效)
引脚说明:此当此引脚为低电平时,A4988才能进行电机驱动工作,当该引脚为高电平,A4988将不会进行电机驱动工作。如果该引脚悬空,则A4988默认为使能状态。即该引脚没有连接任何电平时,A4988可以正常工作。
MS1, MS2, MS3 – 驱动模式引脚
引脚说明:这三个引脚控制A4988微步细分驱动模式。通过这三个引脚的逻辑电平,我们可以调整A4988驱动电机模式为全、半、1/4、1/8 及 1/16 步进模式。上图中右侧的表格里有具体如何调节这三个引脚电频以及A4988在不同的电平组合下的驱动模式。表格中“L”代表低电平,“H”代表高电平。“FULL”为全步进,“HALF”为半步进,“QUATER”为1/4步进, “EIGHTH”为1/8步进, “SIXTEENTH”为1/16步进。当MS1, MS2, MS3这几个引脚悬空时,A4988默认为全步进电机驱动模式。
RESET – 复位引脚
引脚说明:该引脚为低电平有效,即当该引脚为低电平时,A4988将复位。如果该引脚悬空,则A4988默认为高电平。即该引脚没有连接任何电平时,A4988可以正常工作。
SLEEP – 睡眠引脚
引脚说明:当该引脚连接电平为低电平时,A4988将进入低能耗睡眠状态,即消耗最小的电能。如果无需使用SLeep功能,则可以将SLEEP引脚与RESET引脚连接,则A4988将持续保持正常能耗状态而不会进入低能耗状态。
STEP – 步进引脚
引脚说明:此引脚用于通过Arduino等微控制器向A4988发送脉冲控制信号,A4988接收到此信号后,会根据 MS1, MS2 和 MS3引脚控制电机运转。
DIR – 方向引脚
引脚说明:通过此引脚可以调整A4988控制电机运行方向。当此引脚为低电平,A4988将控制电机顺时针旋转。高电平则逆时针旋转。

如何使用arduino连接A4988驱动模块

A4988电机驱动板只需要两个Arduino引脚即可控制步进电机运行。

在这里插入图片描述

1,MS1,MS2,MS3悬空,默认全步进模式
2,此处RESET和SLEEP短接了,使sleep保持高电平则不进入睡眠模式,一个小技巧
3,Arduino的3号引脚与A4988的step引脚连接,发送脉冲信号给电机让其走多少步
4,Arduino的2号引脚与A4988的DIR引脚连接,发送高低电平信号,控制电机的方向
5,VMOT、GDN给电机供电的电源,需要接12V的直流电源,此处中间还连接了100uf的点解电容(保护A4988的驱动板的,若长期使用此电容非常必要),注意电解电容有正负极区分
6,A4988四个引脚连接步进电机的四个控制引线的,标准步进电机有红蓝绿黑色
7,Arduino的正5V和GND连接A4988的VDD和GND
8,注意,通常从店家买来的A4988模块是没有经过调节的,对于没有经过调节的模块通电,容易把电机烧坏了,要调节A4988让其适应电机,此处非常关键。调节使用

Arduino控制Nema-17步进电机(简化版)

请留意在以上电路中,A4988电机电源引脚上连接了一个100uF的电解电容(电解电容引脚有正负极之分,电容正极引脚应接在A4988电机电源正极引脚,相反的电解电容负极引脚接在A4988电机电源接地引脚)。该电容可以起到A4988驱动板电源保护的作用。如果没有100uF的电解电容,可以使用任何大于47uF的电解电容来替换。请将该电容尽量安装在靠近VMOT和GND引脚。
其它接线连接相对简单,请根据以上示意图进行相应连接。
此示例为简化版电路连接,在此模式下:

  1. A4988模块只能全步进驱动,您无法通过Arduino控制A4988进行半步进或微步模式驱动。(MS1,MS2,MS3悬空,默认全步进模式)
  2. A4988模块的SLEEP/ENABLE/RESET功能不可用(此处RESET和SLEEP短接了,使sleep保持高电平则不进入睡眠模式,一个小技巧)
    如需使用这些功能请参考Arduino通过A4988模块控制步进电机(完整版)
    注意:连接好接线后,请不要马上通电我们还要进行一项非常重要的工作:A4988电流调节

A4988 Vref电压调节(具体看视频)

所谓Vref电压调节,就是通过A4988上的电位器旋钮调节Vref参考电压。该电压将直接影响到步进电机在工作时流过线圈的电流强度。请注意,这一步操作非常重要,如果忽略这一步有可能会产生电机损坏的后果。

A4988 Vref参考电压计算公式:Vref = Imax X Rcs X 8
Rcs: 市面上A4988模块上的Rcs电阻值一般有3种类型,0.05 欧姆, 0.1 欧姆或0.2 欧姆。大部分A4988模块顺时针旋转电位器可调大Vref,逆时针旋转电位器调小Vref。
Vref: 电位器金属旋钮和GND之间的电压即为Vref。可使用小改锥旋转电位器旋钮从而改变Vref。(如下图所示)
Imax:步进电机工作时,线圈允许流过的最大电流

在这里插入图片描述

使用万用表测量A4988步进电机驱动模块Vref参考电压
例:Rcs为0.1欧姆,电机Imax为1.5A,通过以上公式计算,Vref参考电压为1.2 V。即:我们将通过调节电位器旋钮 将Vref调节为1.2伏特左右。
测量Vref时注意:

  1. A4988模块的VDD引脚需要连接+5V电压(可连接Arduino的+5V引脚)
  2. A4988模块的GND引脚必须与电路中的其它设备共地(可连接Arduino的GND引脚)
  3. A4988模块的VMOT引脚无需通电,但是通电也不影响Vref的测量。
  4. A4988模块的1A/1B/2A/2B引脚可以不与步进电机连接,但连接也不会影响Vref的测量
  5. Arduino无需运行任何程序

这篇关于4-1-6 arduino控制42步进电机(电机专项教程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1095636

相关文章

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹

spring AMQP代码生成rabbitmq的exchange and queue教程

《springAMQP代码生成rabbitmq的exchangeandqueue教程》使用SpringAMQP代码直接创建RabbitMQexchange和queue,并确保绑定关系自动成立,简... 目录spring AMQP代码生成rabbitmq的exchange and 编程queue执行结果总结s

python使用Akshare与Streamlit实现股票估值分析教程(图文代码)

《python使用Akshare与Streamlit实现股票估值分析教程(图文代码)》入职测试中的一道题,要求:从Akshare下载某一个股票近十年的财务报表包括,资产负债表,利润表,现金流量表,保存... 目录一、前言二、核心知识点梳理1、Akshare数据获取2、Pandas数据处理3、Matplotl

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

2025版mysql8.0.41 winx64 手动安装详细教程

《2025版mysql8.0.41winx64手动安装详细教程》本文指导Windows系统下MySQL安装配置,包含解压、设置环境变量、my.ini配置、初始化密码获取、服务安装与手动启动等步骤,... 目录一、下载安装包二、配置环境变量三、安装配置四、启动 mysql 服务,修改密码一、下载安装包安装地

电脑提示d3dx11_43.dll缺失怎么办? DLL文件丢失的多种修复教程

《电脑提示d3dx11_43.dll缺失怎么办?DLL文件丢失的多种修复教程》在使用电脑玩游戏或运行某些图形处理软件时,有时会遇到系统提示“d3dx11_43.dll缺失”的错误,下面我们就来分享超... 在计算机使用过程中,我们可能会遇到一些错误提示,其中之一就是缺失某个dll文件。其中,d3dx11_4