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

相关文章

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

Python虚拟环境终极(含PyCharm的使用教程)

《Python虚拟环境终极(含PyCharm的使用教程)》:本文主要介绍Python虚拟环境终极(含PyCharm的使用教程),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录一、为什么需要虚拟环境?二、虚拟环境创建方式对比三、命令行创建虚拟环境(venv)3.1 基础命令3

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.

Python 安装和配置flask, flask_cors的图文教程

《Python安装和配置flask,flask_cors的图文教程》:本文主要介绍Python安装和配置flask,flask_cors的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,... 目录一.python安装:二,配置环境变量,三:检查Python安装和环境变量,四:安装flask和flas

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J