第二章 核心硬件选型与原理:主控芯片、继电器、传感器与电源模块
各位同学,欢迎来到第二章。上一章我们聊了智能楼宇控制箱的整体架构,这一章咱们来点硬核的——把核心元器件一个个拆开看。说白了,选型选对了,项目就成功了一半。我这些年踩过的坑,十有八九都出在元器件选型上。
2.1 主控芯片选型:STM32 vs ESP32
主控芯片是整个控制箱的大脑。目前市面上最主流的两款,就是ST的STM32系列和乐鑫的ESP32系列。怎么选?我个人的习惯是:先看需求,再看成本,最后看生态。
| 对比项 | STM32(以F103为例) | ESP32 |
|---|---|---|
| 核心架构 | ARM Cortex-M3/M4 | Xtensa LX6 双核 |
| 主频 | 72MHz ~ 240MHz | 160MHz ~ 240MHz |
| WiFi/蓝牙 | 无(需外挂模块) | 内置双模蓝牙+WiFi |
| ADC精度 | 12位(部分型号16位) | 12位 |
| 工作温度 | -40°C ~ 85°C(工业级) | -40°C ~ 85°C |
| 典型价格(批量) | 8~25元 | 12~20元 |
| 开发环境 | Keil/IAR/STM32CubeIDE | Arduino IDE/ESP-IDF |
嗯,这里要注意。如果你做的控制箱需要联网,比如远程查看温湿度、远程开关灯,那ESP32是首选。内置WiFi和蓝牙,省掉一个通信模块的钱和空间。我在一个智能照明项目中就吃过亏——一开始选了STM32F103,后来发现要加ESP8266模块,布线麻烦不说,还多了一堆调试工作。
但如果你追求的是工业稳定性和实时控制,比如控制风机、水泵这类设备,我建议选STM32。为什么?它的PWM定时器更精准,看门狗更可靠,而且工业级型号的宽温范围是实打实的。ESP32虽然也能用,但WiFi射频部分在强电磁干扰环境下偶尔会掉线——我遇到过两次,排查起来非常头疼。
要联网,选ESP32;要稳定,选STM32。
预算紧张?ESP32性价比更高。
客户要求十年寿命?老老实实上STM32工业级。
2.2 继电器模块:小电流控制大功率
继电器这东西,说白了就是一个电磁开关。你给它一个小电流,它就能控制一个大电流的通断。在楼宇控制箱里,我们用它来控制灯、空调、窗帘电机这些220V设备。
选继电器,主要看三个参数:线圈电压、触点容量、响应时间。
- 线圈电压:常见的有5V、12V、24V。我个人习惯用5V,因为主控板直接供电方便。但如果你控制箱里已经有24V电源,用24V继电器更省电。
- 触点容量:比如10A/250VAC,意思是能承受250V交流电压下10A的电流。算一下功率:250V×10A=2500W。控制一个100W的灯绰绰有余,但如果是3匹空调(约2500W),就要选16A以上的继电器。
- 响应时间:一般5ms~15ms。控制灯没问题,但如果是控制电机正反转,响应时间太慢会导致切换瞬间电弧过大。
另外,继电器触点是有寿命的。机械继电器大约10万次,固态继电器(SSR)可以到百万次。如果控制箱里的设备频繁开关(比如每5分钟开关一次),我建议用SSR。虽然贵一点,但省心。
2.3 传感器选型:温湿度、光照、人体红外
传感器是控制箱的「眼睛」和「耳朵」。选对了,控制逻辑才能精准。
2.3.1 温湿度传感器
楼宇里最常用的就是DHT22和SHT30。DHT22便宜,精度±0.5°C,但采样间隔要2秒以上,而且容易受干扰。SHT30贵一些,精度±0.2°C,I2C接口,抗干扰能力强。
我个人的建议:如果只是做简单的温度控制(比如夏天超过28°C开空调),DHT22够用。但如果是精密机房或者实验室,必须用SHT30。记得有一次,我用DHT22做恒温控制,结果温度波动±1°C,客户投诉说「你们这空调忽冷忽热的」——后来换成SHT30,问题就解决了。
2.3.2 光照传感器
光照传感器常用的是BH1750和光敏电阻。BH1750是数字输出,直接读lux值,精度高。光敏电阻是模拟输出,需要ADC转换,而且一致性差——同一个批次的光敏电阻,阻值可能差20%。
你想想看,如果控制箱要自动调节窗帘开合角度,用BH1750更靠谱。如果只是检测「白天/黑夜」这种二值状态,光敏电阻加个比较器就够了,成本能省一半。
2.3.3 人体红外传感器(PIR)
PIR传感器,比如HC-SR501,用来检测人体移动。原理是检测人体发出的红外线变化。选型时注意两个参数:检测角度和检测距离。HC-SR501默认是110°、7米,但可以通过调节电位器改变。
嗯,这里有个坑。PIR传感器对热源非常敏感,如果安装在空调出风口附近,或者对着窗户(阳光直射),会频繁误触发。我曾经在一个项目中,把PIR装在了新风系统出风口旁边,结果灯一直亮着关不掉——排查了两天才发现是热风干扰。
- 温湿度:普通场景用DHT22,精密场景用SHT30
- 光照:需要精确lux值用BH1750,二值检测用光敏电阻
- 人体红外:注意安装位置,避开热源和阳光直射
2.4 电源模块:AC-DC与DC-DC
电源是控制箱的心脏。心脏不好,其他元器件再牛也白搭。
2.4.1 AC-DC模块
AC-DC模块把220V交流电转成直流电。常见输出有5V、12V、24V。选型时看三个指标:功率、纹波、隔离电压。
- 功率:把所有负载的功耗加起来,再留20%~30%余量。比如主控板+传感器+继电器总功耗5W,选7W以上的模块。
- 纹波:输出直流电中的交流杂波。STM32对电源纹波比较敏感,超过50mV就可能死机。我建议选纹波小于30mV的模块。
- 隔离电压:输入和输出之间的耐压值。楼宇控制箱建议选3000VAC隔离的,安全第一。
我个人比较喜欢用金升阳的AC-DC模块,质量稳定,纹波控制得好。有一次贪便宜买了某国产小厂的模块,结果上电半小时就烧了,还连带烧了主控板——从那以后我再也不敢在电源上省钱。
2.4.2 DC-DC模块
DC-DC模块用于电压转换,比如把12V转成5V,或者5V转成3.3V。常用的有AMS1117(线性稳压)和LM2596(开关稳压)。
线性稳压的优点是纹波小、电路简单,但效率低——12V转5V,效率只有42%,剩下的能量都变成热量了。开关稳压效率高(85%~95%),但纹波大,而且外围电路复杂。
怎么选?如果电流小于500mA,用AMS1117就够了。如果电流大于1A,必须用LM2596这类开关稳压。我在一个项目中需要给10个继电器供电,总电流2A,用了AMS1117,结果芯片烫得能煎鸡蛋——后来换成LM2596,温度直接降到40°C。
1. 在AC-DC输出端加一个TVS管,防浪涌。
2. DC-DC输入输出各加一个10μF电解电容+0.1μF瓷片电容,滤除高低频纹波。
3. 电源走线要粗,至少1mm宽度,大电流走线要加锡。
好了,这一章的内容就到这里。核心硬件选型其实不难,关键是理解每个元器件的工作原理和适用场景。下一章我们开始画原理图和PCB,到时候这些选型知识都会用上。
记住:选型不是选最贵的,也不是选最便宜的,而是选最合适的。多看看数据手册,多问问自己「这个参数在我的场景下够不够用」,慢慢就有感觉了。