一、项目缘起

高校宿舍和实验室的用电环境有两个绕不开的特点:人员密集、用电设备多。而传统断路器只能做短路和过载的被动保护,对线路电流的实时状态、环境烟雾与温度的渐变过程没有感知,更谈不上告警。宿舍违规使用大功率电器、实验室设备长时间无人值守导致电气火灾的事故并不少见。

这个项目的目标是用国产芯片搭一套完整的"感知—决策—执行—上云"链路,覆盖过流、烟雾、异常升温三类风险,并在夜间叠加人体入侵检测,同时保留本地自主应急保护和云端远程管理两条通路。设备要能装进配电箱旁边,成本要足够低,量级上要适配宿舍、实验室这类中小型空间。

选型上用了海思 WS63E。这颗 SoC 主频 240MHz,同时集成 SLE 星闪与 WiFi 双模射频,片内自带 4MB Flash,做这套系统不需要外挂存储芯片和通信芯片。星闪链路的抗干扰能力在宿舍楼这种 2.4G 频段拥挤的环境里优势明显,WiFi 则负责上云。整套设备全部用国产芯片搭建,部署和改造成本很低。

二、系统整体方案

系统采用一主两从的星型组网,A 板是 SLE Client 主机,B、C 两块板是 SLE Server 从机,整体分三层。

层次层次职责
云端交互层MQTT 云平台 + 手机 Web 远程监控接收下层上传的监测与告警数据,向下转发人工控制指令,上下行全部走 MQTT
星闪核心中转层A 板 HH-D02,WS63E全系统唯一决策核心,集成毫米波雷达、MQ135 烟雾传感器、SHT30 温湿度模块与本地 Flash 日志,每 3 秒执行一轮隐患分级判定,用两条并行 SLE 链路分别对接 B、C
感知执行终端层B 板 HH-D01、C 板 HH-D01B 板承接 A 板下发的监测数据做 OLED 本地可视化,并通过 WiFi 与云端双向 MQTT 互通,中转远程指令;C 板只接收并执行 A 板下发的分级告警与断电指令,向上反馈线路电流采样数据

在这里插入图片描述

架构上有一条贯穿始终的设计原则:判断权限全部集中在 A 板。B 板坚持"透明中转、不参与业务判断",C 板坚持"纯执行、无自主判断"。这样做的好处是职责边界清晰,单个模块出故障不会扩散到全局,联调阶段的问题定位也简单得多。

三、硬件设计

3.1 核心器件

硬件器件规格参数
主控 SoC海思 WS63E,主频 240MHz,SLE 星闪 + WiFi 双模,内嵌 4MB 片内 Flash
从机星闪芯片海思 WS63
电流采集传感器ACS712,量程 ±20A
控制继电器单路 SRD-05VDC,3.3V 低电平触发,负载 AC 250V/10A
本地显示屏OLED 屏,SSD1306 驱动,I2C 接口
本地存储WS63E 片内 4MB Flash,循环存储 200 条监测记录
无线天线IPEX 一代 2.4G 胶棒天线

3.2 A 板:主控与传感采集

A 板以 HH-D02 开发板为载体,板载毫米波雷达,外扩 MQ135 与 SHT30。硬件按功能划分为主控、传感器采集、供电、星闪通信、调试五大单元。

MQ135 走 ADC 通道 0 上传烟雾模拟量,用 5V 供电;SHT30 走 I2C 总线双向读取温湿度,SCL=Pin16、SDA=Pin15,用 3.3V 独立供电,这样匹配两类传感器不同的电气规格。板载毫米波雷达通过内部 UART 总线输出人体感应数据。

射频部分额外采购了 IPEX-1 代转 SMA 连接线加 3dBi 2.4G 胶棒天线,装配到开发板射频底座上,改善多节点组网时的信号衰减。所有传感器统一共地布线,模拟地与数字地分开走,削弱射频电路工作时的信号干扰。

在这里插入图片描述

在这里插入图片描述

调试单元预留了 UART 串口,实时输出系统日志、传感器原始数据和通信交互报文,开发阶段的功能验证与故障排查都靠它。

3.3 B 板:网关从节点

B 板核心是 WS63 双模芯片,外围扩展 OLED 显示、WiFi 射频和电源管理三部分。

