A4988步进驱动

A4988步进驱动基本知识绕组  常用的步进电机有四根线,1A1B2A2B,1A和1B是一个绕组,2A和2B是一个绕组,用万用表测试1A和1B之间是短路的,2A和2B之间是短路的,1A和1B,2A和2B是等效的。  通常状况下,步进电机可以自由转动(用手可以拧动),1A和1B接在一起的时候,用手拧会感到明显阻力,1A和1B,2A和2B分别接在一起,则阻力更大。步距角  所谓步进电机,就是可以…

大家好,又见面了,我是你们的朋友全栈君。

基本知识

  1. 绕组

  常用的步进电机有四根线,1A 1B 2A 2B,1A和1B是一个绕组,2A和2B是一个绕组,用万用表测试1A和1B之间是短路的,2A和2B之间是短路的,1A和1B,2A和2B是等效的。
  通常状况下,步进电机可以自由转动(用手可以拧动),1A和1B接在一起的时候,用手拧会感到明显阻力,1A和1B,2A和2B分别接在一起,则阻力更大。

  1. 步距角

  所谓步进电机,就是可以一步一步进动的电机,每一步旋转的角度就是步距角。常用电机步距角1.8°的较多,也就是每次步进1.8°,旋转一圈需要200步,也说这个步进电机的分辨率是200步。

  1. 细分

  细分的意义就是提高步进电机分辨率,如果没有细分的话,步进电机每次步进的角度就是步距角,比如1.8°,有了细分,比如16细分,就是把1.8°平均分16份,那么电机的分辨率就变成200*16=3200步了,也就是旋转一圈需要3200步。

  1. 电流

  电流越大,电机扭矩越大。

A4988引脚说明

A4988

  1. ENABLE,

  使能,接低电平则模块开始工作,接高电平则模块关机。

  1. MS1,MS2,MS3

  细分设置,通过这三个脚的高低电平设置细分,1,2,4,8,16这5种细分,具体见表:

MS1 MS2 MS3 细分
Low Low Low 1细分
High Low Low 2细分
Low High Low 4细分
High High Low 8细分
High High High 16细分
  1. RESET

  重置,通常悬空。

  1. SLEEP

  睡眠,接低电平则电机断电,用手拧可以自由转动,接高电平则电机上电,用手拧不动。

  1. STEP

  脉冲输入,往这个脚输入一个方波,电机转动一步,也就是(1.8/16)°(以1.8°电机,16细分为例),往这个脚持续输入方波,则电机持续转动。

  1. DIR

  方向控制,低电平正转,高电平反转。

  1. GND

  地线,两个GND都是一样的,要连在一起接到地线。

  1. VDD

  数字电源,数字电路部分的电源,3.3V或5V,如果这里是3.3V,那么之前说的高电平就是3.3V,低电平就是0V,如果这里是5V,那么之前说的高电平都是5V,低电平是0V。

  1. 1A 1B 2A 2B

  接电机的1A 1B 2A 2B。

  1. VMOT

  功率电源,8-35V,给电机转动提供能源,因此需要较高的电压并有能力输出大的电流。

步进电机驱动方式

  1. 供电

  VMOT接8-35V的功率电源,VDD接3.3V或5V,GND接地,步进电机的4条线插在A4988对应的地方。

  1. 设置细分

  根据表设置步进细分,细分越高步进分辨率越高。

  1. Stm32发生方波

  最简单的方法,类似于让一个Led闪烁,拉高,延时,拉低,延时,循环。

  1. 控制方向和速度

  通过DIR脚控制方向。控制速度其实就是控制脉冲频率,也就是控制拉高拉低之间的延迟时间。
  每一个脉冲电机旋转一步,单位时间给出的脉冲数越多,单位时间旋转的角度就越大,所以速度越快。

  1. 调节电流

  A4988模块上有一个电位器,拧它可以调节电流。

http://www.sohu.com/a/135597153_755644
https://www.jianshu.com/p/a168c20b0f65
https://blog.csdn.net/ling3ye/article/details/47001251

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147905.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • cmd中实现代码雨的命令。。。「建议收藏」

    cmd中实现代码雨的命令。。。「建议收藏」颜色修改时不能使用十六进制数@echoofftitledigitalraincolor0bsetlocalENABLEDELAYEDEXPANSIONfor/l%%iin(0)

    2022年8月5日
    7
  • android 设置标题栏背景颜色_状态栏菜单栏都在哪

    android 设置标题栏背景颜色_状态栏菜单栏都在哪android中沉浸式状态栏的文章已经满大街了,可是在实现某些效果时,还是得各种搜索,测试一通后,最后还常常满足不了要求,即使好不容易在一部手机上满足了需求,放在另外一手机上,发现效果差强人意。今天把自己这几天学到的关于沉浸式状态栏知识进行总结下。问题比如我想实现以下效果:1.同一个Activity需要动态变换标题栏和状态栏文字字体色值,该如何实现?2.一个Activity包含多个F

    2022年10月20日
    4
  • PHP数组详解

    作为一名C++程序员,在转做PHP开发的过程中,对PHP数组产生了一些混淆,与C++数组有相似的地方,也有一些不同,下面就全面地分析一下PHP的数组及其与C++中相应数据类型的区别和联系。数组的分类

    2021年12月27日
    40
  • 《JavaScript 模式》读书笔记(5)— 对象创建模式2

    这一篇,我们主要来学习一下私有属性和方法以及模块模式。三、私有属性和方法JavaScript并没有特殊的语法来表示私有、保护、或公共属性和方法,在这一点上与Java或其他语言是不同的。JavaSc

    2022年3月25日
    38
  • java-计算器模板及源码

    java-计算器模板及源码java-计算器模板及源码计算器实现了大部分基础功能:基本运算,菜单栏选项,并且拓展了普通型和科学兴选项等等,读者可以在此基础上进行修改和拓展。其他具体实现方法可以看源码,里面有详细的概述,代码框架清晰。读者在阅读和引用过程中,如有问题欢迎评论区留言和私信交流。运行环境:win10EclipseIDEforJavaDevelopers-2020-06下面是计算器的视图:importjava.awt.*;importjava.awt.event.ActionEvent;im

    2022年7月19日
    13
  • Springboot+netty实现Web聊天室

    Springboot+netty实现Web聊天室Web聊天室的实现一、项目的创建一、项目的创建新建Spring项目:选择JDK版本:选择SpringWeb:项目名称和位置的设置:

    2022年6月22日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号