返回上一级
2706 字
14 分钟
实战模块 水龙头 温控风扇 人体感应灯 光控灯

p49(7.6 分钟)、p50(15.4 分钟)、p51(4.1 分钟)、p52(4.7 分钟)、p53(12.1 分钟)、p54(12.6 分钟)、p55(6.5 分钟)

四个模块的结构都是同一套:传感器 + 比较器 + 三极管开关 + 负载。

比较器基础#

V+ 同向输入端(正)
V− 反向输入端(负)
输出 一个输出端
V+ > V− → 输出高电平
V+ < V− → 输出低电平

举例:反向端加参考电压 VREF,同向端加输入信号 VIN。

VIN > VREF → 输出高
VIN < VREF → 输出低

比较器为什么要加上拉电阻#

前提:不是所有比较器都能主动输出高电平和低电平,要看内部结构。

推挽输出:内部有两个开关,一个接 VCC、一个接 GND → 可以主动输出高低电平
开漏输出(开集电极输出):没有上管,只有一个下管接 GND → 只能把信号线拉低,不能拉高

开漏输出的解法:外部上拉电阻#

把信号线上拉到 VCC。

开关断开时:后级接收器件作为输入是高阻态(可看成非常大的电阻到地,例:1MΩ)
与上拉电阻(例:1K)分压 → 该点约等于 5V = VCC → 高电平
开关闭合时:信号线被比较器内部开关短路到 GND → 该点电压变为 0V → 低电平

那个 1MΩ 要注意:高阻态不是断路,是「很大的电阻」。所以上拉电阻必须远小于后级输入阻抗,分压才能拉得上去。

开漏输出结构 → 一定要加上拉电阻
推挽结构 → 可以不加

但有些推挽电路也会加上拉电阻,作用是加大电路输出电流的能力。

自动出水水龙头#

整体结构:

红外发射管 + 红外接收管 → 比较器 → N 管开关 → 电机(水泵)

红外接收二极管的特性#

接法:反向接法(P 端接 GND、N 端接电源端,与普通二极管相反)
无红外信号:视为断路(断开)
有红外信号:导通,流过一定电流
电流大小:与红外光亮度成正比

电路推导#

电路是 5V → 串电阻 R → 红外接收二极管 → GND,取分压点电压。

V1 = VCC − R × IR

假设 IR = 10μA,R 取 100K:

10μA × 1K = 10mV
10mV × 100 = 1V
即 100K × 10μA = 1V
有红外:V1 = 5 − 1 = 4V
无红外:IR = 0 → V1 = 5 − 0 = 5V

参考电压#

两个电阻分压:45K 接 5V、5K 接 GND。

VREF = 5V × 5K / (45K + 5K) = 5 × 0.1 = 0.5V ...

这里我算了两遍才对上:按分压公式是 5 × 5/(45+5) = 0.5V,但结果要的是 4.5V。

也就是说,取的是上端电阻的电压(45K 上的压降),即 5 − 0.5 = 4.5V。分压点 4.5V 接到比较器同向端(V+),红外接收分压点接到反向端(V−)。

分压点的取法要注意:45K 在上、5K 在下时,中间点电压是 5 × 5/50 = 0.5V。要得到 4.5V,应该理解成取 45K 两端的压降,或者实际电路是 5K 在上、45K 在下。结果按 4.5V 反推电路即可。

逻辑#

有红外:V− = 4V,V+ = 4.5V → 输出高电平 5V → 三极管导通 → 电机转
无红外:V− = 5V,V+ = 4.5V → 输出低电平 0V → 三极管断开 → 电机不转

看着像逻辑反了:手挡住才有红外反射回来,有红外才转。其实是对的——手在下面时才出水。

实物#

红外模块内部集成了红外接收二极管、几个电阻、一颗比较器芯片,对应上面画的分立电路;红外发射源(红外发光二极管)只串一个电阻放在旁边。

原理:手挡住时,红外发光二极管的光射到手上被反射回红外接收管,接收后输出对应高低电平;手不挡时红外光直接射出去不弹回。

扩展演示#

  1. 拔掉红外发光二极管,用红外遥控器对着接收管按,每按一次电机转一次。该电路也可以用来检测环境中红外光亮度是否达到额定值。
  2. 火焰检测:打火机打火,火焰也发射红外光被接收,电机同样转。

调试注意#

太阳光中也含有红外光,白天调试必须把窗户关紧。

否则房间到处是红外光,挡与不挡效果一样,模块不受控、电机会一直转。

少了续流二极管#

电机是电感性负载,电感的特性是电流不能突变,开关断开一瞬间会产生很高的尖峰脉冲电压。

做这个实验前一定要先把示波器档位调大,用衰减档,因为很容易产生很高的尖峰电压。

实测:供电 5V,示波器直接读到 VPP = 18V。

18V 已经算偏小了(该电机功率本来就不大),用更精密的示波器应该能测到更高电压。

原理:电感为保持电流不变,理论上可以感生出无穷大的电压。

后果:三极管承受不住这么高的电压就会被击穿。

正确做法:在电机两端加一个续流二极管。

温控风扇#

电路是比较器 + P 管开关电路。

T > 36℃ → 风扇转
T ≤ 36℃ → 不转

若要两个不同阈值(如 36℃ 开、30℃ 关),需要加回差(迟滞)比较器;这里简化成单一阈值开关。

