7.1 KiB
7.1 KiB
细化需求 (Docs/20_requirements-detail/main.md)
本章节定义手环终端的物理按键交互、报警矩阵(可编程 RGB 灯颜色与振动)以及防区划分详细需求。
1. 物理按键与菜单交互定义
手环共配备 5 个物理按键:侧边 3 个(▲ 上移、▼ 下移、■ 确认/CONFIRM),上部 2 个(相同的 SOS1、SOS2,具备完全一致的并联电气逻辑)。
1.1 页面与状态定义
- 时钟待机状态 (STATE_CLOCK):正常显示时间、日期、电量及布撤防状态(大字版)。
- 低功耗休眠状态 (STATE_SLEEP):无按键操作 10 秒后自动进入。屏幕完全关闭,拉低
SGM_CTRL = 0关闭 SGM3833 供电,单片机进入 Power-Down 挂起状态。 - 主选择菜单 (STATE_MENU):在
STATE_CLOCK下长按 ■ 确认键 3 秒进入。单屏只显示 1 个功能,通过 ▲/▼ 键来回翻页,CONFIRM 键确认进入:1. DATE/HEURE(进入时间日期修改界面STATE_SET_TIME)2. APPAIRAGE(进入对码配对搜索界面STATE_PAIR_SEARCH)3. ARM/DISARM(进入系统布撤防手动设定界面STATE_ARM_DISARM_SELECT)4. LIAISON IPC(进入 IPC 摄像头绑定发送界面STATE_IPC_BIND)
1.2 按键动作状态机映射
| 当前状态 | ▲ 上移键动作 | ▼ 下移键动作 | ■ 确认键 (CONFIRM) 动作 | SOS1 / SOS2 按键动作 |
|---|---|---|---|---|
| 时钟待机 (STATE_CLOCK) | 无动作 | 无动作 | 长按 3 秒:进入主选择菜单 | 短按/长按:立即跳转至发送 SOS 报警 (STATE_SOS_EMITTED) |
| 低功耗休眠 (STATE_SLEEP) | 短按:唤醒并恢复至时钟待机 | 短按:唤醒并恢复至时钟待机 | 短按:唤醒并恢复至时钟待机 | 短按/长按:唤醒系统并立即触发 SOS 报警 |
| 主选择菜单 (STATE_MENU) | 短按:上一个菜单条目(切换大图标与大字) | 短按:下一个菜单条目(切换大图标与大字) | 短按:确认进入选中分支;长按 3 秒:退出菜单返回时钟 | 短按/长按:立即跳转至发送 SOS 报警 |
| 时间修改 (STATE_SET_TIME) | 短按:增加当前选中数值 | 短按:减少当前选中数值 | 短按:保存并切换到下一个修改参数;长按 3 秒:放弃修改返回时钟 | 短按/长按:立即跳转至发送 SOS 报警 |
| 对码配对 (STATE_PAIR_SEARCH) | 无动作 | 长按 2 秒:放弃对码返回主菜单 | 无动作 | 短按/长按:立即跳转至发送 SOS 报警 |
| 对码确认微调 (STATE_PAIR_CONFIRM) | 短按:自增后缀序号 (01->99) | 短按:自减后缀序号 (99->01) | 短按:确认保存配置并存入 Flash,返回时钟;长按 3 秒:放弃保存返回时钟 | 短按/长按:立即跳转至发送 SOS 报警 |
| 布撤防手动设定 (STATE_ARM_DISARM_SELECT) | 短按:切换布撤防高亮项 | 短按:切换布撤防高亮项 | 短按:保存选定状态返回时钟 | 短按/长按:立即跳转至发送 SOS 报警 |
| IPC 绑定发送 (STATE_IPC_BIND) | 无动作 | 长按 2 秒:放弃绑定返回时钟 | 短按:立刻再次发射绑定射频包;长按 3 秒:退出返回时钟 | 短按/长按:立即跳转至发送 SOS 报警 |
| 警报触发状态 (STATE_ALARMING) | 短按:解除报警并退回时钟 | 短按:解除报警并退回时钟 | 短按:解除报警并退回时钟 | 短按/长按:解除报警并退回时钟 |
| 本地主动 SOS 发送 (STATE_SOS_EMITTED) | 短按:解除 SOS 发送退回时钟 | 短按:解除 SOS 发送退回时钟 | 短按:解除 SOS 发送退回时钟 | 短按/长按:解除 SOS 发送退回时钟 |
Note
- 双 SOS 按键冗余:上部的两个 SOS 键在电路与软件上完全等价。按下其中任意一个按键,均会触发相同的 SOS 信号采集与求救动作。
- 一键报警优先级:除了在报警状态和本地 SOS 发送状态下按 SOS 键为解除报警外,在其它任意状态下,短按或长按 SOS 键均拥有最高优先级,立刻强行中止当前业务并跳转至 SOS 呼救状态。
- 对码自动类型识别与后缀选择:
- 手环在接收到 433MHz 射频对码信号时,自动根据数据码(Data Code)识别传感器类型,并直接跳转到对码微调页面。
- 在微调确认页面中,传感器类型和图标以大字只读显示,用户仅需通过 ▲/▼ 键增减微调该传感器的超大数字后缀序号(01~99)。按 CONFIRM 键即可一键保存并写入 Flash 数据库。
- 低功耗休眠与唤醒:在待机、菜单或非报警页面下,若 10秒内无任何按键操作,系统将自动关闭 OLED 屏幕、切断 SGM3833 PMIC 电源,并将 MCU 挂起进入 Power-Down 停机模式。任何按键的按下或射频信号的接收都会通过中断将 CPU 瞬间唤醒。
2. 传感器对码与报警映射矩阵
手环接收到 433MHz 传感器射频数据后,通过匹配预设数据码(高 4 位为类型)和地址码,根据下表驱动多色 LED、马达振动波形并更新 LCD 显示。为了方便视障及老年用户识别,显示均采用超大图标与闪烁红边框。
| 传感器类型 | 数据码标识 | 预设名前缀 | LED 颜色 | 默认防区类型 | 马达振动波形 (周期 5 秒) |
|---|---|---|---|---|---|
| 🚪 门磁/窗磁 | 0x01 |
PORTE |
● 红色 | ZONE 1 (普通) | 1 次短振 300ms |
| 👤 PIR 人体红外 | 0x02 |
PIR |
● 橙色 | ZONE 1 (普通) | 2 次短振 300ms (间隔 200ms) |
| 🔥 烟雾传感器 | 0x03 |
FUMEE |
● 绿色 | ZONE 0 (24h) | 3 次短振 200ms (间隔 150ms) |
| 🆘 紧急按钮 | 0x04 |
URGENCE |
● 蓝色 | ZONE 0 (24h) | 1 次长振 800ms |
| 💨 气体泄漏 | 0x05 |
GAZ |
● 紫色 | ZONE 0 (24h) | 4 次短振 200ms (间隔 100ms) |
| 💧 水浸传感器 | 0x06 |
INOND. |
● 黄色 | ZONE 0 (24h) | 2 次长振 600ms (间隔 300ms) |
| 📳 振动传感器 | 0x07 |
VIBRA. |
● 青色 | ZONE 1 (普通) | 连续3次 150ms (间隔 100ms) |
| 🚨 本地主动 SOS | 手环触发 | SOS |
● 红色闪烁 | 独立运行 | 持续长振 (振 1000ms, 停 200ms) |
Important
手环主动发射 SOS 射频数据格式: 当触发“本地主动 SOS”时,手环通过内置发射芯片以 2 秒 为周期循环发射 EV1527 协议数据:
- 源地址:手环的 20位出厂固定唯一 ID (Factory ID)。
- 数据码:固定为
0x08(即1000)。- 目的:使 IPC 摄像头能接收解码,将其与配对列表中该手环 of Factory ID 匹对,从而识别求救来源。
3. ZONE 防区划分
手环支持将配对的传感器划分至不同的防区:
- ZONE 0 (永久防区):烟雾、气体、水浸等危及安全的传感器。不论手环是否处于布防状态,一旦捕获信号即刻报警。
- ZONE 1~N (可撤布防区):门磁、红外等防盗传感器。只有当手环接收到布防广播(系统进入 ARMED)时才会报警;在撤防(DISARMED)状态下被动忽略。