为什么单片机不能直接驱动继电器和电磁阀?
为什么单片机不能直接驱动继电器和电磁阀?虽然这个问题对于电子老白来说不值一提,但对于初学单片机的朋友而言,问这个问题的人实在是太多了。以前总是一句一句地解释给大家听,重复的劳动实在没有意义,看来非常有必要在这里统一说一下了。
既然是初学者,下面先简单介绍一下继电器是个什么东西。
(这是我手头上的一个继电器)
继电器就是个开关,这个开关是由它内部的线圈控制的,给它的线圈通电,继电器就吸合,开关就动作了。
有些人还会问什么是线圈?看上图,1脚和2脚就线圈的两个引脚,3脚和5脚现在是通的,3脚和2脚是不通的。如果你给1脚和2脚通电,你就会听到继电器一声响,然后3脚和4脚就通了。
比如你要控制一条线的通断,就可以把这条线故意搞断以后,一端接到3脚,一端接到4脚,然后通过给线圈通电和断电,就可以控制这条线的通断了。
线圈1脚和2脚加多大电压?
这个问题,需要看你用的继电器的正面,比如我现在这个,你可以看到是05VDC,所以你可以给这个继电器的线圈通5V电,继电器就会吸合。
线圈电压怎么加?
终于说到正题了。
你可以直接用两只手拿上5V和GND两条线直接通到继电器线圈的两个引脚,就会听到响声了。
那用单片机怎么给他加电压?我们知道,单片机引脚就可以输出5V,是不是直接用单片机引脚连接继电器线圈,就可以了呢?
答案当然不是的!
为什么呢?
万变不离其宗,还是欧姆定律。
你用万用表量一下继电器线圈的电阻。
比如我这个继电器线圈的电阻,大概是71.7欧姆,加5V电压的话,电流就是5除以71.7约等于0.07A,就是70mA。记住,我们单片机的普通引脚最大输出10mA电流,大电流的引脚最大输出20mA电流(这点可参照单片机的datasheet)。
看到了吧,虽然是5V,但是输出电流能力有限,达不到驱动继电器的电流,所以无法直接驱动继电器。
这时候就需要想办法,比如用三极管S8050驱动。电路图如下所示:
看S8050的datasheet,S8050是一个NPN管,ICE最大允许电流是500mA,远远大于70mA,所以用S8050驱动继电器绝对是没有问题的。
看上图,ICE也就是从C流到E的电流,就是和继电器线圈一条线的电流。NPN三极管,在这里就是个开关,单片机引脚输出5V高电平,ICE就导通继电器就会吸合;单片机引脚输出0V低电平,ICE就截止,继电器就不吸合。
同理,电磁阀也是一种电阻很小功率很大的负载,也需要按照上述欧姆定律的方法,选择合适的驱动元件。
1.RISC-V生态发展渐入佳境~
2.总结了防御性编程的16个技巧
3.嵌入式实时操作系统,真的实时吗?
4.存算一体芯片技术国际领航者,期待你的加入!
5.为何说嵌入式编程是复杂的?
6.编程时,全局变量要越少越好~
免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。