参考电压:反向端加 VREF,1K 接 5V + 1K 接 GND 分压 → 2.5V。

热敏电阻#

相当于一个可变电阻,阻值随温度变化:

正温度系数:温度越高,电阻越大
负温度系数:温度越高,电阻越小

选型推导#

电机转的前提是比较器输出低电平
→ 需要 V+ < V−
→ 需要「温度越高、V+ 越小」
→ 负温度系数热敏电阻应放在 V+ 分压的上端

这段推理是从目标反推元件选型和位置的典型例子。

具体数值#

固定电阻取 1K。

25℃ 热敏 10K 分压点约 4.5V V+ > V−(2.5V) 输出高电平 电机不转
36℃ 热敏 1K 分压点 2.5V 临界 — —
36.11℃ 热敏略小于 1K 分压点 2.499V V+ < V− 输出低电平 电机转

实物对应#

模块 → 一个电阻 → P 管(P 管要加上拉电阻)→ 电机接 VCC。

这个电路也没有加反向续流二极管,正常应再加一个。

应用#

电脑 CPU 散热风扇。CPU 里的温控风扇用 PWM 调制,可实现温度越高转速越快。

人体感应灯#

器件是热释红外传感器。便利店门口的「欢迎光临」就是用这个做的。

内部结构#

内部有一种特殊材料,一旦接收到红外信号,材料两端感生出电压(非常微弱)。

内部还会再集成三极管或 MOS 管做放大。

这里用 MOS 管更合理:该材料感生出来的是很微弱的电压信号,而不是电流信号;MOS 管只需电压、不需要 IB 电流,三极管则需要 IB 电流才能工作。

这是「电压驱动 vs 电流驱动」在实际选型中的体现。

输出电路#

VCC → 电阻 R → MOS 管漏极 → 源极 → GND,漏极作输出。

无红外:MOS 管断开 → 该点 = VCC
有红外:MOS 管导通 → 该点 = VCC − VR(VR = I × R)

用比较器实现#

参考电压 VREF 接反向端,传感器输出接同向端。

无人经过:V+ = VCC > VREF → 输出高电平
有人经过:V+ 下降 < VREF → 输出低电平

后级用 P 管(VCC → P 管 → LED → 电阻 → GND):低电平导通,灯亮。

改用 N 管的接法#

把传感器输出接到比较器的另一端(V−),VREF 接到 V+。

VREF 必须设置在 VCC 和 (VCC − IR) 之间:

例:VCC−IR = 3V、VCC = 5V → VREF 可取 4V
无人:该点为 5V;有人:降到 3V
→ V+ > V− → 输出高电平 → 经电阻驱动 N 管 → LED 亮

关键特性#

热释红外只能识别「移动的热」,物体不移动就识别不了。

所以手不动灯会灭。很多人做这个项目时困惑的就是这点——不是电路坏了,是传感器原理如此。

实物演示:手划过灯亮;手不动,过一会灯就灭。

光控灯#

控制逻辑#

用 N 管做电子开关:高电平导通 → LED 亮;低电平不导通 → LED 灭。

前面加比较器,反向端接 VREF。

光敏电阻#

阻值与环境亮度有关,有两种:

  • 亮度越高、阻值越大
  • 亮度越高、阻值越小(成反比)—— 本例选用这一种

具体数值#

VREF 2.5V
光敏电阻(很暗) 10K
光敏电阻(很亮) 100Ω
固定分压电阻 10K

逻辑:很暗 → 灯亮;很亮 → 灯灭。

推导#

很亮:光敏 100Ω → 分压点约 0.5V < 2.5V → 输出低电平 → LED 不亮
很暗:光敏 11K → 分压点 > 2.5V → 输出高电平 → LED 亮

实物演示:亮处灯不亮;手挡住光敏电阻(变暗)灯亮,手松开灯灭。

四个模块的统一结构#

传感器(把物理量变成电信号)
↓
比较器(把模拟信号变成高低电平)
↓
三极管/MOS 开关(把弱信号变成驱动能力)
↓
负载(电机 / LED)

看懂了这套结构,90% 的传感器模块都能看懂。

模块传感器参考电压开关管负载
自动水龙头红外接收二极管4.5VN 管电机
温控风扇负温度系数热敏电阻2.5VP 管电机
人体感应灯热释红外传感器4V(N 管接法)P 管LED
光控灯光敏电阻2.5VN 管LED

坑#

  • 开漏输出的比较器必须加上拉电阻,否则输出永远是低电平;上拉电阻要远小于后级输入阻抗(1K vs 1MΩ),否则拉不上去
  • 红外接收二极管是反接的(和普通二极管相反),接反了不工作;白天调试必须关窗,太阳光里的红外会让它不受控
  • 热释红外只能识别移动的热,手不动灯就灭,这是正常的
  • 电机电路都要加续流二极管,这里的示例电路都漏了,实测尖峰能到 18V;测尖峰电压前先把示波器调到衰减档,否则打坏探头
  • 热敏/光敏电阻要选对温度系数和亮度系数,还要放对位置(从目标反推);比较器阈值是单一的还是带回差的,看产品要求,单一阈值在临界点附近会抖动
实战模块 水龙头 温控风扇 人体感应灯 光控灯
https://me.622168.xyz/posts/hardware/20-practical-modules/
作者
Shaw 的小屋
发布于
2026-09-18
许可协议
CC BY-NC-SA 4.0