0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

以四线双极性步进电机为例,教你如何解决步进电机只颤不转问题

GReq_mcu168 来源:未知 作者:佚名 2017-11-27 06:49 次阅读

这里以四线双极性步进电机为例:

上面就是常见的四线双极性步进电机的实物图,上一篇文章里面已经说明了步进电机的相关基础概念,下面开始进行步进电机的编程

首先要说明一下:我的步进电机的驱动芯片时 L6219 芯片 ,它是具有细分功能的,但是由于这里我不想说细分(其实是我不会啦,嘿嘿,不要打我~(>_<)~),所以我就不深入说明 L6219 了,我详细说明的话大家听着也头晕,知识的学习是要循序渐进的嘛。所以呢我就只大概地说明一下 L6219,同时为了大家好理解,我先把代码放出来,然后对照着代码进行讲解:

先说一下定义的引脚,四线双极性步进电机有两个线圈(或者叫做绕组)要进行通电,所以我们就要用两个引脚来控制这两个线圈,我这里定义名字是:PHA 和 PHB,但是由于 L6219 的用法,这两个引脚仅仅只能算作一个标志,也就是仅仅只能说明给那个线圈通什么方向的电流,而不能决定通的电流的大小,比如:PHA = 0,PHB = 1;说明 A 线圈通负方向电流,B线圈通的是正方向电流,但是电流究竟多大不是由这两个引脚决定的,而是由另外两个引脚决定的。

这两个引脚我定义他们的名字是:A 线圈对应的是:A1,A2;B 线圈对应的就是 B1、B2;上图中的注释中也已经写明白了,我们姑且把通最大电流当作通电,把通最小电流当做不通电,那么就可以得出:

当 A1 = A2 = 0时:线圈 A 通电。

当 A1 = A2 = 1时:线圈 A 不通电。B 线圈同理。

但是如果我仅仅说到这里,大家就去写代码。假设你是大神,真的写了出来,那么肯定就会有不少人遇到一个大问题:“ 我明明就是按照你说的那个通电方式去写的啊,为什么我的步进电机总是在颤,死活就是不转,延时多长也没用,你是不是在骗我啊?”

呃。。。其实我是个好孩纸,不骗人的,所以下面我就说明一下怎么解决这个问题,在这之前我先把我写的代码放出来:

一:单拍工作方式:

二:单双拍工作方式:

大家可以发现上面三块代码的第一行注释就是工作方式的线圈通电方式,但是第二行是啥?什么 “相同”、“不同”的?

这里就是解决步进电机只在颤动却不转的关键了,虽说步进电机的某个线圈在不通电的时候,电流的方向随便写(都不通电了,那不就可以随便写吗?),但是事实却不是这样,虽说当我们写 A1 = A2 = 1 时线圈应该是不通电的,但是事实上并不是,它还是有一点点电流的,所以即使我们写 A1 = A2 = 1,线圈的电流方向也不能随便写,而是要遵循:两个线圈的电流方向要 "不同" 、"相同" 交替。(单双拍工作方式时每两拍作为一组)的规则去写。

如上面三个图中,PHA 和 PHB 的值都是在 “相同”、 “不同” 之间交替进行,单双拍的那个是每两拍作为一组,在 “不同”、“相同”之间进行。

这样就解决了步进电机只颤动不旋转的问题了,但是并不是所有人的问题都是出在这里,看见每一句代码后面都有一个 delay() 函数了吗?如果 delay() 函数的延时时间过短也会引起步进电机只颤动而不旋转。所以大家还是要具体问题具体分析。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 步进电机
    +关注

    关注

    149

    文章

    2929

    浏览量

    146041