OLED 选用 0.96 英寸 SSD1306 驱动的点阵屏,I2C 接口连接,SCL=GPIO15、SDA=GPIO16,通信速率配置到 400kHz 满足刷新率要求。WiFi 用芯片内置的 2.4GHz 收发器,支持 802.11b/g/n,天线采用板载 PCB 天线并置于 PCB 边缘预留净空区域,搭配 π 型匹配电路保证辐射效率。电源部分 5V Micro USB 输入,经 AMS1117-3.3V 稳压后给芯片和外设供电,同时引出 USB-TTL 调试接口。

在这里插入图片描述

3.4 C 板:强电执行终端

C 板是这套系统里唯一接触强电的节点,围绕电流采样、继电器驱动、声光告警三类电路展开。

电流采样用的是 Allegro ACS712ELCTR-20A 线性霍尔传感器,5V 供电,零电流时静态输出 2.5V 基准电压,检测灵敏度 100mV/A,满量程输出 0.5V4.5V 对应 −20A+20A,器件线性误差 ±1.5%。这里有个必须处理的电气匹配问题:WS63 内置 ADC 参考电压只有 3.3V,传感器满幅输出会超出采集阈值。解决办法是用两路 10kΩ 精密电阻构成 1:1 分压调理电路,ADC 采集引脚接在电阻中间节点,分压后信号落在 1.25V~2.25V,完全进入 ADC 安全输入范围。主控的 12 位 ADC 采样量程 4096,量化精度 0.8mV/LSB,软件读取原始值后换算分压节点电压,乘以分压系数 2 还原传感器原始输出,做零点校准补偿后按 I = (Vout − 2.5) / 0.100 解算瞬时电流。

继电器选用 3.3V 低电平触发模块,GPIO3 作为控制引脚。导通时引脚拉低、三极管导通、线圈得电、负载回路接通;断开时引脚拉高、线圈失电、回路切断。设备上电初始化时 GPIO3 默认输出低电平,继电器维持吸合,形成"常态供电、故障主动断电"的防护策略,模块自带状态指示 LED 可直观反馈触点状态。

声光报警由 ST011 有源声光报警器承担,WS63 的 GPIO8 配合 NPN 开关三极管驱动,10cm 距离声压不低于 85dB,满足现场异常告警的辨识度要求。

在这里插入图片描述

四、软件设计

三块板的终端程序都基于 LiteOS 实时操作系统开发,A 板承担运算核心,B、C 板分别承担中转交互与现场执行,上层是 MQTT 云服务与手机 Web。

在这里插入图片描述

4.1 A 板:消息队列解耦的四模块架构

A 板软件划分为传感器采集、逻辑决策、星闪通信、历史存储四个功能单元,模块之间靠消息队列交互,分时协同运行。

传感器采集模块包含三条独立任务,全部按 100ms 固定周期循环。MQ135Task 通过 ADC 采集可燃气体浓度模拟信号,SHT30Task 通过 I2C 同步读取温度与相对湿度,radar_sample_task 驱动毫米波雷达不间断识别区域内的人体活动。三类任务采集完成后把标准化报文推入全局消息队列。用消息队列做解耦的价值在于,采集是高频的、决策是低频的,队列可以避免高频采样丢包和数据覆盖。

逻辑决策模块是 A 板的核心调度单元,每 100ms 轮询一次全局消息队列,每 3 秒完成一轮完整的告警判定。任务先解析队列内的原始传感数据、更新内部状态参数,再统计烟雾、温度、线路电流三类参数的超标数量,据此划分告警等级。程序读取系统时间区分昼夜,在夜间 20:00 至次日 8:00 区间结合雷达人体检测信号额外触发区域入侵告警。模块自带指令去重逻辑,运行状态无变化时不重复下发控制信号,单条告警持续 30 秒后自动刷新。收到 B 板转发的远程指令时,模块会开启 9 秒保护锁定周期,暂停本地自主判定,优先执行远程指令。此外模块每 3 秒向 B 板推送整合后的全量监测数据,每 30 秒把运行状态写入片内 Flash。

星闪通信模块用事件驱动调度,统一管理 A 板与 B、C 之间的两路独立 SLE 链路。上电初始化阶段依次完成协议栈初始化、周边设备扫描、链路建立与服务发现,按设备 MAC 地址区分 B、C 两块从机并分配互不干扰的通信句柄。链路建立后自动识别 C 板 0xCC01 服务对应的 0xCC02 电流读取特征与 0xCC03 指令下发特征,以及 B 板 0xBE37 服务的数据上报与远程指令读取特征,把所有通信标识缓存到对应设备的状态结构体。运行时模块每 5 秒读一次 C 板上传的线路电流,同时轮询 B 板缓存的远程控制指令;每 3 秒向 C 板下发分级告警与断电控制指令,向 B 板传输完整监测数据帧。两路连接相互独立、并行工作。

