当前位置: 首页 > news >正文

大电流H桥电机驱动电路的设计与解析(包括自举电路的讲解,以IR2104+LR7843为例)

大电流H桥电机驱动电路的设计与解析(包括自举电路的讲解,以IR2104+LR7843为例)

  • 电机驱动板主要采用两种驱动芯片,一种是全桥驱动(如:HIP4082),一种是半桥驱动(如:IR2104)
  • Chapter1 大电流H桥电机驱动电路的设计与解析(包括自举电路的讲解,以IR2104+LR7843为例)
    • 一.简介
    • 二.示例原理图和PCB展示
      • 1.原理图
      • 2.PCB 3D图
    • 三.辅助电路部分讲解
      • 1.BOOST升压电路
      • 2.降压稳压电路
      • 3.隔离电路部分
    • 四.搭建的H桥驱动电路详解
      • 1.简介
      • 2.NMOS管IRLR7843
      • 3.半桥驱动芯片IR2104S
      • 补充总结:
      • 4.控制逻辑
  • Chapter2 【电机驱动芯片(H桥、直流电机驱动方式)——DRV8833、TB6612、A4950、L298N的详解与比较】
  • Chapter3 IR2104电机驱动
    • 一、IR2104的引脚定义:
    • 二、IR2104的内部原理:
    • 三、半桥驱动原理分析
    • 四、全桥驱动原理分析
    • 五、电感电流回流路径的建立
    • 六、自举电容容值的计算与自举二极管选型:
    • 七:mos管发热可能的问题
    • 八: 推荐阅读
  • Chapter4 HIP4082电机驱动电路详解
    • 一、原理图
    • 二、化简电路再做分析的前提
    • 三、分析一下自己的理解
      • < 1 > 引脚说明
      • < 2 > MOS管的高端驱动和低端驱动
      • < 3 > 电机驱动电路分析
      • < 4 > 具体到通过PWM控制电机占空比


电机驱动板主要采用两种驱动芯片,一种是全桥驱动(如:HIP4082),一种是半桥驱动(如:IR2104)

Chapter1 大电流H桥电机驱动电路的设计与解析(包括自举电路的讲解,以IR2104+LR7843为例)

原文链接:https://blog.csdn.net/qq_44897194/article/details/107397079

一.简介

之前介绍过H桥电机驱动电路的基本原理,但是以集成的电机驱动芯片为示例。这些集成的芯片使用起来比较简单,但是只能适用于一些小电流电机,对于大电流的电机(比如:RS380和RS540电机),则不能使用这些集成的芯片(否则会导致芯片严重发热并烧毁)。

此时便需要自行用半桥/全桥驱动芯片和MOS管搭建合适的H桥电机驱动电路实现对大电流电机的驱动控制。

二.示例原理图和PCB展示

此原理图和PCB采用的是网上分享的电路设计(IR2104半桥驱动+LR7843MOS管),为了便于焊接,对其中的一些封装进行了修改,并重新布线。

该电机驱动板有两个H桥电路,可以同时控制双路电机。可通过相应的控制信号来控制电机的转速和正反转。
原网址:电赛必备,IR2104S半桥驱动MOS管电机驱动板(可下载工程)

1.原理图

在这里插入图片描述

2.PCB 3D图

在这里插入图片描述

三.辅助电路部分讲解

本驱动模块默认采用7.4V的锂电池组接入右侧的P1端子进行供电。

1.BOOST升压电路

★BOOST升压电路采用的是MC34063这款芯片。此模块主要是将7.4V的输入电压升到12V后为后面的IR2104S半桥驱动芯片供电(需要12V的原因将在下面介绍)。此芯片的工作原理在此不多做介绍,可自行下载数据手册进行学习(后期会对此专门写一篇博客介绍)。

注意事项:
(1).此BOOST电路模块是此驱动板中较为容易出问题的部分,因此焊接时需要先对其进行焊接调试,确认没有问题后再进行后续的焊接。
(2).此电路需要尤其注意0.22Ω的精密电流检测电阻,如果电阻质量不合格很容易出现问题,导致电路不能正常工作。
如有其他问题可参看此篇文章:MC34063升压电路中常见的几种问题

2.降压稳压电路

★降压稳压电路采用的是MIC5219这款LDO芯片。此电路模块将7.4V的输入电压降压稳压到3.3V给后面的74LVC245芯片供电。类似芯片较多,使用也较为简单。
如需要详细了解其工作原理,可参看此篇文章:LDO低压差线性稳压芯片的使用(LM1117)

3.隔离电路部分

在设计电机驱动板时,很多都会有一个用于隔离的电路模块。主要用于将控制器与H桥驱动电路隔离开,防止损坏控制器。
此电机驱动板采用了74lvc245这款三态输出的收发器芯片作为隔离芯片。也可以使用74HC125(三态四线非反相缓冲器)或74HC244(三态八线非反相缓冲器)。具体使用说明可参考相应的数据手册。

四.搭建的H桥驱动电路详解

1.简介

在学习此部分之前,需要先掌握基础H桥驱动的工作原理,具体可参看此篇博客:电机驱动芯片(H桥、直流电机驱动方式)
自行搭建的H桥驱动电路一般都包括两个部分:半桥/全桥驱动芯片和MOS管。自行搭建的H桥驱动所能通过的电流几乎由MOS管的导通漏极电流所决定。因此,选择适当的MOS管,即可设计出驱动大电流电机的H桥驱动电路。

2.NMOS管IRLR7843

在选择MOS管搭建H桥时,主要需注意以下一些参数:
★1.漏极电流(Id):该电流即限制了所能接入电机的最大电流(一般要选择大于电机堵转时的电流,否则可能在电机堵转时烧毁MOS管),LR7843的最大漏极电流为160A左右,完全可以满足绝大部分电机的需要。

★2.栅源阈值电压/开启电压(Vth):该电压即MOS管打开所需的最小电压,也将决定后续半桥驱动芯片的选择和设计(即芯片栅极控制脚的输出电压)。LR7843的最大栅源阈值电压为2.3V。

