4. 原理图设计(下):数字量输入输出接口、模拟量采集接口、通信接口电路、安全回路设计
好,咱们接着聊。上一章我们把电源和主控MCU的“骨架”搭好了,这一章要往里填“血肉”——也就是各种接口电路。说白了,电梯主控板就是一块“翻译板”,把传感器、按钮、门锁这些物理世界的信号,翻译成MCU能懂的电平;再把MCU的指令,翻译成继电器、接触器能执行的动作。
这部分坑特别多。我刚开始做电梯板时,就因为在数字量输入上少加了一个滤波电容,结果现场老是误报故障,被客户骂得狗血淋头。嗯,咱们一个一个来拆解。
4.1 数字量输入接口(DI)
电梯里什么最多?开关信号最多。平层开关、门区开关、限位开关、按钮……这些都是典型的数字量输入。它们本质上是干接点,也就是一个纯粹的机械开关,没有电压。
设计DI电路,核心就三件事:隔离、滤波、电平转换。
核心原则: 电梯是强电和弱电混装的设备,DI信号线可能走几十米长,跟变频器、电机线绑在一起走。如果不做隔离,一个雷击或者一次变频器干扰,就能把MCU烧穿。所以,光耦隔离是标配。
我常用的电路结构是这样的:
外部干接点 → 限流电阻 → 光耦(如TLP185) → 上拉电阻 → MCU GPIO
这里有几个参数要算清楚:
- 限流电阻:光耦的LED侧,一般正向电流取5~10mA。根据外部供电电压(通常是24V)减去光耦压降(约1.2V),再除以电流,就能算出电阻值。比如 (24-1.2)/0.01 = 2.28kΩ,我习惯取2.2kΩ。
- 上拉电阻:MCU侧,一般取4.7kΩ~10kΩ。这个值影响响应速度和功耗,电梯信号变化不快,10kΩ完全够用。
- 滤波电容:在光耦的输出端对地加一个0.1μF的电容。为什么?因为机械开关会有抖动,而且长线缆会耦合噪声。这个电容能滤掉几毫秒的毛刺。我在项目里吃过亏,不加这个电容,一天能误报十几次平层信号。
我的个人习惯: 所有DI通道,在PCB布局时,光耦要尽量靠近板边连接器。这样输入信号一进来就隔离了,不会在板子上乱窜。另外,光耦的GND和MCU的GND之间,要保持足够的安全间距,至少2mm以上。
4.2 数字量输出接口(DO)
DO电路,说白了就是MCU控制外部负载的通断。电梯里常见的负载有:继电器线圈、接触器线圈、指示灯、蜂鸣器。这些负载的电压通常是24V或110V,电流从几十毫安到几安培不等。
设计DO电路,核心也是三件事:驱动能力、续流保护、隔离。
我常用的方案有两种:
| 方案 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 光耦 + 达林顿管(如ULN2003) | 驱动小继电器、指示灯 | 集成度高、便宜 | 压降大、发热 |
| 光耦 + MOSFET(如AO4404) | 驱动接触器、大负载 | 压降小、效率高 | 需要额外驱动电路 |
我个人更倾向于第二种方案,尤其是驱动接触器时。为什么?因为接触器线圈是感性负载,关断时会产生很高的反向电动势。MOSFET的体二极管可以自然续流,而ULN2003内部虽然有续流二极管,但耐压和电流余量都不够大。
我曾经踩过的坑: 有一次设计,用ULN2003驱动一个24V的继电器,没注意看数据手册。继电器线圈电流是80mA,ULN2003单通道额定500mA,看起来没问题。但实际工作时,ULN2003的饱和压降是1V左右,功耗就是80mW,加上8个通道同时工作,芯片烫得能煎鸡蛋。后来我换成了MOSFET方案,温度直接降了30度。
另外,续流二极管一定要加。不管是继电器还是接触器,线圈两端必须反并联一个二极管(1N4007或SS34),阴极接电源正极。否则,关断瞬间的尖峰电压能轻松击穿MOSFET或光耦。
4.3 模拟量采集接口(AI)
电梯里需要采集的模拟量不多,但都很关键:轿厢称重信号、变频器反馈的电流/电压、温度传感器(如电机绕组温度)。
模拟量采集,说白了就是要把0~10V或4~20mA的工业标准信号,转换成0~3.3V的ADC输入范围。这里有两个关键点:阻抗匹配和抗混叠滤波。
对于0~10V信号,我习惯用电阻分压加电压跟随器:
0~10V输入 → 分压电阻(如10kΩ和3.3kΩ,得到0~2.5V) → 运放跟随器(如LMV321) → RC低通滤波(100Ω+0.1μF) → MCU ADC
为什么加运放跟随器?因为MCU的ADC输入阻抗通常只有几kΩ到几十kΩ,直接分压会拉低信号。运放跟随器输入阻抗极高(MΩ级),输出阻抗极低,完美解决这个问题。
对于4~20mA电流信号,需要先通过一个精密电阻(如250Ω)转换成1~5V电压,然后再做分压和跟随。注意,这个精密电阻要用0.1%精度的,否则采集误差会很大。
我的经验: 模拟量走线一定要远离数字信号,尤其是PWM和通信线。我在一个项目里,ADC采集的称重信号老是跳变,查了两天,最后发现是ADC的参考电压走线跟SPI时钟线并行了10mm。把参考电压走线绕开,问题立刻解决。模拟电路,说白了就是跟噪声做斗争。
4.4 通信接口电路
电梯主控板不是孤岛,它要跟轿厢控制板、外呼板、变频器、上位机(监控系统)通信。常用的通信接口有:
- RS-485:最常用,用于电梯内部总线,距离远、抗干扰强。
- CAN总线:部分高端电梯用,实时性好。
- 以太网:用于远程监控和调试。
这里重点讲RS-485,因为它是电梯行业的“老黄牛”。
RS-485电路设计,核心是收发器选型和保护电路。
收发器我推荐用TI的SN65HVD3082或MAX3485,它们都是3.3V供电,跟MCU直接对接。注意,RS-485是差分信号,A、B线之间要加120Ω的终端电阻,而且只在总线两端加,中间节点不加。
保护电路是重中之重。电梯现场的485线可能跟动力线走同一个桥架,共模干扰和浪涌非常严重。我的标准配置是:
A/B线 → 气体放电管(GDT,90V) → 共模扼流圈 → TVS管(双向,6.8V) → 收发器
我曾经犯过的错: 早期设计时,为了省成本,只加了一对TVS管,没加GDT和共模扼流圈。结果一个雷雨季节,现场烧了十几块板子,全是485收发器击穿。后来老老实实加上三级保护,再也没出过问题。省成本不能省在保护上,这是教训。
另外,RS-485的A、B线之间,我习惯各加一个10kΩ的下拉和上拉电阻,分别拉到GND和3.3V。这样做是为了在总线空闲时,保证A线电平高于B线,避免误触发。
4.5 安全回路设计
安全回路,是电梯设计的“红线”。它不归MCU管,是纯硬件电路。说白了,就是串联了一堆安全开关:急停按钮、门锁触点、限速器开关、上下极限开关……任何一个开关断开,安全继电器就掉电,主接触器断开,电梯立即停止。
设计安全回路,核心原则就一条:失效安全。也就是说,任何器件损坏、断线、掉电,都要导致电梯停止,而不是继续运行。
我常用的安全回路结构是这样的:
110V电源 → 急停按钮 → 门锁触点 → 限速器开关 → 极限开关 → 安全继电器线圈 → GND
安全继电器是双通道的,两个触点串联。为什么?因为单个继电器如果触点粘连,就失去了保护作用。双通道可以保证即使一个触点粘连,另一个还能断开。
注意: 安全回路绝对不能经过MCU。MCU可能会死机、跑飞、程序bug,这些都不能影响安全回路。安全回路是纯硬件的,跟软件无关。这是电梯行业的标准要求,也是底线。
在原理图上,安全回路要用粗线画出,跟其他电路明显区分。每个安全开关都要标注清楚编号和位置,方便现场排查故障。我习惯在安全回路的每个节点都引出测试点,这样维修人员用万用表就能快速定位是哪个开关出了问题。
嗯,这一章内容不少。数字量输入输出、模拟量采集、通信接口、安全回路,每一个都是电梯主控板的关键组成部分。设计时,既要考虑功能实现,更要考虑可靠性和安全性。下一章,咱们开始画PCB布局,那又是另一门学问了。