
在前几篇中,我们解决了“数据怎么采、怎么传、怎么存”的问题。但在智慧档案馆、冷库、机房等场景中,还有一个更严苛的需求:
当温湿度越限时,系统必须在秒级内响应(如启动除湿机、关闭风阀),而不能等待云端指令。
如果依赖云端决策,链路上的任何抖动(网络延迟、云端服务重启)都可能导致灾难性后果。因此,边缘侧本地联动是以太网温湿度变送器必须具备的“保底”能力。
本文将聚焦如何在资源受限的 MCU 上,设计一套不依赖云端、高可靠、可配置的本地阈值联动逻辑。
结论:云端用于“管理与分析”,边缘用于“生存与保护”。
在变送器固件中,我们设计一个轻量级的边缘规则引擎,其核心是“采样 → 判断 → 执行 → 回执”的事件驱动模型。
[温湿度传感器]
│
▼
[ADC + 数字滤波] → [环境数据缓存区] (双缓冲,前文已述)
│
▼
┌─────────────────┐
│ 阈值判断引擎 │ ←─── [阈值配置表] (Flash中)
│ (周期扫描/中断) │
└─────────────────┘
│
├── 正常 ──→ [更新状态字] ──→ [继续采样]
│
└── 越限 ──→ [触发联动动作] ──→ [告警输出]
│
├──→ [继电器干接点闭合]
├──→ [蜂鸣器鸣叫]
├──→ [LED 闪烁]
└──→ [主动上报 Trap/MQTT]简单的“高于 30℃ 报警”无法满足复杂场景。我们需要定义一套结构化配置模型,存储在 MCU 的 Flash 中。
支持多条件组合,这是边缘联动的精髓。
防止瞬时干扰误触发。
每个规则对应一组动作:
动作类型 | 描述 | 硬件依赖 |
|---|---|---|
DO0~DO1 | 继电器干接点输出(常开/常闭) | 继电器驱动电路 |
BUZZER | 蜂鸣器鸣叫(不同频率代表不同级别) | 蜂鸣器 |
LED | 状态灯闪烁(快闪/慢闪/常亮) | LED |
SNMP_TRAP | 发送 Trap 到网管系统 | 以太网 PHY |
MQTT_PUB | 发布 JSON 消息到边缘网关 | 以太网 PHY |
// 伪代码
typedef enum {
STATE_NORMAL,
STATE_TRIGGER_DELAY,
STATE_ALARM,
STATE_RECOVER_DELAY
} alarm_state_t;
alarm_state_t temp_state = STATE_NORMAL;
uint32_t trigger_timer = 0;
uint32_t recover_timer = 0;
void check_temperature_alarm(float temp) {
switch (temp_state) {
case STATE_NORMAL:
if (temp > HIGH_LIMIT) {
temp_state = STATE_TRIGGER_DELAY;
trigger_timer = get_tick(); // 启动计时
}
break;
case STATE_TRIGGER_DELAY:
if (temp < HIGH_LIMIT - HYSTERESIS) {
// 未到时间就恢复了,回到正常
temp_state = STATE_NORMAL;
} else if (get_tick() - trigger_timer > TRIGGER_DELAY_MS) {
// 持续越限,确认告警
temp_state = STATE_ALARM;
execute_actions(ACTION_RELAY_ON | ACTION_TRAP_SEND);
}
break;
case STATE_ALARM:
if (temp < HIGH_LIMIT - HYSTERESIS) {
temp_state = STATE_RECOVER_DELAY;
recover_timer = get_tick();
}
break;
case STATE_RECOVER_DELAY:
if (temp > HIGH_LIMIT) {
// 恢复期间又超限,回到告警态
temp_state = STATE_ALARM;
} else if (get_tick() - recover_timer > RECOVER_DELAY_MS) {
// 确认恢复
temp_state = STATE_NORMAL;
execute_actions(ACTION_RELAY_OFF);
}
break;
}
}执行器模块负责将逻辑动作转化为硬件操作。
边缘联动不是“孤岛”,它必须与云端协同工作。
在以太网温湿度变送器中实现边缘侧阈值联动,本质上是将“感知”与“控制”在物理空间上合二为一。
设计 Checklist:
💡 核心思想:云端负责“智慧”(策略优化、大数据分析),边缘负责“本能”(秒级响应、保底防护)。
这种架构确保了智慧档案馆在面临网络风暴或云端故障时,依然能像“植物人”一样维持最基本的生命体征——保持环境安全。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。