★3.漏源导通电阻(Rds):该电阻是MOS管导通时,漏极和源极之间的损耗内阻,将会决定电机转动时,MOS管上的发热量,因此一般越小越好。LR7843的漏源导通电阻为3.3mΩ。

★4.最大漏源电压(Vds):该电压是MOS管漏源之间所能承受的最大电压,必须大于加在H桥上的电机驱动电压。LR7843的最大漏源电压为30V。满足7.4V的设计需要。

3.半桥驱动芯片IR2104S

在H桥驱动电路中,一共需要4个MOS管。而这四个MOS管的导通与截止则需要专门的芯片来进行控制,即要介绍的半桥/全桥驱动芯片。

★所谓半桥驱动芯片,便是一块驱动芯片只能用于控制H桥一侧的2个MOS管(1个高端MOS和1个低端MOS,在前述推荐的博客中有介绍)。因此采用半桥驱动芯片时,需要两块该芯片才能控制一个完整的H桥。
★相应的,全桥驱动芯片便是可以直接控制4个MOS管的导通与截止,一块该芯片便能完成一个完整H桥的控制。

这里使用的IR2104便是一款半桥驱动芯片,因此在原理图中可以看到每个H桥需要使用两块此芯片。

1.典型电路设计(来源于数据手册)
在这里插入图片描述
2.引脚功能(来源于数据手册)
在这里插入图片描述
★VCC为芯片的电源输入,手册中给出的工作电压为10~20V。(这便是需要boost升压到12V的原因)
★IN和SD作为输入控制,可共同控制电机的转动状态(转向、转速和是否转动)。
★VB和VS主要用于形成自举电路。(后续将详细讲解)
★HO和LO接到MOS管栅极,分别用于控制高端和低端MOS的导通与截止。
★COM脚直接接地即可。

3.自举电路
此部分是理解该芯片的难点,需要进行重点讲解。从上面的典型电路图和最初的设计原理图中均可发现:该芯片在Vcc和VB脚之间接了一个二极管,在VB和VS之间接了一个电容。这便构成了一个自举电路。

作用:在高端和低端MOS管中提到过,由于负载(电机)相对于高端和低端的位置不同,而MOS的开启条件为Vgs>Vth,这便会导致想要高端MOS导通,则其栅极对地所需的电压较大。
补充说明:因为低端MOS源极接地,想要导通只需要令其栅极电压大于开启电压Vth。而高端MOS源极接到负载,如果高端MOS导通,那么其源极电压将上升到H桥驱动电压,此时如果栅极对地电压不变,那么Vgs可能小于Vth,又关断。因此想要使高端MOS导通,必须想办法使其Vgs始终大于或一段时间内大于Vth(即栅极电压保持大于电源电压+Vth)。

首先看下IR2104S的内部原理框图(来源于数据手册)。此类芯片的内部原理基本类似,右侧两个栅极控制脚(HO和LO)均是通过一对PMOS和NMOS进行互补控制。
在这里插入图片描述
自举电路工作流程图:
以下电路图均只画出半桥,另外一半工作原理相同因此省略。
假定Vcc=12V,VM=7.4V,MOS管的开启电压Vth=6V(不用LR7843的2.3V,原因后续说明)。

(1).第一阶段:首先给IN和SD对应的控制信号,使HO和LO通过左侧的内部控制电路(使上下两对互补的PMOS和NMOS对应导通),分别输出低电平和高电平。此时,外部H桥的高端MOS截止,低端MOS导通,电机电流顺着②线流通。同时VCC通过自举二极管(①线)对自举电容充电,使电容两端的压差为Vcc=12V。
在这里插入图片描述
(2).第二阶段:此阶段由芯片内部自动产生,即死区控制阶段(在H桥中介绍过,不能使上下两个MOS同时导通,否则VM直接通到GND,短路烧毁)。HO和LO输出均为低电平,高低端MOS截止,之前加在低端MOS栅极上的电压通过①线放电。
在这里插入图片描述
(3).第三阶段:通过IN和SD使左侧的内部MOS管如图所示导通。由于电容上的电压不能突变,此时自举电容上的电压(12V)便可以加到高端MOS的栅极和源极上,使得高端MOS也可以在一定时间内保持导通。此时高端MOS的源极对地电压≈VM=7.4V,栅极对地电压≈VM+Vcc=19.4V,电容两端电压=12V,因此高端MOS可以正常导通。
(此时,自举二极管两端的压差=VM,因此在选择二极管时,需要保证二极管的反向耐压值大于VM。)
注意:因为此时电容在持续放电,压差会逐渐减小。最后,电容正极对地电压(即高端MOS栅极对地电压)会降到Vcc,那么高端MOS的栅源电压便≈Vcc-VM=12V-7.6V=4.4V < Vth=6V,高端MOS仍然会关断。
在这里插入图片描述

补充总结:

★因此想要使高端MOS连续导通,必须令自举电容不断充放电,即循环工作在上述的三个阶段(高低端MOS处于轮流导通的状态,控制信号输入PWM即可),才能保证高端MOS导通。自举二极管主要是用来当电容放电时,防止回流到VCC,损坏电路。

★但是,在对上面的驱动板进行实际测试时会发现,不需要令其高低端MOS轮流导通也可以正常工作,这是因为即使自举电容放电结束,即高端MOS的栅源电压下降到4.4V仍然大于LR7843的Vth=2.3V。
那么在上述驱动板中,自举电路就没有作用了吗?当然不是,由于MOS管的特性,自举电路在增加栅源电压的同时,还可令MOS管的导通电阻减小,从而减少发热损耗,因此仍然建议采用轮流导通的方式,用自举电容产生的大压差使MOS管导通工作。

4.控制逻辑

时序控制图:
在这里插入图片描述

Chapter2 【电机驱动芯片(H桥、直流电机驱动方式)——DRV8833、TB6612、A4950、L298N的详解与比较】

原文链接:https://blog.csdn.net/qq_44897194/article/details/105524808

Chapter3 IR2104电机驱动

原文链接:https://blog.csdn.net/zhuimeng_ruili/article/details/104378131

一、IR2104的引脚定义:

在这里插入图片描述
芯片引脚意义(DataSheet)

SD信号为使能信号,高电平有效,芯片工作。

