这个视频很有启发性,提到了一些普通文档里没有的细节,值得多看几次:【作死物理大讲堂】直流有刷电机的驱动方法。正好想做个简单的H 桥驱动器,就结合其他资料总结一下知识点。

续流 - 电感电流

挺多人(我)对续流这个问题其实并没有深入的理解,只知道加一个二极管保护就完了,所以先从保护的角度分析续流的问题。

过电压保护

基础原理就是电感电流不能突变,一旦驱动完全断开了,电感上就会生成极高的电压,足以把驱动管劈了,所以增加一个反向二极管,给电感一条泄放的回路。


就以视频里画的这个简单驱动电路为例,这里还是挺简单的,驱动继电器的电路也是一样,里面也有电感。但是如果考虑H 桥电路,续流的问题就不这么显然了。比如下面这个:

图里中间的圆表示电机,内部等效为一个电感串联一个电压源。电机里的电流方向是从左到右,假设此时四个MOS 管都关闭了,还有四个二极管续流,所以看起来没什么问题,电感电流从左下二极管流过电机,再通过右上二极管,有些电机驱动芯片的规格书里也是这样画的图。但问题是,这里隐含了一个假设,就是电感电流可以顺利的反向从VIN 流到GND,形成一个回路。把电源部分补全看起来会更直观:

左边是负责供电的电池,显然,这个反向电流其实在对电池充电,或者说,是在对电源倒灌。只是充电倒没什么,倒灌就有问题了,因为电源可能不能被倒灌,比如电池那里加了个防反接二极管:

如果电感电流不能顺利经过电源走一个回路,电流被截断,那么电感电压就会瞬间升高,直到电压足以把某个薄弱部位打穿。也就是VIN 电压被推高,如果后面通过LDO 连了单片机什么的,就可能被一套带走。不过实际中一般不至于这么厉害,因为电源轨上经常会放置一堆滤波电容,这些电容可以临时担任电池的角色,打通续流回路。假设电机线圈的电感量为10mH,线路上总的电阻为10Ω,驱动电压20V,最大电流2A。如果并联10uF 的电容,简单仿真了一下,电感电流可能会让电源电压升高到60V 以上,还会剧烈震荡;但要是电容增大到470uF,就只有一个水花了。

当然,电源轨上电容大了也有大的问题,要是为了安全的用大电机,配上个超大的电容,上电瞬间的冲击电流处理起来也够麻烦的。对于上述的H 桥电路,有两种更“正规”的续流路径:

此时左上的MOS 管开启,和右上的二极管共同构成续流回路,下管并联的两个二极管基本没用了,只靠体二极管应该就足以应付。常见的双向电机驱动是用PWM 控制一个下管调速,另一个上管维持导通,控制方向,那么这种续流路径就很合适,不需要额外的处理。另一种续流路径与之类似,就是同时打开两个上管或两个下管,从而提供阻抗很低的续流路径。

驱动效率 - slow decay 和fast decay

电机驱动芯片文档里把流经电源的续流路径称为fast decay,意思是电机线圈里的电流会快速下降,道理很简单,给电源充了电,还有回路上较大的损耗,电感存储的能量会快速降低。与之相对的是slow decay,特指两个上管或下管组成的续流路径,因为回路上电阻较小,电流可以较长时间的来回转,线圈电流下降比较慢。经过二极管和MOS 管的路径或许可以看成在两者之间,电流在二极管上有导通压降,自然会有较多的损耗。


电流慢速下降(slow decay)的优点主要有两条:1. 电机输出力矩更平稳;2. 能量损耗低。有刷直流电机的输出力矩和线圈电流成正比,如果电流在PWM 低电平期间快速下降到零,表示电机的驱动力会周期性的消失,占空比较低的场合,电机会显得很无力。另一方面,如果每次PWM 低电平都让电流归零,下一个周期就必须重新往电机里灌电流,大起大落的,回路也更长,显然损耗会比较高,还可能出现更严重的EMC 问题。也是为了减少损耗,上面画的图里,四个续流二极管都是肖特基,只看导通电压的话,相比普通二极管,能减少一半的能量损耗。

至于fast decay 的优点,我只能想到电机刹车和换向的场合。刹车要让线圈电流消失,换向在刹车后还要反向再灌电流进去,fast decay 既能快速降低电流,又相当于再生制动,多少能回收一点能量。