历史存储模块对 Flash 非易失存储接口做封装,每 30 秒把当前时间、烟雾浓度、环境温度、雷达人体状态、告警等级、线路电流组合成一条定长记录写入片内 Flash。存储区采用循环覆盖机制,最多保存 200 条,写满后覆盖最早的数据。设备上电启动时模块自动读取 Flash 内全部历史记录并通过串口完整打印,断电重启后监测台账不会丢。

在这里插入图片描述

4.2 B 板:本地显示 + 云中转 + WebSocket 三线并行

OLED 菜单交互采用两列五行的布局,用 Font_7x10 等宽字体把 7 个设备属性压缩在一屏内。刷新由一个无限循环控制,每 2 秒调用 oled_display_update 清屏重绘,显示数据来自全局变量,这些变量由 SLE 接收回调、MQTT 命令处理和 WebSocket 服务共同更新,模块之间不需要额外同步机制。

行号Y 坐标显示内容字段说明
第 0 行y=0Mode:arm/Rly:on系统模式 / 继电器状态
第 1 行y=12Human:YES/T:25C人体检测 / 温度值
第 2 行y=24Alm:normal告警状态
第 3 行y=36Curr:3200mA电流值
第 4 行y=48Smk:15烟雾浓度

WiFi-MQTT 云端通信分四层。WiFi STA 连接层通过 wifi_sta_enable 使能 STA 模式,wifi_sta_scan 发起异步扫描匹配预设 SSID,wifi_sta_connect 完成关联,netifapi_dhcp_start 启动 DHCP 获取 IP,整条流程由一个 8 状态有限状态机管理,失败自动重试。MQTT TLS 连接层创建 Paho MQTT 客户端,用 ssl://{endpoint}:8883 指定服务器,采用 IoT Tool 预先生成的静态凭据 ClientId、Username、Password,TLS 配置 1.2 版本,密钥交换算法 ECDHE,调试模式跳过服务器证书验证。属性上报层每隔 30 秒从全局变量读取最新数据,按 IoTDA 标准组装 JSON 发布到属性上报主题,QoS 1 并等待平台 PUBACK 确认。命令接收层订阅命令下发主题,由 hw_message_arrived 回调解析 JSON,支持静音告警、强制继电器操作等指令,执行完成后向云端回命令响应。

在这里插入图片描述

WebSocket 服务在 8080 端口由独立任务 ws_server_task 调度,采用 TCP 非阻塞监听,通过 lwip_fcntl 设置 O_NONBLOCK。新客户端接入时通过 HTTP Upgrade 握手完成协议切换,Sec-WebSocket-Accept 字段由 SHA-1 哈希加 Base64 编码生成,连接建立后客户端 socket 同样设为非阻塞,避免轮询阻塞主任务。数据传输上,B 板每 2 秒向所有在线客户端广播 JSON 格式的传感器数据,每 10ms 轮询检查各客户端是否有新指令帧,收到后执行 WebSocket Unmask 解码,解析 JSON 中的 cmd 字段并转换为 1 字节二进制指令,再用 ble_send_command 通过星闪链路发出。

在这里插入图片描述

4.3 C 板:纯执行、无自主判断

C 板主任务启动后完成全片外设初始化,配置 ADC 采集通道、GPIO 输出引脚和星闪通信协议栈,随后进入无限主循环。单次循环内先采集当前工频电流的有效值,以 200ms 周期更新 0xCC02 特征值供 A 板每 5 秒主动轮询读取;接着以非阻塞方式查询是否收到 A 板下发的控制指令,有新指令就立即解析并执行,没有则进入下一环节;同时同步更新告警状态机,驱动对应等级的蜂鸣器与继电器动作;最后延时 200 毫秒,整体保持 5Hz 的稳定刷新频率。

电流采集先完成片内 ADC 配置,绑定 ADC 通道 5 与 GPIO12 引脚。正式采集时连续读取 50 个 ADC 原始采样值,对每个采样点做分压补偿,数值乘以 2 还原传感器真实输出电压,再减去 2.5V 零点基准,除以灵敏度 0.100V/A 得到单点瞬时电流。最后对 50 组瞬时值依次做平方、取平均、开平方,计算出电流有效值,结果放大 100 倍转为整型供上层封装上报。这套滑动均方根的做法能有效抑制工频波形上的毛刺。