IN为高电平时HO为高,LO为低;IN为低电平时,HO为低,LO为高电平。我们的PWM信号就是在这里输入(因为片内自带了CMOS和LSTTL电平兼容器,可以直接输入而不用考虑电平转换)。

Vb是高侧浮动电源输入脚,HO是高侧门极驱动输出,Vs是高侧浮动电源回流。这三个控制上半桥的MOS导通。

Vcc是低侧浮动及参考电源输入脚,LO是低侧门极驱动输出,COM是低侧回流。这三个控制下半桥的MOS导通。

二、IR2104的内部原理:

在这里插入图片描述
在这里插入图片描述
这个驱动设计单从信号逻辑上分析比较容易理解,但要深入的理解和更好的应用,就需要对电路做较深入的分析,对一些外围元件的参数确定做理论分析计算。现在对内部结构进行简单的分析:

芯片被选中后,输入的信号经过死区/击穿保护电路后分两路分别送入上下两组CMOS电路。下路是“0”控制导通,直接送入信号;上路是“1”导通,先通过高脉冲电流缓冲级(high pulse current buffer stage)控制完成信号缓冲以及电平的转换(个人理解,因为上半桥电压来受外部电源影响,需要转换),再送入信号。

初始写0时:下路CMOS上管导通,LO由浮空抬压至芯片电源电位,因此LO和COM之间产生导通电压VCC,下半桥MOS导通;上路CMOS下管导通,HO和Vs短路,上半桥MOS关断。

当写1时,上路CMOS上管导通,依靠电容自举,HO和Vs间产生导通电压VCC,上半桥MOS导通;下路CMOS下路导通,LO和COM短路,下班桥MOS关断。

所以可见,IR2104电源电压必须大于选择的MOS或者IGBT管的导通电压,比如我们智能车电路里2104用的12V就大于LR7843的导通4.5V。

所以,作为控制MOS导通的门极驱动器,它最大也只过200多MA的电流,就给20mil足以。

三、半桥驱动原理分析

在这里插入图片描述
IR2104可以控制半桥的核心在于其Vb和Vs脚之间外接的“自举电容”。那么何谓自举呢?以典型电路为例:

此半桥电路的上下桥臂功率管是交替导通的。每当下桥臂开通,上桥臂Q1关断时Vs脚的电位为下桥臂Q2的饱和导通压降,基本上接近地电位。此时Vcc通过自举二极管对VB和VS间的自举电容C1充电使其接近Vcc电压。

当Q2关断时,基于内部的CMOS结构(具体见下面内部图),HO和Vs之间断开,HO和Vb之间导通。同时,Vs端的电压会升高,由于C1电压不能突变为Vcc,Vcc与Vb间又有自举二极管,因此Vb点的电位接近于Vs点电位和C1上电压之和。所以此时Vb(HO)和Vs之间的压差就为Vcc电压,利用这个压差就可以打开上桥臂。

总结一下:当Q1开通时,自举电容C1作为一个浮动的电压源驱动Q1(上桥臂MOS),导通上桥臂;而Q2开通后,Q1关断,Vs处的浮动电源消失,C1在开通期间损失的电荷在又会得到补充。如此循环,即可控制Q1和Q2进行半桥驱动。这种自举供电方式就是利用Vs端的电平在高低电平之间不停地摆动来实现的,由于自举电路无需浮动电源,因此是最便宜的。

因为自举电容器上的电压基于高端输出晶体管源极电压上下浮动,所以图中的D(自举二极管)和C1(自举电容)是IR2104在脉宽调制(PWM)应用时最需要严格挑选和设计的元器件。只有根据一定的规则进行计算分析,并在电路实验时进行调整,才能使电路工作处于最佳状态。

D是一个重要的自举器件,应能阻断直流干线上的反向高压,其承受的电流是栅极电荷与开关频率之积。同时为了减少电荷损失,应选择反向漏电流小的快恢复或者肖特基二极管。

芯片内高压部分的供电都来自图中自举电容C1上的电荷,所以为了保证高压部分电路有足够的能量供给,应适当选取C1的大小。

驱动原理图
在这里插入图片描述

四、全桥驱动原理分析

在这里插入图片描述
H桥是一个典型的直流电机控制电路,因为它的电路形状酷似字母H,故得名与“H桥”。4个mos管组成H的4条垂直腿,而电机就是H中的横杠。

1)电机驱动

电路首先,单片机能够输出直流信号,但是它的驱动才能也是有限的,所以单片机普通做驱动信号,驱动大的功率管如Mos管,来产生大电流从而驱动电机,且占空比大小能够经过驱动芯片控制加在电机上的均匀电压到达转速调理的目的。电机驱动主要采用N沟道MOSFET构建H桥驱动电路,H 桥是一个典型的直流电机控制电路,由于它的电路外形酷似字母 H,故得名曰“H 桥”。4个开关组成H的4条垂直腿,而电机就是H中的横杠。要使电机运转,必需使对角线上的一对开关导通,经过不同的电流方向来控制电机正反转,其连通电路如图所示。
在这里插入图片描述
2)H桥驱动原理

实践驱动电路中通常要用硬件电路便当地控制开关,电机驱动板主要采用两种驱动芯片,一种是全桥驱动HIP4082,一种是半桥驱动IR2104,半桥电路是两个MOS管组成的振荡,全桥电路是四个MOS管组成的振荡。其中,IR2104型半桥驱动芯片能够驱动高端和低端两个N沟道MOSFET,能提供较大的栅极驱动电流,并具有硬件死区、硬件防同臂导通等功用。运用两片IR2104型半桥驱动芯片能够组成完好的直流电机H桥式驱动电路,而且IR2104价钱低廉,功用完善,输出功率相对HIP4082较低,此计划采用较多。
在这里插入图片描述
另外,由于驱动电路可能会产生较大的回灌电流,为避免对单片机产生影响,最好用隔离芯片隔离,隔离芯片选取有很多方式,如2801等,这些芯片常做控制总线驱动器,作用是进步驱动才能,满足一定条件后,输出与输入相同,可停止数据单向传输,即单片机信号能够到驱动芯片,反过来不行。

五、电感电流回流路径的建立