PWM 频率

除了提供低阻抗的续流回路,想减少续流阶段的损耗,还可以提高PWM 的频率。比如视频里的这张图:

紫色箭头标出的部分就是续流阶段。电流反向流过二极管,所以电机两端的电压为负的二极管导通压降。如果在电感电流跑完之前,电机驱动电压就恢复高电平,就可以减少续流阶段的损耗。不过占空比越低,就有越长的时间让电感电流消耗掉,所以应该考虑提高PWM 频率。具体该定多少,最好的办法应该还是实际测试一下,根据所需的占空比范围,在示波器上看波形,再配个功率计。

反向电压

电机转子只要在磁场中旋转,就会开始发电,即便是在有外加电源驱动电机的时候。电机刚启动时,由于惯性几乎不动,和堵转等效。此时电源电压全部加在转子线圈上,所以电流会快速冲上去。之后随着转速升高,线圈发电,产生与电源电压相反的电势,让实际加在线圈上的电压减小,于是驱动电流就逐渐降低。空载时转速达到最大,电流也就降到最小;有负载时转速下降,反电势降低,电流变大。

图里右边就是电机的等效电路:电感串联电阻,再串联反电势等效的电压源,反电势的极性和电源电压相对,两者这么一顶牛,实际加在线圈上的电压就变小了。当然,只要不手贱,用外力迫使电机快速旋转,反电势就总是比电源电压小。

过电压保护

同样,先从保护的角度考虑反电势。正常单向连续旋转时,反电动势始终和电源电压相对,人畜无害,问题在换向的时候,接着看H 桥电路:

假设在换向之前,电机被左上和右下MOS 管驱动,电流向右,反电势方向左正右负。现在要换向,电感电流有二极管续流,问题不大,假设先打开了右上的MOS 管,左下MOS 关断。此时,电源电压就和反电势串联,叠加后加在左下的MOS 管上,如下图:


如果先开的下管也一样,电压叠加后加在上管上。电机空载时,反电势和电源电压很接近,如果此时电机减速的程度不够,还没充分制动就换向,MOS 管上就有接近两倍电源电压,算是个考验,余量选的小一点,MOS 管体质差一点,可能就挂了。好在,通常电机很少有完全空载的情况,MOS 管的耐压往往也比规格书的极限值要稍微高一点[doge]。

至于电机受迫旋转变成发电机的情况,要是转的够猛,大概也能产生过电压把管子烧了。但是这种情况一般没法防御,成品的驱动器也就是有个过电流、过温保护,没听说谁能在用户手贱的时候强行把电机刹住。就算能刹停,那他非要大力出奇迹的话,哪怕是机械刹车也能掰折。带减速器输出的电机或许需要考虑一下这个问题,如果减速比很大,用户随便摸一下输出轴,电机这边就可能剧烈旋转很多圈。

电机制动

反电动势有个常见应用,就是让电机快速刹车。类似手电钻上那种感觉,如果把旋转的电机两端短路,相当于给发电机上加了个极大的负载,电机会瞬间输出很大的电流,然后按照楞次定律,像撞墙一样快速刹停。用过手电钻就会知道,瞬间刹停时,外壳散热窗里能看见电机换向器上冒出明亮的火花,就是刹车瞬间大电流导致的,这也是这种短路刹车的缺点。

PWM 频率

既然有意的短路反电势能把电机刹停,无意的当然也行。如果H 桥采用slow decay 方式,PWM 低电平期间,续流回路上阻抗很低,如果PWM 频率较低,就可能通过续流回路把反电势短路。在续流阶段,把电感看成电流源,反电势是电压源,电感电流和反电势能产生的电流方向是相反的:

如果电感电流向右走,那么反电势就是左正右负。作为电压源,反电势想推动电流从负极流向正极,但是它一开始顶不过电感,所以,把那张图再拿下来:

PWM 降为低电平后,首先是续流阶段,电感电流反向经过续流二极管,电机电压变为负值,此时反电势被强行憋住,不会输出电流,所以没有制动效果。而在第二阶段,电感电流消失,由于反电势产生的电流和电感电流相反,如果使用最简单的单个二极管续流,反电势会让二极管截止,也不会造成制动。所以上面的视频截图里,电机两侧电压被反电势抬升起来了。