原文标题:51单片机--如何解决步进电机只颤不转

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    步进电机控制方法 步进电机和伺服电机的区别

    步进电机控制方法 步进电机是一种将电信号转化为机械转动的电动机,其输出转角是按照电脉冲控制信号的变化而变化的。步进
    的头像 发表于 01-22 17:18 401次阅读

    步进电机工作原理 步进电机和伺服电机的区别

    步进电机是一种电动机的类型,它以准确的固定角度步进方式运转。步进电机内部包含电磁铁和旋转式永磁转子,通过电流的变化控制电磁铁的磁场强度,从而
    的头像 发表于 01-22 10:15 300次阅读

    何解步进电机发热的问题?如何应对步进电机的各种干扰问题?

    何解步进电机发热 步进电机最有意义的一个优点就是在开环系统里可以实现精确的控制,因为只需要跟踪输入的
    的头像 发表于 01-09 08:36 174次阅读
    如<b class='flag-5'>何解</b>决<b class='flag-5'>步进</b><b class='flag-5'>电机</b>发热的问题?如何应对<b class='flag-5'>步进</b><b class='flag-5'>电机</b>的各种干扰问题?

    两相步进电机和五相步进电机有什么区别?

          步进电机主要根据相数来进行分类,其中二相和五相步进电机是目前市场上广泛采用的。二相步进电机
    的头像 发表于 12-22 08:40 531次阅读

    汽车仪表步进电机,上电用手不动,拆下用手可以转动是为什么?

    汽车仪表步进电机,上电用手不动,拆下用手可以转动,是电机坏了 还是驱动坏了谢谢
    发表于 12-11 07:33

    什么是步进电机步进电机分哪几种?

    电子发烧友网站提供《什么是步进电机步进电机分哪几种?.pdf》资料免费下载
    发表于 11-28 14:21 1次下载
    什么是<b class='flag-5'>步进</b><b class='flag-5'>电机</b>?<b class='flag-5'>步进</b><b class='flag-5'>电机</b>分哪几种?

    步进电机驱动器的主要驱动方式有哪些?

    上工作,必须使用专用的驱动器。步进驱动器的原理是采用单极性直流电源供电,只要对步进电机的各相绕组按合适的时序通电,就能使步进
    的头像 发表于 11-14 08:07 1169次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>驱动器的主要驱动方式有哪些?

    步进电机抖动是什么问题?

    (\"ni\"); stepper.step(-1024); //4步模式下旋转一周用2048 步。 delay(500);}使用上述代码 步进电机抖动
    发表于 11-10 08:15

    线步进电机中间抽头接,用驱动器驱动一直左右抖动是怎么回事?

    线步进电机,用DM556驱动,中间抽头接,其余四线按相序接,程序按照驱动器时序图来,让它
    发表于 11-10 07:38

    光驱内的四线步进电机如何与4988模块对接?

    光驱内的四线步进电机如何与4988模块对接
    发表于 11-08 08:20

    步进电机只有振动转圈的原因?

    用51单片机通过ULN2803驱动步进电机步进电机只有振动,振动的同时我用手给一个的力才会转动, 会不会是
    发表于 10-17 07:26

    步进电机的工作原理

    图中每个箭头间隔是步进电机的一个步进角,每输入一个脉冲,电机就会转动一个步进角,不同的电机转动的
    发表于 10-09 11:49 611次阅读
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>的工作原理

    步进电机驱动电路分享

    步进电机一四相步进电机,采用单极性直流电源供电。只要对
    发表于 09-21 06:38

    极性步进电机的基本组件有哪些

    息息相关。 本文将介绍双极性步进电机及其结构和控制模式。 双极性步进电机的基本组件
    的头像 发表于 08-21 11:31 806次阅读
    双<b class='flag-5'>极性</b><b class='flag-5'>步进</b><b class='flag-5'>电机</b>的基本组件有哪些

    步进电机控制器原理 步进电机控制器的应用设置

    步进电机控制器是一种能够发出均匀脉冲信号的电子产品,它发出的信号进入步进电机驱动器后,会由驱动器转换成步进
    发表于 05-05 14:16 4次下载
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>控制器原理 <b class='flag-5'>步进</b><b class='flag-5'>电机</b>控制器的应用设置