在电机在关闭之后,电机作为感性负载会产生反电动势,这个时候如果让h桥的两个下桥都导通,就会产生一个回路,将反电动势消耗掉
在这里插入图片描述

六、自举电容容值的计算与自举二极管选型:

自举二极管D必须使用与功率开关管相同耐压等级的快恢复二极管;

自举电容设计也至关重要,C1的耐压比功率器件充分导通时所需的驱动电压(典型值为10 V)高。若在C1的充电路径上有1.5 V的压降,且假定有一半的栅压因泄露而降低,则自举电容C1可按式(4)来选取:
在这里插入图片描述
式中:Qg为MOSFET的门极电荷。

工程应用上一般取C1>2*Qg/(VCC-10-1.5),且应选取容量稳定,耐脉冲电流的无感电容。

七:mos管发热可能的问题

1、电源振铃引起发热

之前设计的有刷直流电机驱动电路,采用的是IR2104半桥驱动器去驱动H桥功率电路,电路使用的都是经典的芯片厂商提供的设计方案,可是出现了一个糟糕的问题,电路就算不带载,功率管也发烫的厉害,要是带载则夸张的发热,能达到100℃以上,太恐怖了。为了这个问题,排查了整整一天多时间,百思不得其解,最后通过各个点的波形测试,发现问题出在电源受到功率管开关的影响,产生了极大的波动,导致电源产生振铃现象,峰值电压超过电源电压的3倍。从而导致了功率管DS,GS间的电压时常超过耐压值,和影响了IR2104S的驱动波形,导致上下臂直通现象的出现。

解决方法:在功率电路H桥电源处加一个合适的滤波电容,一般10uF以上,去除电源干扰问题,从而彻底解决驱动电路问题。注意选择的不同的MOS管,需要的滤波电容容值也会相应的改变,必须做出调整。

2、死区时间异常引起发热

IR2104死区时间异常,引起mos管空载发热 https://blog.csdn.net/zhuimeng_ruili/article/details/110354269

八: 推荐阅读

MOS管防护电路实测:https://blog.csdn.net/zhuimeng_ruili/article/details/108979413

IR2104死区时间异常,引起mos管空载发热 https://blog.csdn.net/zhuimeng_ruili/article/details/110354269

吐槽一小下:
调试mos管真的是一个又费时间又费钱的活啊,慢慢的磨掉你的耐心,啊。。。。下图是这个项目中烧掉的mos,还只是其中的一小半,前面的都没有收集,粗略估计目前为止大概烧了三四百颗mos,一颗三块。。。。啊,继续烧板子吧。。。。

Chapter4 HIP4082电机驱动电路详解

原文链接:https://blog.csdn.net/RedValkyrie/article/details/105463217
在这里插入图片描述
在这里插入图片描述

一、原理图

以下内容是我在14届小白四轮组里使用到的驱动原理图,因为突然回顾以前做过的这个驱动电路,所以记录一下防止遗忘。以下只列出以下主要电路:
在这里插入图片描述

二、化简电路再做分析的前提

前提,我们先明确以下知识点,再来把无关器件省略掉,分析主干电路。

  • MOS管导通的实质是对GS结电容充电,在上图所示的原理图我在G级串联一个电阻是为了限制充电速度,防止充电过快产生震荡。
  • 栅极电阻一般串联一个10欧左右的电阻,GS级之间一般并联一个10K的电阻用来关断期间结电容的放电。
  • 与MOS管并联的二极管是不必要的,因为MOS管内部集成了二极管,即体二极管。
    在不考虑串联的10欧姆左右的电阻以及GS级并联的10K欧姆的电阻,还有MOS管外面另外并联的二极管,电路简化至下图作分析:
    在这里插入图片描述

三、分析一下自己的理解

< 1 > 引脚说明

在这里插入图片描述
在这里插入图片描述

< 2 > MOS管的高端驱动和低端驱动

所谓的高边驱动或者低边驱动,指的是在电子电路驱动负载时,当需要控制开关时,开关所处电路的位置。“高”指的是“电源”,“低”指的是“地”。
在这里插入图片描述
低边驱动简单的理解为:负载的一端默认与电路的正级即电源保持连接,负载的另一端与开关连接,当开关导通时,负载的另一端与地连接,负载开始工作,当开关与关断时,负载的另一端与地断开,负载停止工作。低边驱动/开关英文:Low Side Drivers,简称为LSD。具体到使用MOS管作为开关的情况的时候,MOS管相对于负载在电势的低端,其中D通过负载接电源,S直接接地。

对于NMOS管,只有当Vgs大于开启电压时,MOS管才能导通。所以当未导通时,S处于一个不能确定的电位。若让Vgs大于开启电压,则DS导通,S确定为地电位,此时仍可以保证Vgs大于开启电压,保持DS导通。
在这里插入图片描述
对于PMOS管,只有到Vgs小于一个值,MOS才能导通。此时S处于一个不确定的电位。若让Vgs小于开启电压,即使导通了,S确定下降到地电位,就不能保证Vgs小于开启电压。
在这里插入图片描述
高边驱动简单的理解为:负载的一端默认与电路的负级即地保持连接,负载的另一端与开关连接,当开关导通时,负载的另一端与电源连接,负载开始工作,当开关与关断时,负载的另一端与电源断开,负载停止工作。高边驱动/开关英文:High Side Drivers,简称为HSD;具体到使用MOS管作为开关的情况的时候,MOS管相对于负载在电势的高端,其中D直接连接电源,S通过负载接地。

对于NMOS,只有当Vgs大于开启电压时,MOS管才能导通。所以当未导通时,S处于一个不能确定的电位。即使让Vgs大于开启电压,DS导通后,DS电位相等,同为电源电位,除非G极电位比电源电位还高,则不能保持导通状态。

在这里插入图片描述
对于PMOS,只有到Vgs小于一个值,MOS才能导通。此时S处于一个不确定的电位。若让Vgs小于开启电压,使DS导通,DS同为电源电位,还是能保持Vgs小于开启电压,是MOS保持导通状态。
在这里插入图片描述
总结:PMOS适合作为高端驱动,NMOS适合作为低端驱动。但是由于工艺等各方面的原因。在大电流情况下,通常仍把NMOS作为高端驱动。于是,为了保证高端驱动的NMOS的Vgs保持大于开启电压。我们会使用半桥驱动芯片。半桥驱动芯片把高端驱动的NMOS的S极作为参考地,输出一个恒定的开启电压,来控制MOS的导通。

