单片机控制继电器电路讲解
更多
好的!单片机(MCU)控制继电器是一种非常常见的应用,用于让MCU这个"大脑"通过小电流信号去控制外围大电流或高电压的电路(比如灯、电机、加热器等)。下面是详细的中文讲解:
核心原理:
单片机引脚通常只能提供很小的电流(几mA)和很低的电压(如3.3V或5V),而继电器线圈需要相对较大的电流(几十mA到几百mA)才能可靠吸合。继电器本身就是一个由线圈控制的电子开关。
因此,我们需要一个"桥梁"电路,实现两个主要功能:
- 电平转换/隔离: 将单片机引脚的低压信号转换为继电器线圈所需的工作电压(通常是5V, 12V, 24V)。
- 电流驱动放大: 将单片机引脚的微弱驱动能力放大,足以驱动继电器线圈。
常见电路方案及讲解:
最常用、可靠且成本低的方案是使用光耦 + NPN三极管(BJT) 或 光耦 + N沟道MOSFET。以下重点讲解光耦+NPN三极管方案:
电路元件:
- 单片机: 产生控制信号的源头。
- 光耦: 实现电气隔离,保护单片机免受继电器电路干扰(如线圈反电动势)。
- 型号:常用PC817, TLP521, EL817等。
- 作用: 将输入(发光二极管)和输出(光敏三极管)之间通过光来耦合,没有任何直接的电气连接。内部发光二极管亮时,光敏三极管导通;不亮时,光敏三极管截止。
- 限流电阻 (R1):
- 作用: 保护单片机引脚和控制光耦内部的发光二极管电流。
- 计算: 通常光耦发光二极管需要约5-20mA驱动电流。假设:
Vcc_mcu(单片机电源电压) = 5V, 光耦发光二极管正向压降Vf≈ 1.2V。R1 = (Vcc_mcu - Vf) / I_LED- 如
I_LED= 10mA, 则R1 = (5 - 1.2) / 0.01 = 380Ω,取标准值390Ω。
- 光耦输出限流电阻 (R2):
- 作用(可选但推荐): 限制光耦输出晶体管的电流,特别是在初始导通或有瞬时大电流时,提供额外保护。
- 值: 通常在1KΩ到10KΩ范围。
- NPN三极管:
- 型号:常用2N2222A, S8050, BC547等(必须能够承受继电器线圈电流和线圈工作电压)。
- 作用: 作为功率开关器件,由光耦的输出控制导通/截止,从而控制流经继电器线圈的电流。
- 续流二极管 (Flyback Diode) - D1:
- 型号:1N4007(1A/1000V),对于线圈电流小的继电器,也可以用1N4148等。
- 作用(极其重要!): 继电器线圈本质上是一个电感。当三极管从导通状态突然截止时,电感会产生一个反向高压(反电动势),这个高压如果不消除,极有可能击穿三极管!续流二极管反向并联在线圈两端,提供一个泄放电流的通路,把这个能量消耗在线圈内阻上,保护了三极管。二极管方向要反接(阴极接电源正)。
- 继电器:
- 选择: 线圈电压必须与你电路中提供给继电器的
Vcc_relay(12V/24V等) 匹配。 - 触点: 选择合适的触点电流、电压(AC/DC)规格,以满足你最终负载的需求。
- 选择: 线圈电压必须与你电路中提供给继电器的
- 继电器电源 (Vcc_relay):
- 提供继电器线圈和(可选的)光耦输出部分所需的工作电压。这通常是5V, 12V, 24V等,与单片机的
Vcc_mcu需要隔离(如果用了光耦),或者可以共用5V(如果只用三极管且不需要强隔离时)。
- 提供继电器线圈和(可选的)光耦输出部分所需的工作电压。这通常是5V, 12V, 24V等,与单片机的
- 三极管基极限流电阻 (R3 - Rbe):
- 作用: 限制流入三极管基极的电流,防止烧毁三极管,同时确保三极管能充分饱和导通。
- 计算: 需要考虑三极管的放大倍数
β (hfe),需要继电器线圈的工作电流I_coil,以及光耦的饱和压降Vce_sat(≈0.1-0.3V)。- 目标:让三极管工作在饱和状态(开关作用),此时
Ic < β * Ib。一般取Ib_sat = (1.5 - 2) * I_coil / β_min作为设计值。 - 假设:
β_min = 50(以最坏情况计算),I_coil= 80mA (查继电器数据手册),Vcc_relay= 12V。 Ib_sat ≈ 2 * 0.08 / 50 = 0.0032A = 3.2mA- 光耦输出导通时,
Rbe上的电压Vrbe = Vcc_relay - Vce_sat(光耦) - Vbe(Q1) - 假设
Vce_sat(光耦)≈ 0.2V,Vbe(Q1)≈ 0.7V,则Vrbe ≈ 12V - 0.2V - 0.7V = 11.1V Rbe = Vrbe / Ib_sat ≈ 11.1 / 0.0032 ≈ 3468Ω, 取标准值3.3KΩ或4.7KΩ(实际取4.7KΩ会更安全,确保Ib足够驱动饱和)。
- 目标:让三极管工作在饱和状态(开关作用),此时
- 负载: 接在继电器开关触点上的用电设备(灯、电机等)。
- 负载电源: 为负载供电的电源,电压电流由负载决定,必须与继电器的触点规格匹配。
电路连接 (以光耦+NPN BJT为例):
- 单片机引脚 -->
R1一端。 R1另一端 --> 光耦输入(发光二极管正极)。- 光耦输入负极 --> GND (单片机系统地)。
- 光耦输出集电极 (光敏三极管C) -->
Vcc_relay。 - 光耦输出发射极 (光敏三极管E) -->
Rbe (R3)一端。 Rbe (R3)另一端 --> NPN三极管基极 (B)。- NPN三极管集电极 (C) --> 继电器线圈一端。
- 继电器线圈另一端 -->
Vcc_relay。 - 续流二极管 反接 并联到继电器线圈上:
- 二极管 负极 (Cathode) 接
Vcc_relay。 - 二极管 正极 (Anode) 接 NPN三极管的集电极 (C)。
- 二极管 负极 (Cathode) 接
- NPN三极管发射极 (E) --> GND (继电器电路地)。注意:如果使用了光耦,这个地 必须 与单片机的地 隔离 (非物理连接),通过光耦实现隔离。
- 继电器的常开触点 (NO) 或常闭触点 (NC) 或公共端 (COM) --> 接你的负载电路。
工作过程:
-
吸合继电器 (On):
- 单片机控制引脚输出 高电平。
- 电流通过
R1流经光耦内部的发光二极管 (LED),LED发光。 - LED发出的光照射到光耦内部的光敏三极管,使其 饱和导通。
- 此时,
Vcc_relay通过光敏三极管(C-E极)-->Rbe--> 流入NPN三极管基极 (B),产生基极电流Ib。 - 当
Ib足够大时,NPN三极管 饱和导通 (进入深度饱和区)。 - 此时,相当于NPN三极管的C-E极短路,电流路径形成:
Vcc_relay--> 继电器线圈 --> NPN三极管C极 --> NPN三极管E极 --> GND (继电器侧)。 - 继电器线圈得电,产生磁场,吸合触点开关。触点接通,外部负载得电工作。
-
释放继电器 (Off):
- 单片机控制引脚输出 低电平。
R1和光耦LED中没有电流流过,LED不发光。- 光耦内部的光敏三极管 截止。
- 此时,NPN三极管基极 (B) 通过
Rbe被拉低到GND(光耦CE断开,相当于悬空,无电流流入基极),基极电流Ib ≈ 0。 - NPN三极管 截止 (C-E断开)。
- 继电器线圈断电,但因为它是电感,会产生一个巨大的反向电压(楞次定律)。这个反向高压使续流二极管 D1 正向导通,为线圈的放电电流提供了一个回流路径,从而限制了C极电压 (
Vce) 不超过Vcc_relay + 0.7V(二极管正向压降),有效保护了NPN三极管。 - 线圈磁场消失,继电器触点开关在弹簧作用下 断开,外部负载断电。
其他方案简要说明:
- 直接三极管/MOSFET驱动(无光耦):
- 最简单成本最低。
- 缺点:没有电气隔离。 线圈的反电动势干扰容易影响单片机,导致系统不稳定或复位。
- 电路基本去掉光耦部分,单片机引脚直接通过一个类似
Rbe的电阻接到三极管基极。续流二极管仍然绝对需要。
- 专用继电器驱动IC: 如ULN2003A(达林顿阵列),ULN2803A(通道更多),DCP020505(光耦隔离+驱动)。集成度高,方便使用多个继电器,有些带反电动势保护和隔离。
- MOSFET替代三极管: N沟道MOSFET(如IRF540, IRLZ44N)代替NPN三极管。优点是驱动电流(栅极电流)极小,功耗更低。但需要确保单片机/光耦输出电压能达到MOSFET的开启门限
Vgs(th)。一般用在电流更大的场合。
重要注意事项:
- 电气隔离: 如果需要控制强电(如交流220V设备)或避免从继电器电路窜入的干扰影响敏感的MCU逻辑,光耦隔离是强烈推荐的方案。
- 续流二极管: 这是必须的!否则三极管/场效应管极易被继电器线圈产生的反电动势击穿。二极管要选得快恢复或开关二极管,额定电压高于
Vcc_relay,额定电流大于等于线圈电流。 - 三极管/MOSFET选择:
- 耐压 (Vceo或Vdss): 必须大于
Vcc_relay,并且要充分考虑反电动势余量(虽然后者已被二极管限制,但选个安全值好)。通常选择超过Vcc_relay一倍以上。 - 电流 (Ic或Id): 必须大于等于继电器线圈的最大工作电流(看继电器数据手册)。
- 放大倍数 (β) 或导通电阻 (Rds(on)): BJT需要足够的β保证饱和,MOSFET需要低的导通电阻来降低自身发热。
- 耐压 (Vceo或Vdss): 必须大于
- 线圈供电电压 (Vcc_relay): 务必严格匹配继电器的额定线圈电压。电压过低无法可靠吸合,电压过高会烧坏线圈。
- 地隔离: 如果使用光耦,必须确保单片机侧的
GND_mcu和继电器侧的GND_relay是分开的、不连通的。只有电源Vcc_relay是共用的(或者两个电源也是隔离的)。 - PCB布局: 继电器的线圈驱动回路(
Vcc_relay-> 线圈 -> 三极管 -> GND)要尽量短粗,减少引线电感和电磁干扰。 - 负载选择: 确保继电器触点规格(电流、电压AC/DC)完全满足负载的要求。控制交流负载时,触点间会产生电弧,选型时要特别注意触点的灭弧能力或增加RC吸收、压敏电阻等保护。
总结:
使用光耦加NPN三极管是最经典的单片机控制继电器方案,在性价比、可靠性和隔离性上取得良好平衡。关键在于理解电平转换、电流放大、反电动势保护和电气隔离这些核心概念,并正确选择元件参数(特别是续流二极管和三极管的参数)。实际搭建电路前,务必仔细查阅所有元件的数据手册。
如何稳定地用3.3v单片机信号控制5v的继电器?
5V的继电器呢?这是本文要解决的问题。 解决方案: 1. 使用电平转换器 电平转换器可以将3.3V的信号转换为5V的信号,实现单片机信号输出与继电器
2023-10-27 10:26:26
想用3.3v单片机共用电源控制继电器,为什么这个电路e接地后单片机就不运行了呢?
想用3.3v单片机共用电源控制继电器,升5v模块用的78系列的共地升压。单片机
2022-07-28 14:41:50
7天热门专题
换一换
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- EDA是什么?有什么作用?
- dtmb信号覆盖城市查询
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- amoled屏幕和oled区别
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机
- 元宇宙概念龙头股一览