【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】

一个默默耕耘的工程师…

各专题目录
【专题1:工作两年再学嵌入式】
【专题2:freertos系统详解】
【专题3:从0到1写嵌入式操作系统】
【专题4:直流无刷电机控制】
【专题5:从0到1写bootloader、iap升级和产品量产】
【专题6:mcu硬件电路设计】
【专题7:qt上位机详解】
【专题8:linux应用及qt移植】
【专题9:从linux内核借鉴写代码的思路】
【专题10:面向对象和事件驱动】
【专题11:从0到1开发仪表】
【专题12:常用复杂模块从0到1】
【专题13:读书笔记】

1.方案一原理图

【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第1张图片

2.分析

   N型三极管作为开关管用,E即必须接地;P型三极管作为开关管用,E即必须接电源。
   Q4起一个反相作用。

   (1)当A为高电平时,Q5导通;Q2也导通,Q2的C极被钳位在0.3V,故Q1也会导通;即,电流的流向:电源–>Q1–>电机–>Q5–>地,电机正转。

   (2)当B为高电平时,Q4导通,Q4的C极被钳位在0.3V,故Q3也会导通;同时Q6导通,电流的流向:电源–>Q3–>电机–>Q6–>地,电机反转。

   (3)Q1和Q5以及Q3和Q6都是反逻辑,增加一个N型三极管,即可用一个引脚实现两种逻辑。

   (4)R6和R2电阻的作用:
   如果没有该电阻,讲解R6:Q4的C极被钳位在0.3V,而Q3的B极和E极之间的电压为0.7V,即电源–>Q3–>Q4–>地之间的电压为1V,电源直接被短路。一上电,Q3和Q4都会被烧毁;R2同理。所以必须加上R2和R6起限流作用,让电流在1mA左右。

3.桥式电路和死区时间

【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第2张图片
   如图所示的电路称为桥式电路,a、b、c、d都是开关,即三极管,在同一时刻,要么a、d闭合;要么b、c闭合;a和c、b和d不能同时闭合。a和c称为一个桥路,b和d称为一个桥路。

4.桥式电路知识点

   (1)以一个桥路为例:因为a是P管,c是N管,N管的开关速度比P管的开关速度快,假设a从断开的瞬间到a完全断开需要10mA,c从闭合的瞬间到完全闭合需要2mA,那么a和c就有8mA的时间是同时闭合的,即出现了蹿红现象(如果a和c同时闭合,称为蹿红现象,蹿红现象不会时三极管烧毁,因为同时开关的时间很短,但三极管会发热)

   (2)避免蹿红的方法:让a断开之后,再进过一段时间的延时,然后再闭合c,即在a断开到c闭合之间再加一个延时时间,延时时间内a和c都断开,a和c都断开的时间(延时时间)被称为死区时间在死区时间内,四个管子都关闭。死区时间也就是延时时间,在这段延时时间内,四个管子都关闭。死区可以通过软件实现,譬如使用定时器实现,也可以直接使用硬件/电容来实现延时。

   (3)总结:
   在控制电机正反转的时候,a、b、c、d四个管子都断开的时间,称为死区时间;因为三极管的导通和关闭都需要一段时间,为了避免出席那蹿红现象,因此需要有死区时间。

   (4)电机的状态:供电正转(状态A)—>断电正转(状态B,由于惯性)---->停(状态C)----->供电反转(状态D)---->…断电瞬间,也就是从状态B到状态D(供电瞬间),这段时间四个管子都是关断的,目的是为了让电机完全停下来,这段时间就是死区时间,不同的电机的死区时间不一样,要根据电机来调。

5.使用电容搭建延时电路

原理:
   (1)软件可以使用定时器或循环语句来作为延时;在硬件中,可以使用电容来作为延时器件(电容充电到阈值电压(能使三极管导通的电压)需要时间,将这一段时间作为延时时间)。