< 3 > 电机驱动电路分析

如上图所示电机驱动原理图,我采用的是HIP4082全桥驱动芯片。将高端驱动的NMOS作为参考地。
在这里插入图片描述
因为我们是用的是NMOS管,所以当Ugs的电压大于开启电压,MOS管才被导通,而我在此处采用的自举的方式,输出一个恒定的开启电压,来控制MOS管导通。

下面解释一下,在HIP4082驱动芯片这边的自举电路原理:
在这里插入图片描述
首先BHS引脚里的HS指的是High S极,也就是上管Q5的S极,可以看到此处下管Q7的S极是接地的,所以如果下管Q7处于导通状态的时候,BHS引脚,也就是上管Q5的S极就相当于接地了,这时BHS的电压也就是上图Q5的S极的电压。
这个时候,外部电源通过自举二极管向自举电容充电。

在处于目前下管Q7导通,上管Q5关闭的状态的时候,此时外部电源通过二极管和自举电容给电容充电,然后BHB和BHO引脚处于短接状态,此时上端MOS管Q5导通。

在这里插入图片描述
我们先假设这里C10充满电就是12V,因为BHB和BHO短路,此时自举电容充的电就通过BHS举给了BHO,所以BHB和BHO的电压是一样的。然后此时Q5的S级接地,忽略掉R13的时候电压约为12V,相当于Vgs之间是接了一个恒定的电压来保持这里NMOS管的必然导通。此处就是通过自举出来一个恒定的电压来确保Vgs的电压大于MOS管的导通电压解决了上面提到的当NMOS为高端驱动时的导通状态不确定的问题。

经过以上环节之后,上管Q5导通,下管Q7关闭,此时BHB和BHO就不处于短接的状态了,由于电容充满电了,BHB的电压是比BHS的电压高的。此时我手绘了一下电路如下图:
在这里插入图片描述
以上就是自举电路的原理。

值得注意的是:

正是因为这里自举电容只能在下管Q7导通的时候充电,所以一般的NMOS桥驱动都不能输出百分之百的占空比。你可以这么理解,就是此时电容里的电是维持上管Q5持续导通的,比如我假设的这里电容充满电之后电压是12V,但是总有时候电容里的电是会放光的,此时自举电容电没了就举不动了,这个时候上管Q5就关闭了,而这个过程是慢慢的,可能会导致上管的G极电压出现非饱和区和截止区,造成上管gg,所以一般限制占空比最高在 95 % 到 98 % 95%\ 到\ 98%95% 到 98% 。然后上管Q5关闭之后,Q7导通,继续给电容重新充电。然后循环这个过程。
上图只是我们使用的某一款驱动芯片,下面列出的是通用解释自举电路内部原理的图,其中Vbs(驱动电路Vb和Vs管脚之间的电压差)给集成电路高端驱动电路提供电源。该电源电压必须在10-20V 之间,以确保驱动集成电路能够完全地驱动MOS栅极器件。Vbs电源是悬浮电源,附加在Vs电压之上(Vs通常是一个高频的方波)。有许多方法可以产生Vbs悬浮电源,其中一种如本文中介绍的自举方式。这种方式的好处是简单、低廉,但也有局限性。占空比和开通时间受限于自举电容的再充电(长时间导通和大占空比时要求有充电泵电路支持,详见AN-978C了解):
在这里插入图片描述
对于含有自举电路的PCB布板方法,需要注意自举电容要尽可能靠近IC的管脚。如下图所示,至少有一个低ESR的电容提供就近耦合。例如:如果使用了铝电解电容做为自举电容,就应再用一个瓷电电容。如果自举电容是瓷电或钽电容,自己作为就地耦合也就足够了。
在这里插入图片描述

< 4 > 具体到通过PWM控制电机占空比

首先列出HIP4082芯片引脚的真值表:

在这里插入图片描述
首先看看DIS引脚,这个引脚的作用是控制芯片是否工作的。我当初接的是低电平,也就是芯片一直保持工作。但是它也可以接一个IO口,让GPIO输出高电平或者低电平来控制芯片是否工作。

再看BHO和BLO的引脚,我的理解是,B表示这个芯片控制的其中一个半桥的引脚开头字符,A就是另外一个半桥引脚的开头字符,H(high)表示的上管,L(low)表示的是下管,O表示的是ON,也就是打开的意思。通过真值表我们可以看到,这里以B开头的半桥引脚为例:

  • 当BLI为高电平的时候, 意思也就是比如我现在给的 90% 的占空比,他处于高电平的那段时间,此时无论BHI接的什么电平,此处接的是12V高电平,这个时候下管是关闭的,上管是导通的,也就是这段时间用来给电机以 90% 的占空比输出。
  • 当BLI为低电平的时候, 也就是 90% 占空比的另外 10%处于低电平的时间段,若BHI为高电平的时候,此时上管关闭,下管导通,也就是这段时间去给自举电容充电。

相关文章:

大电流H桥电机驱动电路的设计与解析(包括自举电路的讲解,以IR2104+LR7843为例)

大电流H桥电机驱动电路的设计与解析&#xff08;包括自举电路的讲解&#xff0c;以IR2104LR7843为例&#xff09; 电机驱动板主要采用两种驱动芯片&#xff0c;一种是全桥驱动&#xff08;如&#xff1a;HIP4082&#xff09;&#xff0c;一种是半桥驱动&#xff08;如&#xff…...

windows11 windows 11 (win11 win 11) 怎么安装 Python3 ? numpy? sounddevice? 声音信号处理库?

首先确认要安装的 sounddevice 库&#xff0c;链接&#xff1a;https://python-sounddevice.readthedocs.io/en/0.4.6/ 根据文档&#xff0c;可知最新的 sounddevice 版本是 0.4.6 进入安装页面查看&#xff0c;发现 Newest sounddevice 可以使用 pip 安装&#xff0c;如下图…...

