工程案例_智慧电梯_伟邦科技
工程案例_智慧电梯_伟邦科技
梯控系统,电梯操纵箱,电梯外召,电梯配件,电梯节能装置,电梯五方对讲,目的层系统,电梯监控,无接触电梯,智慧电梯,电梯显示屏,机器人梯控,汽车梯控,快膳通智慧食堂,电梯物联网,电梯无线对讲系统,电梯4G对讲系统,气溶胶灭火
电梯物联网远程监控系统
电梯物联网远程监控系统
伟邦科技电梯物联网(IoT)远程监控系统方案
(适用于写字楼、住宅小区、商场、医院等多层建筑的电梯运维)
核心目标:实现对电梯关键运行参数的实时采集、云端存储、可视化监控、智能预警与远程运维,提升安全性、降低维修成本、延长设备寿命。
1️⃣ 项目背景与业务需求
| 业务需求 | 说明 |
|---|---|
| 安全监控 | 实时检测门状态、超载、异常振动、急停、火灾等安全事件并立刻报警。 |
| 运行状态 | 采集运行速度、层站位置、运行时间、能耗、故障码等。 |
| 预测维护 | 基于历史数据进行趋势分析、寿命预测、提前派单。 |
| 远程运维 | 支持 OTA 固件升级、参数调节、故障诊断。 |
| 多平台接入 | 支持 Web、移动端(iOS/Android)以及第三方系统(SCADA、BIM)集成。 |
| 安全合规 | 数据加密、身份认证、审计日志,满足《电梯安全技术规范》《信息安全等级保护》要求。 |
2️⃣ 系统总体架构
┌─────────────────────┐
│ 1. 电梯现场子系统 │
│ ─────────────────── │
│ 传感器/PLC ←→ Edge MCU │
│ (振动、温度、门、载重) │
│ (PLC/Modbus、CAN) │
│ Edge MCU (ESP‑32/STM32)│
│ 本地协议转换、缓存、 │
│ MQTT/CoAP 客户端 │
└───────│───────────────┘
│
▼ (安全隧道: TLS/DTLS + 证书)
┌─────────────────────┐
│ 2. 网络接入层 │
│ 4G/5G、NB‑IoT、LoRa │
│ 边缘网关(Linux) │
│ - MQTT Broker (EMQX)│
│ - 本地缓存/转发 │
│ - OTA 管理服务 │
└───────│───────────────┘
▼
┌─────────────────────┐
│ 3. 云平台层 │
│ - IoT Core (AWS/Azure/阿里)│
│ - 消息队列 (Kafka) │
│ - 时序数据库 (TimescaleDB/InfluxDB)│
│ - 大数据分析 (Spark/Flink)│
│ - AI 预测模型 (TensorFlow)│
│ - 业务微服务 (Spring Boot)│
│ - 统一身份认证 (OAuth2/OIDC)│
└───────│───────────────┘
▼
┌─────────────────────┐
│ 4. 应用层 │
│ - Web Dashboard (React+AntD)│
│ - 移动 App (Flutter)│
│ - 报警/短信/邮件 (Aliyun SMS)│
│ - 维修工单系统 (Flowable)│
│ - API 接口 (REST+GraphQL)│
└─────────────────────┘
关键点
- 边缘计算:在现场 MCU/网关完成协议适配、数据清洗、异常本地告警,降低网络延迟。
- 统一消息中间件:MQTT 为主,支持 QoS 1/2,关键安全事件使用 QoS 2 + retained。
- 时序数据库:存储高频传感器数据(10‑100 Hz),支持历史回放与趋势分析。
- 安全:TLS 双向认证、设备证书、最小权限原则、审计日志。
3️⃣ 硬件选型
| 功能模块 | 推荐硬件 | 关键参数 |
|---|---|---|
| 传感器 | - 振动传感器(MEMS, ±5 g, 100 Hz) - 温湿度传感器(SHT31) - 门磁开关(霍尔) - 载重传感器(称重传感器 + HX711) - 电流传感器(ACS712) | 低功耗、工业级防护(IP65) |
| 现场控制单元 | ESP‑32(Wi‑Fi+BLE) 或 STM32H7(CAN、Ethernet) | 支持 FreeRTOS、硬件加密、 OTA |
| PLC/现场总线 | 西门子 S7‑1200、三菱 FX5U(Modbus RTU / CANopen) | 与原有电梯控制系统兼容 |
| 边缘网关 | Raspberry Pi 4(Linux) 或 工业网关(Advantech, HPE Edgeline) | 支持 4G/5G、NB‑IoT、LoRaWAN 模块 |
| 通信模块 | - 4G LTE Cat‑4(SIM7600) - NB‑IoT(Quectel BC95) - LoRa(RAK811) | 根据现场网络覆盖选择 |
| 电源 | PoE(802.3af/at)或 DC 12 V/24 V 供电 | 具备 UPS 备份(30 min) |
选型建议
- 新装电梯:直接在电梯控制柜内布线,使用 CAN 与 PLC 交互,配合 ESP‑32 采集传感器。
- 改造老旧电梯:采用 非侵入式 传感器(加装在井道、轿厢),通过 无线(LoRa/NB‑IoT)回传,避免改动原有控制系统。
4️⃣ 软件层次与技术栈
| 层级 | 关键技术 | 说明 |
|---|---|---|
| 固件 | FreeRTOS + ESP‑IDF / STM32CubeMX MQTT client (paho.mqtt.embedded-c) TLS (mbedTLS) | 采集、预处理、异常本地告警、OTA |
| 边缘网关 | Linux (Ubuntu Core) Docker + Docker‑Compose EMQX (MQTT Broker) Node‑RED(快速接入) OpenVPN / WireGuard(安全隧道) | 本地缓存、协议转换、批量 OTA、网关监控 |
| 云平台 | - IoT Core:AWS IoT Core / Azure IoT Hub / 阿里云物联网平台 - 消息队列:Kafka / Pulsar - 时序库:TimescaleDB (PostgreSQL) / InfluxDB 2.x - 大数据:Spark Structured Streaming / Flink - AI:TensorFlow Serving / PyTorch - 微服务:Spring Boot (Java) / FastAPI (Python) - 身份:Keycloak (OAuth2/OIDC) | 高可用、弹性伸缩、统一管理 |
| 前端 | React + Ant Design + Recharts Grafana(时序数据可视化) Flutter(跨平台移动) | 实时仪表盘、历史曲线、告警列表、工单管理 |
| 运维 | Prometheus + Alertmanager(监控网关/云服务) ELK(日志) GitLab CI/CD(固件 OTA) | 自动化、可观测性、回滚机制 |
5️⃣ 通信协议与安全机制
| 场景 | 推荐协议 | 关键特性 |
|---|---|---|
| 现场 MCU ↔ 边缘网关 | MQTT(QoS 1/2) 或 CoAP(Confirmable) | 轻量、支持离线缓存、主题层级化 |
| 网关 ↔ 云平台 | MQTT over TLS(双向证书) 或 HTTPS/REST(JSON) | 端到端加密、身份校验 |
| OTA | MQTT + Firmware Update Service(分块签名) 或 HTTP(S) + SHA256 校验 | 防止固件篡改、回滚支持 |
| 设备身份 | X.509 证书 + PKI(每台设备唯一) | 失效即吊销(CRL/OCSP) |
| 数据加密 | TLS 1.3(推荐) AES‑256‑GCM(本地缓存) | 防止中间人、窃听 |
| 访问控制 | RBAC(Keycloak) 基于主题的 ACL(EMQX) | 最小权限、审计日志 |
安全最佳实践
- 硬件根信任:在 MCU 中植入唯一的私钥(Secure Element),不对外泄露。
- 定期轮换证书(90 天)并使用自动化脚本更新。
- 异常阈值本地硬拦截:如振动超过安全阈值,立即本地触发报警并断开网络,防止恶意指令。
- 审计日志:所有指令、固件升级、登录行为写入不可篡改的日志(云端 S3 + CloudTrail)。
6️⃣ 数据模型与存储
6.1 统一数据结构(JSON)
{
"elevator_id": "ELV-2023-001",
"timestamp": "2025-12-08T14:23:45.123Z",
"metrics": {
"door_status": "closed", // open/closed/abnormal
"load_kg": 620,
"speed_mps": 1.2,
"floor": 12,
"vibration_g": 0.32,
"temperature_c": 38.5,
"current_a": 12.4,
"fault_code": null
},
"alarms": [
{"type":"overload","level":"critical","value":620}
],
"location": {"building":"B1","zone":"East"},
"firmware_version":"v1.3.7"
}
6.2 时序库表(TimescaleDB 示例)
CREATE TABLE elevator_data (
time TIMESTAMPTZ NOT NULL,
elevator_id TEXT NOT NULL,
floor SMALLINT,
speed_mps REAL,
load_kg REAL,
vibration_g REAL,
temperature REAL,
current_a REAL,
door_status TEXT,
fault_code TEXT,
PRIMARY KEY (time, elevator_id)
);
SELECT create_hypertable('elevator_data','time');
- 压缩策略:保留最近 90 天原始数据,30 天后压缩为 1‑minute 桶,1 年后压缩为 1‑hour 桶。
- 索引:
elevator_id + time为查询主键,fault_code建立 GIN 索引用于快速告警检索。
6.3 业务库(PostgreSQL)
| 表名 | 说明 |
|---|---|
elevator | 基础信息(型号、厂家、安装日期、维护合同) |
maintenance_plan | 预防性保养计划(周期、项目) |
work_order | 维修工单(状态、派单人、处理记录) |
alarm_rule | 告警阈值配置(可动态修改) |
device_cert | 设备证书元数据(有效期、吊销状态) |
7️⃣ 实时监控、告警与预测维护
7.1 实时仪表盘(Grafana + React)
- 关键指标卡片:门状态、当前层、载重、振动、温度、功耗、故障码。
- 趋势曲线:最近 24 h 振动、温度、能耗。
- 告警列表:实时推送(WebSocket)+ 颜色标记(Critical/Warning/Info)。
- 地图/楼层平面图:电梯位置、运行状态可视化。
7.2 告警规则引擎(基于规则引擎或 Flink)
| 规则 | 触发条件 | 动作 |
|---|---|---|
| 门异常 | door_status == "abnormal" 持续 > 5 s | 发送 SMS/邮件 + 生成工单 |
| 超载 | load_kg > rated_capacity * 1.1 | 立即停机、报警 |
| 振动异常 | vibration_g > 0.5(或基于历史均值+3σ) | 发送告警、记录异常日志 |
| 温度过高 | temperature_c > 60 | 发送告警、启动冷却(如果有) |
| 功耗异常 | current_a 突然跳变 > 30% | 发送告警、排查电机故障 |
| 通信掉线 | 5 min 未收到心跳 | 发送告警、切换到备份网络 |
实现方式
- 轻量:在 Edge MCU 本地实现关键阈值告警(防止网络延迟)。
- 云端:使用 Flink/Beam 对所有流数据做窗口聚合、异常检测(基于 Z‑Score、Isolation Forest)。
- 告警分发:Alertmanager → SMS(阿里云/腾讯云) + Email + 钉钉/企业微信机器人。
7.3 预测性维护(AI/ML)
特征工程:
- 振动频谱(FFT)
- 能耗趋势(kWh/日)
- 故障码出现频率
- 运行时间累计(MTBF)
模型:
- 回归:预测剩余寿命(RUL) → XGBoost / LightGBM
- 分类:故障概率 → LSTM(时序)或 Temporal Convolutional Network
部署:
- 训练离线(SageMaker / Azure ML)
- 导出为 TensorFlow SavedModel → TensorFlow Serving
- 每小时批处理或实时推理(Kafka → TF Serving)
结果可视化:
- “健康指数”仪表盘(0‑100)
- 预测维修窗口(建议维修日期)
- 自动生成维修工单并推送给运维人员
8️⃣ 远程运维与 OTA
| 步骤 | 说明 |
|---|---|
| 固件构建 | 使用 PlatformIO / STM32CubeIDE,生成 .bin + SHA256 签名。 |
| 版本管理 | GitLab CI → Docker 镜像 → Artifact 存储(S3) |
| 发布 | 在云平台创建 Firmware Update Job,指定目标设备(topic)和分块大小(256 KB)。 |
| 下载 | 设备通过 MQTT $fw/update 主题接收 URL,使用 HTTPS 下载并校验 SHA256。 |
| 校验 | 若签名不匹配,自动回滚并上报错误。 |
| 刷写 | 使用 MCU 内置 Bootloader(双分区),写入新固件后切换分区重启。 |
| 回滚 | 若新固件启动失败(看门狗触发),自动回滚到旧分区并上报。 |
| 安全 | OTA 过程全程 TLS,固件签名使用 ECDSA‑P256,私钥保存在 HSM。 |
9️⃣ 示例代码(ESP‑32 + MQTT)
依赖:
esp-idf、paho.mqtt.embedded-c、mbedtls
/* main.c */
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_system.h"
#include "esp_wifi.h"
#include "mqtt_client.h"
#include "cJSON.h"
#include "driver/adc.h"
#include "esp_log.h"
static const char *TAG = "elevator_iot";
static esp_mqtt_client_handle_t client = NULL;
/* 读取传感器(示例:ADC 读取振动) */
static float read_vibration(void) {
int raw = adc1_get_raw(ADC1_CHANNEL_0); // 0~4095
return (float)raw / 4095 * 5.0; // 假设 0‑5V 对应 0‑5g
}
/* 生成 JSON payload */
static char *build_payload(void) {
cJSON *root = cJSON_CreateObject();
cJSON_AddStringToObject(root, "elevator_id", "ELV-2023-001");
cJSON_AddNumberToObject(root, "timestamp", (double)esp_timer_get_time() / 1e6);
cJSON *metrics = cJSON_CreateObject();
cJSON_AddNumberToObject(metrics, "vibration_g", read_vibration());
cJSON_AddNumberToObject(metrics, "temperature_c", 36.5); // 假设固定
cJSON_AddItemToObject(root, "metrics", metrics);
char *payload = cJSON_PrintUnformatted(root);
cJSON_Delete(root);
return payload;
}
/* MQTT 事件回调 */
static esp_err_t mqtt_event_handler_cb(esp_mqtt_event_handle_t event) {
switch (event->event_id) {
case MQTT_EVENT_CONNECTED:
ESP_LOGI(TAG, "MQTT connected");
break;
case MQTT_EVENT_DISCONNECTED:
ESP_LOGW(TAG, "MQTT disconnected");
break;
default:
break;
}
return ESP_OK;
}
/* 主任务:每 5 秒上报一次 */
static void telemetry_task(void *arg) {
while (1) {
char *payload = build_payload();
int msg_id = esp_mqtt_client_publish(client, "/elevator/telemetry", payload,
0, 1, 0);
ESP_LOGI(TAG, "publish msg_id=%d payload=%s", msg_id, payload);
free(payload);
vTaskDelay(pdMS_TO_TICKS(5000));
}
}
/* 初始化 Wi‑Fi、MQTT */
void app_main(void) {
// 1. 初始化 NVS、Wi‑Fi(省略)
// 2. 配置 MQTT
const esp_mqtt_client_config_t mqtt_cfg = {
.uri = "mqtts://iot.example.com:8883",
.client_id = "elevator_001",
.username = "device_user",
.password = "device_pass",
.cert_pem = (const char *)server_cert_pem_start,
.client_cert_pem = (const char *)client_cert_pem_start,
.client_key_pem = (const char *)client_key_pem_start,
.event_handle = mqtt_event_handler_cb,
.keepalive = 60,
.disable_auto_reconnect = false,
};
client = esp_mqtt_client_init(&mqtt_cfg);
esp_mqtt_client_start(client);
// 3. 启动 telemetry 任务
xTaskCreate(&telemetry_task, "telemetry_task", 4096, NULL, 5, NULL);
}
说明
- 使用 TLS 双向认证(
cert_pem、client_cert_pem、client_key_pem)。keepalive=60保持心跳,若 2 次未收到 ACK,MQTT 客户端会自动重连。- 通过
esp_mqtt_client_publish的 QoS=1 确保至少一次投递。
10️⃣ 项目实施计划(示例 6 个月)
| 阶段 | 周期 | 关键里程碑 | 产出 |
|---|---|---|---|
| 需求调研 & 可行性 | 1‑2 周 | 现场勘查、设备清单、网络覆盖评估 | 需求规格说明书、技术选型报告 |
| 原型验证 | 3‑6 周 | 传感器选型、ESP‑32 原型板、MQTT 连接、基本 Dashboard | PoC 演示(实时数据 + 报警) |
| 硬件定制 | 7‑10 周 | 现场 MCU PCB、网关(工业版)生产、EMC/防护测试 | 硬件 BOM、生产样机 |
| 固件开发 | 11‑14 周 | 传感器驱动、协议栈、 OTA、本地告警 | 固件 v1.0(CI/CD) |
| 云平台搭建 | 11‑14 周(并行) | IoT Core、时序库、微服务、身份中心 | 云端环境(Terraform 脚本) |
| 前端/移动端 | 15‑18 周 | 实时仪表盘、告警列表、工单系统 | Web UI、Flutter App |
| AI 预测模型 | 19‑22 周 | 数据标注、模型训练、上线服务 | RUL 预测 API |
| 系统集成 & 测试 | 23‑26 周 | 端到端功能、压力、渗透、安全审计 | 集成测试报告、合规文档 |
| 试点部署 | 27‑30 周 | 选取 2‑3 座大楼、现场安装、运维培训 | 现场运行日志、用户手册 |
| 正式上线 | 31‑34 周 | 全部楼宇部署、 SLA 签订、运维交接 | 交付报告、运维手册 |
| 运维 & 持续改进 | 35 周起 | 监控、BUG 修复、功能迭代 | 持续交付(CI/CD) |
人力配置(建议)
- 项目经理 1 人
- 硬件工程师 2 人
- 嵌入式软件工程师 2 人
- 云平台/后端工程师 2 人
- 前端/移动工程师 2 人
- 数据科学家 1 人
- 测试/质量保障 1 人
- 运维工程师 1 人
11️⃣ 成本估算(以 100 部电梯为例)
| 项目 | 单位成本 | 数量 | 小计(人民币) |
|---|---|---|---|
| 硬件 | |||
| ESP‑32 + 传感器套件 | 120 CNY | 100 | 12,000 |
| 边缘网关(Raspberry Pi 4 + 4G) | 350 CNY | 10(每 10 部共享) | 3,500 |
| 防护外壳、安装支架 | 80 CNY | 100 | 8,000 |
| 通信费用 | 30 CNY/部/月(NB‑IoT) | 100 × 12 月 | 36,000 |
| 云平台 | 0.10 CNY/条/千条数据(Timescale) | 约 10 M 条/年 | 1,000 |
| 开发与集成 | 300 CNY/工时 | 约 1,200 工时 | 360,000 |
| 运维 | 5 CNY/部/月(监控、OTA) | 100 × 12 月 | 6,000 |
| 合计 | ≈ 426,500 CNY |
备注
- 费用仅为参考,实际取决于网络运营商套餐、云平台选型(自建 vs 公有云)以及项目规模。
- 规模化后硬件采购成本可下降 15‑20%。
12️⃣ 参考资源与开源项目
| 类别 | 项目/文档 | 链接 |
|---|---|---|
| IoT 平台 | ThingsBoard (开源) | https://thingsboard.io |
| MQTT Broker | EMQX (企业版/社区版) | https://www.emqx.io |
| 时序数据库 | TimescaleDB | https://www.timescale.com |
| 边缘计算 | EdgeX Foundry | https://www.edgexfoundry.org |
| OTA 框架 | Mender (开源) | https://mender.io |
| 电梯标准 | GB 7588‑2019《电梯安全技术规范》 | 国家标准网 |
| 安全指南 | 《信息安全技术 网络安全等级保护基本要求》 | 中华人民共和国国家标准 |
| AI 预测 | NASA Turbofan Engine Degradation Simulation Data Set (可用于 RUL 示例) | https://ti.arc.nasa.gov/tech/dash/groups/pcoe/prognostic-data-repository/ |
- 端到端:现场传感器 → Edge MCU → 边缘网关 → 云平台 → 可视化/AI → 远程运维。
- 安全:双向 TLS、设备证书、最小权限、审计日志。
- 可靠性:本地阈值告警 + 云端流式分析 + 多链路(4G/NB‑IoT)冗余。
- 价值:提前发现故障、降低停机时间、延长设备寿命、实现运维数字化。
如果您有更具体的需求(如 只需要 Web 端展示、预算限制、特定通信网络),欢迎咨询伟邦科技,我们可以为您细化方案或提供对应的实现细节。 🚀

关键词:
上一篇
下一篇
上一篇
下一篇