删除 data_formats_explanation.md

This commit is contained in:
2026-02-28 07:31:12 +00:00
parent 19d344008f
commit ee1da7b574

View File

@@ -1,92 +0,0 @@
# 数据格式说明
## 1. 雷达数据格式 (HBR01)
### 格式特征
-`HBR01:` 开头
- 后跟8个用逗号分隔的数值字段
- 每行一条数据记录
### 数据字段说明
```
HBR01:presence,heart_rate,breath_rate,motion,rssi,heartbeat_waveform,breathing_waveform,raw_signal
```
### 字段含义
1. `presence` - 人员存在状态 (0=无人, 1=有人)
2. `heart_rate` - 心率 (bpm)
3. `breath_rate` - 呼吸率 (bpm)
4. `motion` - 运动状态 (0=静止, 1=运动)
5. `rssi` - 信号强度
6. `heartbeat_waveform` - 心跳波形数据
7. `breathing_waveform` - 呼吸波形数据
8. `raw_signal` - 原始信号数据
### 示例数据
```
HBR01:1,72,16,0,-45,120,45,-25
HBR01:0,0,0,0,-50,0,0,10
```
### 处理方式
在ESP32代码中通过 `parseSensorLine()` 函数处理,按行读取并解析逗号分隔的数值。
## 2. JSON数据格式
### 格式特征
- 以花括号 `{` 开始,`}` 结束
- 符合标准JSON格式
- 可能因长度超过BLE MTU而需要分包传输
### 示例数据
```json
{
"type": "radarData",
"deviceId": 1001,
"timestamp": 1640995200000,
"presence": 1,
"heartRate": 72.5,
"breathRate": 16.2,
"motion": 0,
"rssi": -45,
"heartbeatWaveform": 120,
"breathingWaveform": 45,
"rawSignal": -25
}
```
### 分包传输特点
- 每包最大20字节BLE限制
- 需要通过匹配花括号来重组完整JSON
- 可能出现一个完整JSON被分成多个BLE包的情况
### 接收处理方式
使用JavaScript代码中的 `processChunk()` 函数处理:
1. 将接收到的数据片段追加到缓冲区
2. 通过计数花括号来识别完整的JSON对象
3. 提取完整JSON并解析
4. 清理缓冲区中已处理的部分
## 3. 两种格式的主要区别
| 特性 | 雷达数据 (HBR01) | JSON数据 |
|------|------------------|----------|
| 格式标识 | HBR01:开头 | 花括号{}包围 |
| 数据结构 | 固定8个数值字段 | 灵活的键值对 |
| 分隔符 | 逗号分隔 | JSON标准格式 |
| 分包处理 | 按行处理 | 按花括号匹配 |
| 解析方式 | 数值转换 | JSON解析 |
## 4. 处理建议
### 雷达数据处理
- 按行读取处理
- 验证以"HBR01:"开头
- 按逗号分割提取8个字段
- 进行数值有效性检查
### JSON数据处理
- 使用缓冲区累积数据
- 通过花括号匹配识别完整对象
- 使用JSON解析库处理
- 注意缓冲区大小限制和清理