git如何配置多个远程仓库,并且进行切换

一、配置多个远程仓库并进行切换&#xff0c;请按照以下步骤进行操作&#xff1a; 打开命令行终端&#xff0c;并进入您的 Git 仓库所在的目录。添加第一个远程仓库&#xff0c;使用以下命令&#xff1a;git remote add origin <第一个远程仓库的 URL>这里将远程仓库命名…...

计算机存储单位 + 程序编译过程

C语言的编译过程 计算机存储单位 头文件包含的两种方式 使用 C/C 程序常用的IDE 常用的C语言编译器&#xff1a; 在选择编译器时&#xff0c;需考虑平台兼容性、性能优化、调试工具和开发人员的个人偏好等因素。 详细教程可转 爱编程的大丙...

vue路由导航守卫(全局守卫、路由独享守卫、组件内守卫)

目录 一、什么是Vue路由导航守卫&#xff1f; 二、全局守卫 1、beforeEach 下面是一个beforeEach的示例代码&#xff1a; 2、beforeResolve 下面是一个beforeResolve的示例代码&#xff1a; 3、afterEach 下面是一个afterEach的示例代码&#xff1a; 三、路由独享守卫…...

单片机双机通信控制跑马灯

实验要求 两个单片机各驱动8个LED灯&#xff0c;构成两个跑马灯&#xff0c;要求甲单片机LED的点亮方式是从上至下&#xff0c;首先是最上面第一个点亮、其次是前两个点亮、其次是前三个点亮……直至8个灯全部点亮&#xff0c;8个灯全部灭&#xff0c;重复这个过程&#xff0c…...

微信小程序:button微信开放能力打开客服会话分享到聊天框

文档 https://developers.weixin.qq.com/miniprogram/dev/component/button.html 打开客服会话 按钮关键属性 open-type"contact"功能按钮 <button class"mo-open-type"open-type"contact"> </button>分享 <button class&q…...

【数据结构】——队列实现二叉树的功能

前言&#xff1a;二叉树的实现方式多种多样&#xff0c;有数组实现满二叉树&#xff0c;有链表实现完全二叉树&#xff0c;今天我们就用队列来实现二叉树。 创建二叉树&#xff1a; typedef int BTDataType; typedef struct BinaryTreeNode {BTDataType data;struct BinaryTre…...

【已解决】Win7虚拟机安装VMtools报错

在做以前的实验的时候发现要用到Win7虚拟机&#xff0c;于是就安装了一个Win7的虚拟机&#xff0c;但是发现屏幕太小&#xff0c;而且来回复制文本、复制文件太不方便了&#xff0c;索性就安装了VMtools&#xff0c;发现还安装不成– 情况1 报错&#xff1a;本程序需要您将此…...

华为OD机试真题-小明找位置-2023年OD统一考试(C卷)

题目描述&#xff1a; 小朋友出操&#xff0c;按学号从小到大排成一列&#xff1b;小明来迟了&#xff0c;请你给小明出个主意&#xff0c;让他尽快找到他应该排的位置。 算法复杂度要求不高于nLog(n)&#xff1b;学号为整数类型&#xff0c;队列规模<10000&#xff1b; 输…...

2023.2版idea安装教程,现在jdk8已经过去式了,不同idea支持的jdk不同。升级jdk后idea也要随之升级

下载idea2023.2版本&#xff0c;下载之前需要删除之前的版本&#xff0c;一定要删除干净&#xff0c;删除程序要勾选那两个delete 下载路径&#xff1a;其他版本 - IntelliJ IDEA (jetbrains.com.cn) 选择2023.2版本 下载后进入安装程序&#xff0c;选择安装目录&#xff0c;然…...

CSS3技巧36:让内容垂直居中的三种方式

让内容垂直居中&#xff0c;是一个很重要的应用情景&#xff0c;在很多场合都会需要。这也是面试的时候&#xff0c;一些考官喜欢拿来初面的小题目。 这里&#xff0c;小结下让内容垂直居中的三种方式。 当然&#xff0c;读者如果有更好的方法&#xff0c;也可以提出来。 基本…...

空间运算设备-Apple Vision Pro

苹果以其在科技领域的创新而闻名&#xff0c;他们致力于推动技术的边界&#xff0c;这在他们的产品中表现得非常明显。他们尝试开发一项的新型突破性显示技术。在 2023 年 6 月 5 日官网宣布将发布 Apple Vision Pro 头戴空间设备&#xff0c;我们一起来了解一下 Apple Vision …...

cocos creator “TypeError: Cannot set property ‘string‘ of null

背景&#xff1a; 学习cocos creator时遇到"TypeError: Cannot set property string of null" 错误。具体代码如下&#xff1a;property({ type: Label })public stepsLabel: Label | null null;update(deltaTime: number) {this.stepsLabel.string Math.floor(…...

简谈MySQL的binlog模式

一、MySQL的binlog模式介绍 MySQL的binlog模式是一种日志模式&#xff0c;用于记录对MySQL数据库进行的更改操作。通过启用binlog模式&#xff0c;可以将数据库的更改操作记录到二进制日志文件中&#xff0c;以便在后续需要时进行恢复和复制。 要启用binlog模式&#xff0c;请…...

Linux 环境部署RabbitMQ

1.单机部署 我们在Centos7虚拟机中使用Docker来安装。 1.1.下载镜像 方式一&#xff1a;在线拉取 docker pull rabbitmq:3-management 方式二&#xff1a;从本地加载&#xff08;本文章带有mq安装包&#xff09; docker load -i mq.tar 1.2.安装MQ 执行下面的命令来运行…...

【1day】泛微e-office OA系统xml.php 文件 SORT_ID 参数 SQL 注入漏洞学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现...

智能无人零售:革新零售消费体验的未来

智能无人零售&#xff1a;革新零售消费体验的未来 在当今数字化时代&#xff0c;智能无人零售正以惊人的速度改变着我们的购物方式和消费体验。这一新兴领域的发展&#xff0c;为消费者带来了前所未有的便利和个性化选择。 智能无人零售是指利用先进的智能技术和自动化系统&…...

代币化对网约车区块链平台的影响