继电器驱动把 GPIO3 配置为推挽输出,默认输出低电平使继电器保持吸合。收到合闸或导通指令时引脚拉低、三极管导通、线圈通电、触点吸合;收到断开指令时引脚拉高、线圈失电、触点断开。控制信号同时来自多个触发源,包括 A 板远程下发的合闸断电指令,以及三级告警状态机的自动保护触发。

声光告警状态机配置 GPIO8 驱动蜂鸣器,整体告警行为由状态机驱动,随主循环每 200 毫秒更新一次。初始处于空闲状态无任何告警输出;收到一级告警指令后进入一级间歇告警,蜂鸣器按间歇节奏启停;告警升级进入二级持续告警,蜂鸣器保持持续鸣叫;继续升级进入三级告警,蜂鸣器保持节奏的同时同步触发继电器执行断电;断电后进入等待恢复阶段维持 10 秒,等待结束后自动恢复并回到空闲状态。任意告警阶段只要收到 A 板下发的告警解除指令,都会立即中断当前状态复位。

在这里插入图片描述

五、几个值得说的实现细节

5.1 单 Client 双连接并行

SLE 官方示例只提供了单连接方案。我们在应用层把单个 Client 改造成能同时维护两条独立连接:靠 MAC 地址区分 B、C 两块从机,为每台设备分配独立的句柄和状态结构体,两条链路的任务隔离、数据互不串扰。整个过程不需要改动协议栈,也不需要调 menuconfig,从机固件同样不用改,就能实现稳定的双向数据交互。实测链路建立成功率 100%,长期运行没有断连抖动。

5.2 多参数分级告警

告警等级由超标项数量决定,另外叠加了夜间入侵这一路独立逻辑。

超标项条件告警等级下发指令码C 板执行动作
0 项参数超标告警关闭0x03立即停止蜂鸣器报警
1 项参数超标一级告警0x06蜂鸣 3 秒、暂停 1 秒,循环 5 次后停止
2 项参数超标二级告警0x07持续循环蜂鸣
3 项参数同时超标三级断电告警0x08蜂鸣 2 秒后下发负载断电指令,切断供电
夜间 20:00–次日 8:00 且雷达检测到人体入侵告警0x09以 10 秒为周期持续循环蜂鸣

5.3 远程指令优先与 9 秒逻辑锁定

远程控制和本地自主判定在逻辑上是有冲突的:宿管人员刚远程合闸,本地判定可能立刻因为某个参数超标又把电断掉。为此 A 板每 5 秒轮询 B 板转发的云端指令,一旦检测到有效指令就锁定本地传感器判定逻辑 9 秒,优先执行远程操作。实测远程指令全流程转发延迟不超过 3 秒,锁定周期精准可控,形成"远程优先、本地兜底"的双模式管控。

5.4 10 字节与 11 字节双兼容数据帧

A 板上报的传感器数据帧同时兼容两种格式:10 字节无校验格式用于开发调试阶段,11 字节含累加和校验格式用于生产阶段。B 板的 ble_parse_frame 函数能自动识别帧长,兼顾开发效率和系统可靠性。

字节序号012345678910
10 字节帧0xAAModeHumanTempSmokeCurHCurLRelayAlarmResv—
11 字节帧0xAAModeHumanTempSmokeCurHCurLRelayAlarmResvChkSum

5.5 WiFi 连接的 8 状态机与全链路重连

WiFi 连接从初始化到网络就绪的完整流程由 8 状态有限状态机管控。INIT 是入口也是所有异常重试的统一回退节点;收到启动扫描指令进入 SCANNING 执行热点扫描;完成后进入 SCAN_DONE 遍历结果匹配目标 SSID;匹配到目标进入 FOUND_TARGET 并发起连接请求进入 CONNECTING 执行关联认证;关联成功进入 CONNECT_DONE 启动 DHCP 并跳转 GET_IP 等待地址分配;获取成功进入 IP_OK 标志网络就绪、状态机退出供上层 MQTT 业务使用。连接失败、DHCP 超时等异常统一回退 INIT 触发自动重试,运行中检测到断线则由外部 MQTT 主循环重新调用状态机触发全链路重连。单入口重试加分层解耦,把 WiFi 连接逻辑与上层业务独立维护。

