Skip to content

硬件控制系统

涉及子系统:工控机(执行)、云端 API(指令路由)、管理后台(操作界面)
核心业务:提供对灯光、设备等非门禁硬件的远程监控与控制能力


系统概述

硬件控制系统是除 AB 门之外所有可控硬件的统一管理层,主要包括灯光控制、UPS 监控,以及未来可能扩展的其他设备。管理员可通过管理后台远程操作,工控机负责本地执行。


可控硬件清单

硬件控制方式当前状态
健身区灯光工控机 GPIO + 继电器规划中
隔离间灯光工控机 GPIO + 继电器规划中
前台/入口灯光工控机 GPIO + 继电器规划中
UPS 电源串口/RS485 读取状态仅监控,不主动控制
淋浴热水阀见淋浴系统文档硬件方案待定

灯光控制

控制模式

模式说明
手动模式管理员通过管理后台手动开关
定时模式工控机按预设时间表自动控制(如每天 6:00 开灯,23:00 关灯)
联动模式根据门禁状态自动联动(如有人进入时开灯,无人时延时关灯)

灯光分区

建议将灯光按区域分组,支持分区控制:

分区说明
zone_entrance入口/隔离间区域
zone_main健身区主区域
zone_locker更衣室区域
zone_shower淋浴区域

远程控制指令(MQTT)

灯光控制指令

json
// 云端 → 工控机
{
  "action": "light_control",
  "zone": "zone_main",
  "state": "on",           // on / off
  "brightness": 100,       // 可选,0-100(如支持调光)
  "operator": "admin@example.com"
}

定时任务配置

定时任务配置存储在云端,工控机启动时拉取,变更时通过 MQTT 推送更新:

json
{
  "schedules": [
    {
      "zone": "zone_main",
      "action": "on",
      "time": "06:00",
      "days": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"]
    },
    {
      "zone": "zone_main",
      "action": "off",
      "time": "23:00",
      "days": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"]
    }
  ]
}

UPS 监控

工控机通过串口/RS485 读取 UPS 状态,定期上报至云端。

监控指标

指标告警阈值处理方式
电池电量< 20%发送告警通知到管理后台
市电状态市电断电立即告警,记录断电时间
输出电压异常范围发送告警
UPS 温度过高发送告警

上报格式

json
{
  "event": "ups_status",
  "batteryLevel": 85,
  "mainsPower": true,       // true=市电正常,false=断电
  "outputVoltage": 220,
  "temperature": 35,
  "timestamp": "2026-03-11T10:00:00Z"
}

设备心跳与在线状态

工控机每 30 秒向云端发送心跳包:

json
{
  "event": "heartbeat",
  "storeId": "store_001",
  "deviceId": "device_001",
  "uptime": 86400,
  "timestamp": "2026-03-11T10:00:00Z"
}

云端超过 90 秒未收到心跳,标记设备为离线,触发告警通知。


管理后台功能

硬件控制面板

  • 所有门店工控机在线/离线状态一览
  • 灯光状态展示(各分区当前开关状态)
  • 灯光手动控制按钮(需角色权限)
  • 定时任务配置界面
  • UPS 状态展示(电量、市电状态)

告警中心

  • 未处理告警列表(按严重程度排序)
  • 告警详情与处理记录
  • 告警通知配置(接收人、通知方式)

待确认事项

  • [ ] 灯光是否需要调光功能(还是仅开关控制)
  • [ ] 灯光分区的最终规划(根据实际门店户型确定)
  • [ ] UPS 型号与通信协议(不同 UPS 品牌协议不同)
  • [ ] 告警通知方式(短信 / 微信服务号 / 飞书机器人)
  • [ ] 是否需要联动模式(有人进入自动开灯)

健身房服务系统内部规划文档