The effects of tokenization on ride-hailing blockchain platforms 再一次分析一下一篇关于区块链的文章&#xff0c;这篇文章比较新&#xff0c;2023年发表在POMS上。 由于这篇文章跟之前那几篇关注假货的文章的重点不一样&#xff0c;所以需要仔细读一下他的INTRODUCTION…...

YOLOv7 学习笔记

文章目录 前言一、YOLOv7贡献和改进二、YOLOv7核心概念三、YOLOv7架构改进总结 前言 在深度学习和计算机视觉领域&#xff0c;目标检测一直是一个极具挑战性和实用性的研究领域。特别是在实时目标检测方面&#xff0c;准确率和速度之间的平衡成为了关键考量因素。YOLO&#xf…...

【51单片机系列】74HC595实现对LED点阵的控制

本文是关于LED点阵的使用&#xff0c;使用74HC595模块实现对LED点阵的控制。 文章目录 一、8x8LED点阵的原理1.1 LED点阵显示原理1.2 LED点阵内部结构图1.3 开发板上的LED点阵原理图1.4 74HC595芯片 二、使用74HC595模块实现流水灯效果三、 使用74HC595模块控制LED点阵对角线亮…...

Canal笔记:安装与整合Springboot模式Mysql同步Redis

官方文档 https://github.com/alibaba/canal 使用场景 学习一件东西前&#xff0c;要知道为什么使用它。 1、同步mysql数据到redis 常规情况下&#xff0c;产生数据的方法可能有很多地方&#xff0c;那么就需要在多个地方中&#xff0c;都去做mysql数据同步到redis的处理&…...

C++的继承语法

在面向对象编程中&#xff0c;继承是一种强大的机制&#xff0c;允许一个类&#xff08;子类&#xff09;从另一个类&#xff08;父类&#xff09;继承属性和方法。C是一种支持面向对象编程的编程语言&#xff0c;通过其灵活而强大的继承语法&#xff0c;开发者可以构建更加模块…...

C# .NET平台提取PDF表格数据,并转换为txt、CSV和Excel表格文件

处理PDF文件中的内容是比较麻烦的事情&#xff0c;特别是以表格形式呈现的各种数据。为了充分利用这些宝贵的数据资源&#xff0c;我们可以通过程序提取PDF文件中的表格&#xff0c;并将其保存为更易于处理和分析的格式&#xff0c;如txt、csv、xlsx&#xff0c;从而更方便地对…...

spring boot学习第五篇:spring boot与JPA结合

1、准备表&#xff0c;创建表语句如下 CREATE TABLE girl (id int(11) NOT NULL AUTO_INCREMENT,cup_Size varchar(100) COLLATE utf8mb4_bin DEFAULT NULL,age int(11) DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8mb4 COLLATEutf8mb4…...

代理IP怎么使用?Mac苹果系统设置http代理IP教程

代理IP是一种通过将请求转发到另一个服务器&#xff0c;以隐藏自己的真实IP地址的服务器。使用代理IP可以保护您的隐私和安全&#xff0c;防止被跟踪或被攻击。在本文中&#xff0c;我们将介绍如何在Mac苹果系统上设置http代理IP教程。 一、了解代理IP 代理IP地址是一种可以用来…...

postgresql_conf中常用配置项

在 PostgreSQL 的 postgresql.conf 配置文件中&#xff0c;有许多常用的配置项&#xff0c;这些配置项可以根据特定需求和性能优化进行调整。以下是一些常用的配置项及其作用&#xff1a; 1. shared_buffers 用于设置 PostgreSQL 实例使用的共享内存缓冲区大小。增加此值可以…...

使用MfgTool烧写前需准备的文件

一. 简介 本文我们就来学习&#xff0c;如何将我们编译的 uboot&#xff0c;zImage&#xff08;内核镜像&#xff09;&#xff0c;xxx.dtb设备树文件&#xff0c;还有制作的根文件系统&#xff0c;这四个文件烧写到开发板中&#xff0c;最后 开发板能正常启动。 本文这里使用…...

SAP UI5 walkthrough step4 XML Views

SAPUI5 指出多种VIEW类型&#xff0c;包括XML,HTML,JavaScript 推荐使用XML&#xff0c;因为可读性更高 我们提前介绍一下MVC架构。 MVC是一种软件架构模式&#xff0c;它包括三个主要组件&#xff1a;模型&#xff08;Model&#xff09;、视图&#xff08;View&#xff09;…...

Java 1对1

文章目录 前言 客户端 服务器端 输出线程端 End 前言 TCP&#xff08;Transmission Control Protocol&#xff09;是一种面向连接的、可靠的网络传输协议&#xff0c;它提供了端到端的数据传输和可靠性保证。 本程序就是基于tcp协议编写而成的。 利用 TCP 协议进行通信的…...

云服务器Centos中安装Docker

云服务器Centos中安装Docker 1 简介DockerCentosCentos和Ubuntu区别 2 安装3 测试hello-world的镜像测试 1 简介 Docker Docker是一个开源的应用容器引擎&#xff0c;利用操作系统本身已有的机制和特性&#xff0c;可以实现远超传统虚拟机的轻量级虚拟化。它支持将软件编译成…...

人工智能教程(三):更多有用的 Python 库

目录 前言 推荐 JupyterLab 入门 复杂的矩阵运算 其它人工智能和机器学习的 Python 库 前言 在本系列的上一篇人工智能教程&#xff08;二&#xff09;&#xff1a;人工智能的历史以及再探矩阵中&#xff0c;我们回顾了人工智能的历史&#xff0c;然后详细地讨论了矩阵。在…...

【带头学C++】----- 九、类和对象 ---- 9.10 C++设计模式之单例模式设计

❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️麻烦您点个关注&#xff0c;不迷路❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️ 目 录 9.10 C设计模式之单例模式设计 举例说明&#xff1a; 9.10 C设计模式之单例模式设计 看过我之前的文章的&#xff0c;简单讲解过C/Q…...

Qt之QCache和QContiguousCache

