大家好,又见面了,我是你们的朋友全栈君。
继电器线圈需要流过较大的电流 (约50mA)才能使继电器吸合,一般的集成电路不能提供这样的大电流,因此,必须要进行扩流,即设计驱动电路。
三极管氛围NPN与PNP型两种,在使用中,我选择PNP型的S8550型号三极管。
百度 三极管驱动继电器 ,可以得到大量的参考电路设计,虽然花样繁多,但是可用,靠谱的比较少,并且基本都是从两三篇转载而来,上图就是比较经典的一个设计。
对于PCB的设计,要保持严谨与细心,一旦出错,板子一来一回可能一星期时间就过去了,向过去两星期不严谨,不细心的我提出强烈谴责,总以为闹着玩,对于PCB的设计,大忌。
这里的M7,即续流二极管1N4007,为保护三极管将开关关断时线圈所产生的反电动势放掉。
三极管的放大需要工作在饱和区,停止工作时需要工作在截止区,因此,实现了对于继电器的开启和关闭的功能。
到这引出一个问题,如何设计,使三极管可以快速地从截止区变道饱和区,并且稳定放大,稳定截至。
百度的文章这样告诉我,使用他们整理好的公式,计算R1的阻值即可,但是这里的一般取R1 = 3.6K即可,是说的不全面的,并且没有从根本上解决和说明问题。
对于三极管,做开关时,需要2~3倍的Ib才能让三极管快速的从截至状态变到饱和状态
因此,电阻的取值,需要电压差和预期的电流共同决定,仅仅是小于某个阻值,是不够的。
对于本次基于STM32F103设计的外围电路,小型继电器的功率大致150~500mW,按照最大的计算,电流100mA,三极管β按照100计算,带入上述的公式,算了,我还是写一下吧。
计算出来Rb小于3.3K,这个设计综合电流考虑后,可以选择1.2K~3.3K的电阻,这里选择2K
附上老师计算手稿,感恩
在最初的设计中,因为继电器需要外接,由于对于继电器的想当然,认为只要因出去一个正点驱动即可,但是这是错误的。
在百度的图片中,以NPN型举例,图中阴影部分为继电器电路,继电器线圈作为集电极负载而接到集电极和正电源之间。当输入为0V时,三极管截止,继电器线圈无电流经过,则继电器释放(OFF);相反,当输入为+VCC(+5V)时,三极管饱和,继电器线圈有相当的电流流过,则继电器吸合(ON)。
对于PNP型,电流方向,电压极性发生变化,当输入为0V时,三极管 饱和,从而继电器线圈可以有电流流过,继电器吸合,相反,当输入为+VCC时,三极管截止,继电器释放。
理论通了,后面就是原理图的设计,以及PCB的绘制了,综合其中一篇文章的设计,加入了LED灯,来辅助显示继电器开启还是关闭。
这里LED灯的选择与限流,也有一些技巧和规则,如果查询手册,会显示最大可以流经25mA的电流,如果按照25mA电流计算进行限流电阻的设计,那么5V的电压,减去Uce的0.7V压降,LED需要1.8V-2.5V的工作电压,也就是需要电阻分压1.8V-2.5V,需要欧的电阻,但是实际设计中,不需要LED灯这么亮,需要1~3mA的电流流经的亮度即可,如果选择2mA,那么,这里需要用900-1250欧姆,如果选择1mA,那么,这里需要用1800-2500欧姆,我这里选择了1.5K
想要交流的,关注公众号,后台联系即可
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152681.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...