但在H 桥电路中,情况就变得有点微妙。如果用上管和二极管组成续流回路,也不会短路反电势,如下:

电感电流的续流路径是左上管和右上二极管。而反电势想通过上管到达电源,再从下面转上来,但是电源电压比反电势要高,所以反电势再次被憋住了。用两个上管或两个下管续流,情况就大不一样,如下:


虽然电源电压比反电势电压要高,但是反电势和电源电压不共地,不能直接比较二者的电位。反正就像图上这样,反电势可以被两个上管或两个下管短路,不明白的可以去复习中学的电路分析,不同回路的电流可以单独计算最后叠加。总之就是说,这种两个管子slow decay 的方式,如果没控制好,反而会短路反电势导致电机制动。DRV8870 的规格书里就直接写了:


Slow decay 旁边的括号标了brake,也就是刹车。还没试过每个PWM 周期都刹车一次时,电机是什么状态,估计就是会增加振动、噪声,降低输出力矩;如果短路电流很大,也会增加驱动管的压力。这种现象应该主要发生在占空比很低的时候,电机本来就转的不快,反电势比较低,短路电流也不大。

怎么解决这个问题?当然是增加PWM 频率,避免低电平时间太长,让反电势钻出来了,或者老实的用二极管续流。然而二极管续流也不是万无一失,除了损耗能量以外,在PWM 频率过低时,虽然不会刹车了,但是会加速[doge]。道理也很简单,回去再看一眼那个视频截图就能理解。虽然二极管会挡住反电势,不会有短路电流,但是电机两端的电压却因为反电势而升高了。本来该是低电平的地方,因为反电势而有了电压,整个PWM 周期的平均电压就升高了,电机的转速会比预期要快一点。而且因为是反电势撑起来的电压,还很容易被负载影响转速。负载导致转速降低,反电势降低,平均电压降低,进而转速进一步降低。所以用二极管续流也需要PWM 频率足够高。

限制起动电流

上面已经说过,电机起动瞬间相当于堵转,堵转电流起码数倍于正常工作电流,对驱动电路和电源都会造成冲击,所以有必要软起动。起动堵转的根本原因是电机转速增加的速度赶不上电感电流增加的速度,软起动就是限制启动过程中电压的增长速度,当然也就限制了电流增长的速度。


具体而言,就是在启动阶段逐渐增加PWM 占空比,使电机的平均驱动电流缓慢上升。这也没什么好说的,原理就这么简单。唯一的问题是,电机线圈的时间常数不算长,几个毫秒,电流就升到尖峰了,所以起动阶段,刚开始的高电平时间必须小于电流的上升时间。按视频里的说法,上升时间最大不超过三倍时间常数。而PWM 频率越低,一个周期越长,要满足这个时间要求,启动时的占空比就越低。不过要满足要求应该不难,比如,若上升时间为2ms,第一个高电平时间定为0.5ms,就算PWM 频率很低,比如500Hz,周期2ms,则起动时占空比25%,不算特别低,应该没啥问题。

总结

从以上这些因素考虑,似乎PWM 频率是越高越好,但就和DC-DC 电源的开关频率一样,频率越高,单位时间开关次数越多,MOS 管就有越多的时间待在过度区间里,从而导致MOS 管的发热增加,整体的效率降低。频率太高还会降低占空比的调节等级数,也就是降低了PWM 分辨率,知道单片机上PWM 原理的人应该都明白这一点。

参考

  1. 【作死物理大讲堂】直流有刷电机的驱动方法
  2. 无刷电机电源倒灌之细节分析

