LoRa 远程新冠患者监护系统:The Things Network + AWS IoT 云端多维可视化
系统架构概览
针对新冠患者隔离监护需求,设计基于 LoRaWAN 的低功耗远程监护系统:可穿戴端采集心率、血氧、体温、环境温湿度气压、跌倒/运动状态、SOS 按钮;The Things Uno (LoRa 节点) 经 The Things Gateway 网关上传至 The Things Network (TTN) → AWS IoT Core;云端规则引擎转发至 Lambda/时序数据库,驱动医生/护士端 Android App 与医院管理端 Web 仪表盘实时可视化,阈值越界自动推送告警。
硬件节点(患者端)
| 模块 | 型号 | 功能 | 接口 |
|---|---|---|---|
| 主控 | The Things Uno (ATmega32U4 + RN2483) | LoRaWAN 节点,Arduino 兼容 | USB/电池供电 |
| 心率/血氧 | MAXREFDES117# (MAX30101 + MAX32664) | PPG 采集 HR/SpO2 | I2C |
| 体温 | Grove Temperature Sensor (NTC) | 皮肤表温 | 模拟 A0 |
| 环境温湿压气 | Grove BME680 | 环境监测 + VOC | I2C |
| 跌倒/运动 | Grove Vibration SW-420 | 大幅度运动/跌倒触发 | 数字 D8 |
| SOS 按钮 | DFRobot Gravity Digital Push Button | 患者主动求助 | 数字 D6 |
| 本地提示 | Buzzer + LED | 设备端状态指示 | D7, D5 |
网关与云端
- The Things Gateway:8 信道 LoRaWAN 网关,以太网回传,注册至 TTN 控制台。
- TTN Application:配置 Payload Format(Cayenne LPP 或自定义 JSON),设置 Webhook → AWS IoT Core HTTPS 端点。
- AWS IoT Core:Thing/证书/策略,规则引擎 `SELECT * FROM 'patient/+/data' WHERE ...` 转发至 Kinesis Data Firehose → Timestream / S3;另配置 SNS Topic 推送告警至手机/邮件。
- 可视化:Android App (Android Studio) 直连 AWS IoT MQTT over WebSocket 实时图表;Web 端用 Grafana/QuickSight 接 Timestream 多患者仪表盘。
应急判定算法(节点端预判 + 云端复核)
节点端每 20 秒打包上传一次,Payload 结构(6 字节示例,实际建议用 Cayenne LPP):
// 节点端伪代码
struct Payload {
uint16_t bpm; // 心率
int16_t temp; // 体温 ×100 (定点数)
uint16_t spo2; // 血氧 %
uint8_t humidity; // 环境湿度 %
uint8_t movement; // 0/1 震动触发
uint8_t sos; // 0/1 按钮按下
uint16_t h_rate; // 备用心率原始值
};
云端告警规则(示例):
- HR < 50 或 HR > 130 → 紧急
- SpO2 < 92% → 紧急
- Body Temp > 39.0°C → 预警
- Movement=1 且持续 > 30s 无恢复 → 疑似跌倒
- SOS=1 → 最高级报警
原文给出数学公式(Equation-I)与阈值表(Table-1),此处简化为工程常用阈值。
关键代码片段(节点端 Arduino)
#include
#include
#include
const char *appEui = "0000000000000000";
const char *appKey = "00000000000000000000000000000000";
#define freqPlan TTN_FP_EU868 // 或 TTN_FP_US915
TheThingsNetwork ttn(Serial1, Serial, freqPlan);
PulseOximeter pox;
Adafruit_BME280 bme;
uint32_t tsLast = 0;
const uint32_t REPORT_MS = 1000; // 传感器采样周期
const uint32_t TX_MS = 20000; // LoRa 上传周期
void onBeat() { /* 可驱动本地 LED 闪烁 */ }
void setup() {
Serial1.begin(57600); // RN2483
Serial.begin(9600);
ttn.join(appEui, appKey);
pox.begin();
pox.setOnBeatDetectedCallback(onBeat);
pox.setIRLedCurrent(MAX30100_LED_CURR_40MA);
bme.begin(0x76);
pinMode(8, INPUT); // vibration
pinMode(6, INPUT); // SOS button
pinMode(7, OUTPUT); // buzzer
pinMode(5, OUTPUT); // LED
}
void loop() {
pox.update();
if (millis() - tsLast >= REPORT_MS) {
tsLast = millis();
// 读取传感器
int bpm = pox.getHeartRate();
int spo2 = pox.getSpO2();
float temp = pox.getTemperature(); // MAX30100 内部温度
float hum = bme.readHumidity();
int move = digitalRead(8);
int sos = digitalRead(6);
// 组包(简化为 7 字节,实际应用 Cayenne LPP)
byte payload[7];
payload[0] = highByte(bpm);
payload[1] = lowByte(bpm);
payload[2] = (int16_t)(temp * 100) >> 8;
payload[3] = (int16_t)(temp * 100) & 0xFF;
payload[4] = spo2;
payload[5] = move;
payload[6] = sos;
ttn.sendBytes(payload, sizeof(payload));
}
}
Android App 关键功能
- MQTT over WebSocket 订阅 `patient/{devEUI}/data`
- 实时仪表盘:心率/血氧/体温仪表盘、环境趋势图、跌倒/SOS 事件时间轴
- 推送通知:Firebase Cloud Messaging (FCM) 接收 AWS SNS 转发的告警
- 权限分级:医生/护士看全量,家属仅看摘要与告警
部署与运维要点
- LoRaWAN 覆盖:病房/隔离区需现场测绘 RSSI/SNR,必要时增设网关。
- 电池续航:The Things Uno + 传感器约 150mA 平均,2500mAh 18650 可撑 16h+,建议加装太阳能充电板或定时换电池。
- 数据合规:患者健康数据属敏感个人信息,AWS 启用加密传输/存储,配置 IAM 最小权限,遵循 HIPAA/GDPR/《个人信息保护法》。
- 固件升级 (FUOTA):TTN 支持 LoRaWAN 远程固件升级,后续优化算法可无线推送。
总结与展望
本系统验证了 LoRaWAN 在医疗监护中的低功耗、广覆盖、低成本优势。后续可演进为:
- 可穿戴腕表/贴片形态(集成 BLE 近端配置)
- 边缘 AI 推理(TinyML 识别心律失常、呼吸模式)
- 多模态融合:加入呼吸率、咳嗽声检测、血压估算
- 平台化:多租户 SaaS,支持养老院、居家护理、大型活动医疗保障等场景
参考文献
Uddin, M. S., Alam, J. B., & Banu, S. (2017). Real time patient monitoring system based on internet of things. ICAEE 2017, 516-521. DOI: 10.1109/ICAEE.2017.8255410
制造工艺
- 基于 AT89S52 单片机与 LM35 传感器的温控系统设计
- Eclipse Hono发布基于MongoDB的设备注册表:可扩展、生产就绪
- 掌握基于账户营销 (ABM) 的 5 个关键步骤
- 医疗器械开发成功的关键考量:市场、工艺、法规与测试全链路指南
- 医疗器械技术进展追踪:传感器、连接与低功耗 SoC 推动市场增长
- 统一COVID-19检测:单一流程同时检测、追踪变异及合并感染
- 便携唾液检测1小时出结果,PCR级精度检测COVID-19
- 掌控 IoT 管理:克服 2024 年连接与带宽挑战
- Eclipse Hono 中基于 X.509 证书的设备安全认证实战
- 监控物联网:确保 IoT 网络安全可靠
- 为何规模驱动 NB-IoT 与 LoRa 网络盈利
- 蜂窝连接驱动远程医疗未来:从穿戴到双向交互