在这里插入图片描述

六、实测结果

系统核心运行参数如下。

指标分类参数详情
组网架构A 板为 SLE 星闪 Client 主控,并行连接 B 显示终端、C 执行终端
传感器采集周期100ms 采集烟雾、温湿度、毫米波雷达、电流四路数据
告警判定周期每 3 秒执行隐患判断,支持 1-3 级分级告警、夜间入侵告警
板间数据上报A 板每 3 秒向 B 板同步全量监测数据,用于 OLED 显示、云端上传
本地存储策略每 30 秒写入 Flash 循环存储历史记录,断电数据可回溯
指令管控机制B 板指令优先级最高,下发后主控逻辑锁定 9 秒,杜绝指令冲突
告警响应时长传感器异常到触发报警,总响应 ≤3 秒

在这里插入图片描述

6.1 传感器采集

三路传感器 100ms 周期稳定运行,无错帧丢帧。A 板本地原始采集数据样例如下。

采集序号MQ135 烟雾值SHT30 温度毫米波雷达状态
140325.8℃无人
245826.2℃无人
352627.1℃有人
448226.8℃有人

人工多场景模拟测试中,设备能按超标项数精准下发对应告警指令,全程无误触发、漏触发,内置的指令去重机制也降低了通信负载。

6.2 电流采样精度

C 板以 200ms 周期采样,ADC 读数随负载电流同步线性上升,空载读数平稳无漂移,重载采样无饱和失真。空载、轻载、重载工况下的采样数据如下。

采样序号ADC 原始读数分压节点电压回路电流
114321.43V0.21A
216101.61V1.90A
322572.26V8.60A
424912.49V10.90A

采样链路的线性误差控制在 ±1.5% 以内。C 板还有一道三重校验,靠帧头、UUID、指令码过滤干扰杂包,从完整星闪数据包接收完成到 GPIO 输出控制信号,全程响应时延低于 150ms,连续长时间测试无漏执行、误触发。

6.3 断电可回溯

A 板每 30 秒写一条记录进 Flash,循环覆盖最多保留 200 条,设备断电重启后自动读取全部历史记录并通过串口打印。下表是测试期间的记录样例。

序号模拟时间烟雾数值温度雷达状态告警等级负载电流
116:0023426.7℃无人一级650mA
219:0023426.7℃无人一级650mA
322:0051026.9℃有人二级23810mA
41:0062126.8℃无人三级23760mA

表内时间为测试专用的模拟时间,程序初始模拟时间设为 22:00,为快速遍历全天工况,每 10 秒自动将模拟时间累加 1 小时,并非设备真实系统时钟。

6.4 系统资源占用

A 板基于轻量化 RTOS 做多任务分时并行调度,核心决策任务 LogicTask 栈占用仅 30%,整机内存稳定占用 109KB,长期运行无内存泄漏与栈溢出。优先级分配、消息队列解耦、分片调度这几项机制让采集、决策、通信、存储任务可以并发处理。

6.5 云端与本地双通道验证

浏览器端 WebSocket 直连测试中,B 板在 8080 端口开启服务后客户端可通过设备 IP 直接建立连接,控制台能观测到周期性推送的 JSON 传感器数据帧,包含温度、烟雾、电流、人体检测等字段。

在这里插入图片描述

B 板通过 MQTT over TLS 1.2 完成鉴权接入后,平台设备列表中对应设备状态更新为"在线",可以查看设备 ID、接入时间等信息。

在这里插入图片描述

平台属性监控界面能实时接收并展示设备上报的 7 项核心属性,包括运行模式、人体检测状态、告警等级、温度、烟雾浓度、交流电流、继电器状态,数据与本地 OLED 显示内容保持同步。

在这里插入图片描述

从手机 Web 下发指令到执行终端动作的完整链路是这样的:手机 Web 通过 WebSocket 下发 JSON 控制指令,B 板接收后解析为 1 字节二进制指令,通过星闪 0xCC05 特征的 NOTIFY 机制透传到 A 板,再由 A 板转发至 C 板,最终驱动继电器或报警装置执行。

在这里插入图片描述

6.6 硬件成果