有刷直流电机的续流、反向电压和H 桥驱动频率 - 伊朗电系法师视频观后感相关推荐

  1. 【直流电机】驱动方式介绍:H桥+MOS驱动

    下面对直流电机驱动方式做下简单的介绍 1.H桥驱动直流电机 上图是一个典型的直流电机控制电路.电路得名于"H桥驱动电路"是因为它的形状酷似字母H.4个三极管组成H的4条垂直腿,而电 ...

  2. 直流电机(H桥)驱动电路

    一.H桥驱动电路    图4.12中所示为一个典型的直流电机控制电路.电路得名于"H桥驱动电路"是因为它的形状酷似字母H.4个三极管组成H的4条垂直腿,而电机就是H中的横杠(注意: ...

  3. 直流电机H桥驱动电路

    H桥驱动电路 一.H桥驱动电路 图4.12中所示为一个典型的直流电机控制电路.电路得名于"H桥驱动电路"是因为它的形状酷似字母H.4个三极管组成H的4条垂直腿,而电机就是H中的横杠 ...

  4. 东芝推出具备限流器检测功能的有刷直流电机驱动器IC

    - 限流器信号支持反馈控制 东京--(美国商业资讯)--东芝电子元件及存储装置株式会社("东芝")今日宣布推出一款集成式双H桥有刷直流电机驱动器IC,其配有额定值为50V/3.0A ...

  5. 关于有刷直流电机,你需要了解这些

    关于有刷直流电机,你需要了解这些 发表于 2019-12-10 17:02:23 电子说 3810人已加入 +加入圈子 自从无刷直流电机诞生,"古老的"有刷电机就开始没落,但它依然 ...

  6. 续流二级管在电路的作用

    续流二极管都是并联在线圈的两端,线圈在通过电流时,会在其两端产生感应电动势.当电流消失时,其感应电动势会对电路中的原件产生反向电压.当反向电压高于原件的反向击穿电压时,会把原件如三极管,等造成损坏.续 ...

  7. 二极管使用之反向续流

    二极管使用之反向续流 原理: ***续流二极管都是并联在线圈的两端,线圈在通过电流时,会在其两端产生感应电动势.当电流 消失时,其感应电动势会对电路中的原件产生反向电压.当反向电压高于原件的反向击穿电 ...

  8. 磁铁驱动反向续流串接电阻的的分析

    ■ 电磁铁驱动 电磁铁对外产生的磁场与流过的电流之间,在电磁铁没有饱和之前大体呈现线性关系.如果忽略磁滞.磁饱和等非线性的特点,可以通过控制流经电磁铁的电流来控制它的电磁吸引力. 电磁铁一般可以等效成 ...

  9. 东芝有刷直流电机驱动器IC TB67H450FNG

    "TB67H450FNG"有刷直流电机驱动器IC系列产品的成员.新产品最大额定值为50V/3.5A[1],能以宽泛的工作电压驱动电机.此外,该产品采用兼容引脚分配的小型HSOP8表 ...

最新文章

  1. Why HashMap Extends AbstractMap and Implement Map
  2. 【转】老程序猿给新程序猿的13点建议
  3. java中的堆、栈、方法区等比较
  4. 把combobox控件添加到datagridview控件中_自定义系列:控件属性添加
  5. php正则表达式应用,PHP 正则表达式应用
  6. php ayui表格,layui表格使用
  7. MySQL 5.7 免安装版配置
  8. oracle语法和sql的区别吗,ORACLE和SQL语法区别归纳
  9. 解决Arduino开发板管理器下载esp8266开发包失败和速度慢的方法
  10. 易语言版{大智慧/分析家/飞狐交易师}DLL插件接口开发模块(beta5),自定义股票软件公式扩展函数
  11. linux基础52——cksum、md5sum、sha1sum
  12. 【第86期】CPU 空闲时在干嘛?
  13. shell入门之expr的使用
  14. 汉诺塔问题的递归和非递归算法
  15. vue面试题(自用)
  16. c++ 图的连通分量是什么_7.1 图的定义与基本术语
  17. MUI框架TAB切换
  18. md5加密工具类cookie登陆验证
  19. 一阶系统的时域和频域分析
  20. Python课设实验 之 公交查询系统.(文本导入 字典树 储存.)

热门文章

  1. Lecture 1_Extra Classification Probabilistic Generative Model
  2. Spring3.0.x API在线参考教程—https://docs.spring.io/spring/docs/
  3. Linux基础8 - 网络配置
  4. BigInt类型数值
  5. java中打开文件怎么实现_Java如何在程序中打开文件?
  6. 如何在Microsoft Word中更改纸张大小
  7. MongoDB入门---备份(mongodump)恢复(mongorestore)监控
  8. 如何在新必应(New Bing)使用Chatgpt功能
  9. 联想k920 android7,联想K920和小米4哪个好
  10. python反爬虫技术有哪些_最全反爬虫技术介绍