一.QCache QCache在构造的时候指定了缓存中允许的最大成本,也就是如下构造函数中的参数maxCost。默认情况下,QCaches maxCost() 是100。 QCache(int maxCost = 100) ~QCache() void clear() bool contains(const Key &key) const int count() const bool insert(const …...

Django讲课笔记01:初探Django框架

文章目录 一、学习目标二、课程导入&#xff08;一&#xff09;课程简介&#xff08;二&#xff09;课程目标&#xff08;三&#xff09;适用人群&#xff08;四&#xff09;教学方式&#xff08;五&#xff09;评估方式&#xff08;六&#xff09;参考教材 三、新课讲授&#…...

JS中的闭包

闭包 闭包的概念其实很简单&#xff0c;就是函数A内部有一个函数B,函数B可以访问函数A的变量。也就是说闭包是指有权访问另一个函数作用域中变量的函数&#xff0c;利用闭包可以突破作用域链。 闭包的特性&#xff1a; 1、函数内再嵌套函数 2、内部函数可以引用外层的参数和变…...

深度学习在计算机视觉中的应用

深度学习在计算机视觉中的应用 摘要&#xff1a;本文介绍了深度学习在计算机视觉领域的应用&#xff0c;包括目标检测、图像分类、人脸识别等。通过分析深度学习在计算机视觉中的实际应用案例&#xff0c;阐述了深度学习在计算机视觉中的优势和未来发展趋势。 一、引言 计算…...

模板与泛型编程

函数模板 显示实例化 区别定义与声明 T是模板形参 int是模板实参 inpunt是函数形参 3是函数实参 显示实例化 模板必须实例化可见 翻译单元一处定义原则 与内联函数异同 引入原因&#xff1a;函数模板是为了编译器两个阶段的处理 内联函数是为了能在编译期展开 模板实参的类…...

【Fastadmin】一个完整的轮播图功能示例

目录 1.效果展示&#xff1a; 列表 添加及编辑页面同 2.建表&#xff1a; 3.使用crud一键生成并创建控制器 4.html页面 add.html edit.html index.php 5.js页面 6.小知识点 1.效果展示&#xff1a; 列表 添加及编辑页面同 2.建表&#xff1a; 表名&#xff1a;fa_x…...

Ribbon 饥饿加载

Ribbon默认是采用懒加载&#xff0c;即第一次访问时才会去创建LoadBalanceClient&#xff0c;请求时间会很长而饥饿加载则会在项目启动时创建&#xff0c;降低第一次访问的耗时&#xff0c;通过下面配置开启饥饿加载: 一、懒加载 Ribbon 默认为懒加载即在首次启动Application…...

【AIGC】大语言模型的采样策略--temperature、top-k、top-p等

总结如下&#xff1a; 图片链接 参考 LLM解码-采样策略串讲 LLM大模型解码生成方式总结 LLM探索&#xff1a;GPT类模型的几个常用参数 Top-k, Top-p, Temperature...

pip的基本命令和使用

Pip的基本命令和使用 介绍 Pip是Python的包管理工具&#xff0c;它能够帮助我们安装、升级和卸载Python模块。它是Python标准库的一部分&#xff0c;因此在大多数Python发行版中都已经预装了Pip。本文将介绍Pip的基本命令和使用方法&#xff0c;帮助读者更好地使用Pip管理Pyt…...

RocksDB实现原理

文章目录 简介编译安装RocksDB压缩库UbuntuCentos 基本接口高度分层架构LSM-Tree关于访问速度 MemTable落盘策略 WALRocksDB 中的每个更新操作都会写到两个地方&#xff1a;WAL 创建时机&#xff1a;重要参数 Immutable MemTableSSTBlockCacheLRU 缓存Clock缓存 写入流程读取流…...

mysql 链接超时的几个参数详解

mysql5.7版本中&#xff0c;先查看超时设置参数&#xff0c;我们这里只关注需要的超时参数&#xff0c;并不是全都讲解 show variables like %timeout%; connect_timeout 指的是连接过程中握手的超时时间,在5.0.52以后默认为10秒&#xff0c;之前版本默认是5秒&#xff0c;主…...

[架构之路-259]:目标系统 - 设计方法 - 软件工程 - 软件设计 - 架构设计 - 面向服务的架构SOA与微服务架构(以服务为最小的构建单位)

目录 前言&#xff1a; 二、软件架构层面的复用 三、什么是面向服务的架构SOA 3.1 什么是面向服务的架构 3.2 面向服务架构的案例 3.3 云服务&#xff1a;everything is service一切皆服务 四、什么是微服务架构 4.1 什么是微服务架构 4.2 微服务架构的案例 五、企业…...

7z压缩成jar包

比如我们要改下jar包中的某个文件&#xff0c;或者更换一下&#xff0c;那么就要先解压。解压后是这样的 弄好后&#xff0c;使用7z进行压缩&#xff0c;7z默认是标准压缩&#xff0c;会把BOOT-INF\lib 目录下的jar包也进行一次压缩&#xff0c;这会导致java -jar 会报 jar包相…...

python-缩进式编码+算术运算符+定义与赋值代码示例

文章目录 一、​缩进式编码二、算术运算符三、定义与赋值关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具包②Python实战案例③Python小游戏源码五、面试资料六、Python兼职渠道 一、​…...

APM性能分享观看有感

应用性能监控是什么 应用 ios&#xff0c;app&#xff0c;pc 性能 performance用户体验&#xff0c;注重快&#xff1a;流畅&#xff0c;稳&#xff1a;崩溃&#xff0c;省&#xff1a;资源占用省 监控那些性能 一&#xff0c;快&#xff1a; 1.启动监控&#xff1a;冷启…...

免费好用的API接口攻略

台风信息查询&#xff1a;提供西北太平洋及南海地区过去两年及当前年份所有编号台风的信息查询&#xff0c;包括台风实时位置、过去路径、预报路径及登陆信息等要素。短信验证码&#xff1a;可用于登录、注册、找回密码、支付认证等等应用场景。支持三大运营商&#xff0c;3秒可…...

五、C#笔记

/// <summary> /// 第八章&#xff1a;理解值和引用 /// </summary> namespace Chapter8 { class Program { static void Main(string[] args) { //8.1复制值类型的变量和类 int i 42; int copyi i…...