A 板外接的 MQ135 与 SHT30 扩展采集电路全部搭建完成,GPIO 引脚按设计分配,5V 与 3.3V 独立分路供电,射频端 IPEX 转 SMA 延长线加 3dBi 天线安装到位,星闪射频匹配电路完成调试。整机未出现虚焊、短路或信号漂移故障。

在这里插入图片描述

B 板完成了 OLED 显示、WiFi 射频及电源管理全套外围电路搭建,OLED 在 400kHz 速率下调试达标,供电电压无压降,双无线通信未出现丢包或乱码。

在这里插入图片描述

C 板完成了 ACS712 采样调理、继电器驱动和 ST011 声光告警驱动三路电路的全部接线。两颗 10kΩ 精密分压电阻焊接到位,分压后信号稳定落在 ADC 安全量程内;继电器上电默认吸合维持常态供电,收到异常指令时能快速切断 AC250V 负载回路,状态 LED 同步反馈触点状态;GPIO8 控制的声光告警装置触发后声压不低于 85dB。

在这里插入图片描述

七、开发过程中踩过的坑

毫米波雷达数据解析卡顿。这是硬件调试阶段的首要难点,雷达串口数据解析经常卡顿。最后通过海思论坛咨询加串口驱动方案检索,结合硬件时序优化代码,才把雷达检测故障修掉。

SLE Notify 推送方案不稳定。星闪通信开发初期用的是 Notify 推送,实测不稳定。团队查阅 SDK 源码、分析 SLE 底层约束,多轮实测后改用主动轮询方案,与 B、C 板之间的双向传输才稳定下来。

星闪 UUID 字节序、MQTT 时间戳、mbedTLS 依赖接连踩坑。B 板开发中,SLE 的 UUID 字节序、MQTT 静态认证里时间戳的构造方式、mbedtls 加密套件的依赖关系接连带来挑战,需要反复研读 SDK 源码从协议栈层面逐一排查。

ADC 读数偏移,问题不在硬件。C 板调试时 ACS712 采样出现 ADC 读数偏移,用万用表实测分压电路电压却完全正常。最后查明是 WS63 的 GPIO 与 ADC 通道并非一一映射,对照芯片手册重新配置通道后数据恢复准确。

3.3V 引脚驱动不了继电器。主控 3.3V 引脚无法直接驱动继电器,重新采购适配的 1 路 3.3V 继电器模块才实现可靠的负载通断控制。

三节点协议不统一。三方独立开发结束后星闪联调时,暴露出指令码、帧字节序和 UUID 编码等协议细节不一致的问题,逐字节核对协议文档后才敲定统一的通信规范。

回过头看,C 板"纯执行、无自主判断"和 B 板"透明中转、不参与业务判断"这两条原则在联调阶段的价值最大,故障排查的路径非常清晰,问题几乎不会跨节点扩散。

八、可扩展方向

A 板可以优化从节点匹配逻辑提升挂载上限,适配多区域监控;基于消息队列扩展更多传感器丰富监测维度;加装语音模块做分级语音播报,替代单调的蜂鸣告警。

B 板可以给 OLED 增加多页面,通过按键切换实时数据、历史曲线、本地配置和网络诊断四类界面;WebSocket 可以增加 WSS 加密传输与指令 ACK 回执,并扩展支持 CoAP、HTTP REST 等多协议接入;还可以依托云平台 OTA 实现固件静默下载与自动重启。

C 板可以在不修改硬件架构的前提下增加采样通道,实现多回路电流监测;引入自适应零点校准算法消除温度漂移对精度的影响;灵活扩展告警状态机的等级与时序组合,适配不同场景的安全策略。

九、小结

这套三节点系统把智能决策、数据上云和电流采集执行分离到三块 WS63E 系列开发板上,星闪 SLE 星型组网保证了低延迟高可靠的板间交互,强电与弱电的物理隔离保证了电气安全。实测下来,电流检测精度、告警判定速度和远程监控稳定性都达到了设计预期。

更值得记录的是这套分工架构本身的收益:三块板职责边界清晰,A 板是主脑、B 板是网关、C 板是执行终端,单模块故障被有效隔离,联调风险和开发复杂度都显著下降。三节点功能完全解耦、判断权限集中在主控,这套思路在后续做多节点物联网项目时应该同样适用。

Logo

海思 HiSpark 开发者社区是上海海思为开发者搭建的内容和交流平台,依托完备芯片解决方案、专业开发环境、开源/开放的软件资源与社区技术内容,构建完整服务生态开发者的闭环体系。

更多推荐