Initial commit of akmon project
This commit is contained in:
314
doc_ble/SENSOR_SYSTEM_DOCUMENTATION.md
Normal file
314
doc_ble/SENSOR_SYSTEM_DOCUMENTATION.md
Normal file
@@ -0,0 +1,314 @@
|
||||
# 智能传感器数据采集与分析系统
|
||||
|
||||
## 概述
|
||||
|
||||
这是一套完整的高性能、可扩展的运动传感设备数据采集与分析系统,采用 UTS uni-app-x 技术栈开发,严格遵循 Android 最严格模式规范。系统支持多种生命体征数据的实时采集、存储、分析和可视化。
|
||||
|
||||
## 技术架构
|
||||
|
||||
### 前端技术栈
|
||||
- **框架**: UTS uni-app-x
|
||||
- **语言**: TypeScript (UTS)
|
||||
- **UI框架**: uni-app-x 原生组件
|
||||
- **数据请求**: AkSupa 链式请求库
|
||||
- **实时通信**: Supabase Realtime
|
||||
- **图表组件**: ak-charts
|
||||
|
||||
### 后端技术栈
|
||||
- **数据库**: PostgreSQL + TimescaleDB
|
||||
- **实时服务**: Supabase
|
||||
- **AI分析**: RPC 函数
|
||||
- **数据存储**: 时序数据库优化
|
||||
|
||||
## 功能模块
|
||||
|
||||
### 1. 主要页面结构
|
||||
```
|
||||
pages/sense/
|
||||
├── nav.uvue # 导航入口页面
|
||||
├── index.uvue # 实时监控主页
|
||||
├── detail.uvue # 数据详情页面
|
||||
├── analysis.uvue # 数据分析页面
|
||||
├── devices.uvue # 设备管理页面
|
||||
├── settings.uvue # 传感器设置页面
|
||||
├── simulator.uvue # 数据模拟器页面
|
||||
└── types.uts # 类型定义文件
|
||||
```
|
||||
|
||||
### 2. 支持的传感器类型
|
||||
- **心率监测**: 心率、RR间期、心率变异性
|
||||
- **步数统计**: 步数、距离、卡路里
|
||||
- **血氧检测**: 血氧饱和度、灌注指数
|
||||
- **血压测量**: 收缩压、舒张压、脉压、平均动脉压
|
||||
- **体温监测**: 体温、环境温度
|
||||
- **步幅分析**: 步幅长度、步频、着地时间
|
||||
- **位置定位**: GPS坐标、海拔、速度
|
||||
- **心电图**: 原始信号、心律类型、各项间期
|
||||
|
||||
### 3. 核心功能
|
||||
|
||||
#### 实时数据监控 (index.uvue)
|
||||
- 设备状态显示
|
||||
- 实时指标卡片
|
||||
- 多类型数据趋势图表
|
||||
- 历史记录列表
|
||||
- AI分析结果弹窗
|
||||
- Supabase Realtime 订阅
|
||||
|
||||
#### 数据分析 (analysis.uvue)
|
||||
- 时间范围选择 (24h/7d/30d/90d)
|
||||
- 健康评分计算
|
||||
- 指标趋势分析
|
||||
- 异常检测与警报
|
||||
- AI智能分析报告
|
||||
- 数据对比功能
|
||||
|
||||
#### 设备管理 (devices.uvue)
|
||||
- 蓝牙设备扫描
|
||||
- 设备绑定/解绑
|
||||
- 设备配置管理
|
||||
- 采样频率设置
|
||||
- 上传间隔配置
|
||||
- 自动同步开关
|
||||
|
||||
#### 传感器设置 (settings.uvue)
|
||||
- 通用设置开关
|
||||
- 采集频率配置
|
||||
- 异常阈值设置
|
||||
- 通知配置
|
||||
- 数据管理选项
|
||||
- 隐私设置
|
||||
- 设备校准功能
|
||||
- 数据导出选项
|
||||
|
||||
#### 数据模拟器 (simulator.uvue)
|
||||
- 实时数据模拟
|
||||
- 传感器配置面板
|
||||
- 批量数据生成
|
||||
- 统计信息显示
|
||||
- 数据预览功能
|
||||
|
||||
## 数据库设计
|
||||
|
||||
### 主要数据表
|
||||
|
||||
#### ss_sensor_measurements (通用测量表)
|
||||
```sql
|
||||
CREATE TABLE ss_sensor_measurements (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
device_id UUID REFERENCES ak_devices(id),
|
||||
user_id UUID REFERENCES ak_users(id),
|
||||
measurement_type VARCHAR(50) NOT NULL,
|
||||
measured_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
unit VARCHAR(20),
|
||||
raw_data JSONB NOT NULL,
|
||||
quality_score INTEGER DEFAULT 100,
|
||||
created_at TIMESTAMPTZ DEFAULT NOW()
|
||||
);
|
||||
```
|
||||
|
||||
#### 专项数据表
|
||||
- `ss_heart_rate_data` - 心率专项数据
|
||||
- `ss_steps_data` - 步数专项数据
|
||||
- `ss_spo2_data` - 血氧专项数据
|
||||
- `ss_blood_pressure_data` - 血压专项数据
|
||||
- `ss_temperature_data` - 体温专项数据
|
||||
- `ss_stride_data` - 步幅专项数据
|
||||
- `ss_location_data` - 位置专项数据
|
||||
- `ss_ecg_data` - 心电图专项数据
|
||||
|
||||
### 索引优化
|
||||
- 时间序列索引 (measured_at)
|
||||
- 设备+用户组合索引
|
||||
- 测量类型索引
|
||||
- JSONB 字段 GIN 索引
|
||||
|
||||
## 前端技术特点
|
||||
|
||||
### 1. 严格的 UTS 类型系统
|
||||
```typescript
|
||||
export type SensorMeasurement = {
|
||||
id: string;
|
||||
device_id: string;
|
||||
user_id: string;
|
||||
measurement_type: string;
|
||||
measured_at: string;
|
||||
unit: string;
|
||||
raw_data: UTSJSONObject;
|
||||
created_at: string;
|
||||
}
|
||||
```
|
||||
|
||||
### 2. 链式数据请求
|
||||
```typescript
|
||||
const result = await supa.from('ss_sensor_measurements')
|
||||
.eq('device_id', deviceId)
|
||||
.eq('user_id', userId)
|
||||
.order('measured_at', { ascending: false })
|
||||
.limit(50)
|
||||
.execute()
|
||||
```
|
||||
|
||||
### 3. 实时数据订阅
|
||||
```typescript
|
||||
realtimeSubscription = supa.from('ss_sensor_measurements')
|
||||
.on('INSERT', (payload: UTSJSONObject) => {
|
||||
// 处理实时数据更新
|
||||
})
|
||||
.subscribe()
|
||||
```
|
||||
|
||||
### 4. 响应式设计
|
||||
- 大屏/小屏自适应
|
||||
- 动态字体缩放
|
||||
- 触摸友好的交互
|
||||
- 无障碍支持
|
||||
|
||||
## 性能优化
|
||||
|
||||
### 1. 数据库层面
|
||||
- 时序数据库优化
|
||||
- 分区表设计
|
||||
- 索引优化
|
||||
- 连接池管理
|
||||
|
||||
### 2. 前端层面
|
||||
- 懒加载机制
|
||||
- 虚拟滚动
|
||||
- 数据缓存
|
||||
- 防抖节流
|
||||
|
||||
### 3. 实时通信
|
||||
- WebSocket 连接复用
|
||||
- 数据压缩
|
||||
- 断线重连
|
||||
- 消息队列
|
||||
|
||||
## 安全考虑
|
||||
|
||||
### 1. 数据安全
|
||||
- 端到端加密
|
||||
- 本地数据加密存储
|
||||
- 传输层 TLS 加密
|
||||
- 敏感数据脱敏
|
||||
|
||||
### 2. 访问控制
|
||||
- 用户身份验证
|
||||
- 设备绑定验证
|
||||
- 数据权限控制
|
||||
- API 频率限制
|
||||
|
||||
### 3. 隐私保护
|
||||
- 数据最小化原则
|
||||
- 用户同意机制
|
||||
- 数据匿名化
|
||||
- 右to被遗忘
|
||||
|
||||
## 部署说明
|
||||
|
||||
### 1. 数据库部署
|
||||
```bash
|
||||
# 安装 PostgreSQL 和 TimescaleDB
|
||||
# 运行数据库脚本
|
||||
psql -f doc_ble/ss_sensor_data_schema.sql
|
||||
psql -f doc_ble/ss_generate_mock_data.sql
|
||||
```
|
||||
|
||||
### 2. 后端服务
|
||||
- 配置 Supabase 项目
|
||||
- 部署 RPC 函数
|
||||
- 设置实时订阅规则
|
||||
- 配置数据库连接
|
||||
|
||||
### 3. 前端应用
|
||||
```bash
|
||||
# 安装依赖
|
||||
npm install
|
||||
|
||||
# 编译运行
|
||||
npm run dev:app-android
|
||||
```
|
||||
|
||||
## 扩展性设计
|
||||
|
||||
### 1. 模块化架构
|
||||
- 独立的传感器模块
|
||||
- 可插拔的分析引擎
|
||||
- 标准化的数据接口
|
||||
- 微服务架构支持
|
||||
|
||||
### 2. 多租户支持
|
||||
- 租户级别的数据隔离
|
||||
- 个性化配置
|
||||
- 资源配额管理
|
||||
- 计费系统集成
|
||||
|
||||
### 3. 国际化支持
|
||||
- 多语言界面
|
||||
- 地区化数据格式
|
||||
- 时区处理
|
||||
- 文化适配
|
||||
|
||||
## 监控与维护
|
||||
|
||||
### 1. 系统监控
|
||||
- 数据采集状态监控
|
||||
- 性能指标监控
|
||||
- 错误日志收集
|
||||
- 用户行为分析
|
||||
|
||||
### 2. 数据质量
|
||||
- 数据完整性检查
|
||||
- 异常值检测
|
||||
- 数据一致性验证
|
||||
- 质量评分系统
|
||||
|
||||
### 3. 备份恢复
|
||||
- 自动数据备份
|
||||
- 增量备份策略
|
||||
- 灾难恢复计划
|
||||
- 数据迁移工具
|
||||
|
||||
## 使用指南
|
||||
|
||||
### 1. 开发者
|
||||
- 参考 types.uts 了解数据结构
|
||||
- 使用 AkSupa 进行数据操作
|
||||
- 遵循 UTS 严格模式规范
|
||||
- 实现响应式设计
|
||||
|
||||
### 2. 用户
|
||||
- 从导航页面 (nav.uvue) 开始
|
||||
- 绑定传感器设备
|
||||
- 配置采集参数
|
||||
- 查看实时数据和分析报告
|
||||
|
||||
### 3. 管理员
|
||||
- 监控系统运行状态
|
||||
- 管理用户和设备
|
||||
- 配置系统参数
|
||||
- 维护数据质量
|
||||
|
||||
## 后续规划
|
||||
|
||||
### 1. 功能增强
|
||||
- 更多传感器类型支持
|
||||
- 高级AI分析算法
|
||||
- 社交功能集成
|
||||
- 健康建议系统
|
||||
|
||||
### 2. 技术升级
|
||||
- 边缘计算支持
|
||||
- 机器学习模型部署
|
||||
- 区块链数据验证
|
||||
- 5G 网络优化
|
||||
|
||||
### 3. 生态建设
|
||||
- 第三方设备接入
|
||||
- 开放API平台
|
||||
- 开发者社区
|
||||
- 商业化模式
|
||||
|
||||
---
|
||||
|
||||
本系统为高性能、企业级的传感器数据管理平台,具备完整的功能模块和良好的扩展性,可以满足各种规模的部署需求。
|
||||
Reference in New Issue
Block a user