【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第3张图片
A点的电压波形,B点波形如下图的下面部分所示。
【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第4张图片
注:t3就是延时时间,t3=R*C;即延时时间和R与C的大小有关。

  • 如果电机没有完全停下来来,在电机还在正转的过程中,就给一个反向的电压,就会在电机的两端产生一个很高的di/dt,电机会发热。所以一定要让电机完全停下来,才能开始反转。
  • T一定时,需要R和C的大小进行配合。如果R太大,则流过三极管B极的电流就会小,如果R太小,那么就需要比较大的电容,但是大电容又比较贵。

   (2)一上电时,电源给电容C充电,如果元器件B为12V导通/工作,这样的延时电路是可行的。但如果B是一个三极管,那么在A点电压从0V充到0.7V的过程中,三极管处于放大状态,也有微弱的CE电流,所以没有达到延时的效果。
而对于1.2.3.5节的电路(改进方案四:加上RC滤波电路),该电路在给电容冲到阈值电压的过程中,三极管也是处于放大状态,即4.7us之后,电压才为12V,在电压增大到0.7v的过程中,三极管处于放大状态;但处于放大状态的时间特别短,而且电流太小,电机也不会转动,所以没有问题。但如果是为了解决蹿红现象,那么延时电路就必须精确。可以加入一个稳压管(只有达到稳压管的阈值电压之后,电路才会导通)。要理解下面的电路为什么需要加上一个稳压管。

6.方案一改进:加上延时电路,防止出现蹿红现象。

原理图
【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第5张图片
   在最前面的两个输入端,各加上该延时电路。系统一上电,A点的电压从0开始增加,只有当A点的电压大于5.6V时,才会有电流流过该稳压管,进而流过三极管。A点电压从0V到5.6V的时间段,即为延时时间。延时时间(估算)=电阻阻值电容容值=20.47=0.94ms。

   假设这个电机的死区时间是500us。我们需要让A点电压达到5.7V的时间为500us,根据电容的充电公式,可以计算出时间常数(R*C),然后通过R和C的配比来确定电容和电阻大小。(电阻大,则流过三极管b极的电流就会小;电阻小,就需要大一点的电容,大的电容价格比较高)。
在这里插入图片描述

7.方案一改进二:开通慢,关断快的电路实现

   桥式电路要有一个特点:导通慢(导通慢一点,让电机尽可能停下来),关断快(防止出现蹿红现象),确保桥式电路有一个死区。因为前面有一个RC延时电路,R的前面有一个两位开关,开关一会打到A,一会打到B;如下图
【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第6张图片
   当开关关断的时候,要想三极管关断快,就需要让电容中的电压放电快,也就是在延时电路的前面需要加上放电电路,即加上1.2.3.8.3节的放电电路。
【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第7张图片

8.开通慢,关断快电路的另一种实现

【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第8张图片
   分析:
   当下面的开关断开时,上面的开关开始导通,在稳压管的电压没有达到5.6V时,因为下面的N型三极管导通电压只要0.7V,所以它很快就能导通,电容即可通过三极管放电。即三极管的阈值电压比稳压管的阈值电压低很多,所以在稳压管没有导通之前,三极管先导通,即下面的充电电容在稳压管没有导通之前就会放完所有的电。

   注意:
   上图只是画了一半,即只画了上面放电电路;下面的放电电路没有画,下面的放电电路同理。

9.进一步优化

   电机类似电感,在开关断开的时候会有自感,所以要加上电路通路,让自感电流流通,防止烧毁三极管元器件。即在每个三极管上加一个反向二极管。

   注:
   COMS管在制造的时候就已经加了一个反向二极管对它进行保护,所以使用CMOS管的时候就不用加;使用普通的三极管需要加。
【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】_第9张图片

你可能感兴趣的:(【专题6:mcu硬件电路设计】 之 【14.案例二:使用两个引脚(高低电平)实现电机的正反转】)