Files
akmon/doc_ble/SENSOR_SYSTEM_DOCUMENTATION.md
2026-01-20 08:04:15 +08:00

6.9 KiB

智能传感器数据采集与分析系统

概述

这是一套完整的高性能、可扩展的运动传感设备数据采集与分析系统,采用 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 (通用测量表)

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 类型系统

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. 链式数据请求

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. 实时数据订阅

realtimeSubscription = supa.from('ss_sensor_measurements')
    .on('INSERT', (payload: UTSJSONObject) => {
        // 处理实时数据更新
    })
    .subscribe()

4. 响应式设计

  • 大屏/小屏自适应
  • 动态字体缩放
  • 触摸友好的交互
  • 无障碍支持

性能优化

1. 数据库层面

  • 时序数据库优化
  • 分区表设计
  • 索引优化
  • 连接池管理

2. 前端层面

  • 懒加载机制
  • 虚拟滚动
  • 数据缓存
  • 防抖节流

3. 实时通信

  • WebSocket 连接复用
  • 数据压缩
  • 断线重连
  • 消息队列

安全考虑

1. 数据安全

  • 端到端加密
  • 本地数据加密存储
  • 传输层 TLS 加密
  • 敏感数据脱敏

2. 访问控制

  • 用户身份验证
  • 设备绑定验证
  • 数据权限控制
  • API 频率限制

3. 隐私保护

  • 数据最小化原则
  • 用户同意机制
  • 数据匿名化
  • 右to被遗忘

部署说明

1. 数据库部署

# 安装 PostgreSQL 和 TimescaleDB
# 运行数据库脚本
psql -f doc_ble/ss_sensor_data_schema.sql
psql -f doc_ble/ss_generate_mock_data.sql

2. 后端服务

  • 配置 Supabase 项目
  • 部署 RPC 函数
  • 设置实时订阅规则
  • 配置数据库连接

3. 前端应用

# 安装依赖
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平台
  • 开发者社区
  • 商业化模式

本系统为高性能、企业级的传感器数据管理平台,具备完整的功能模块和良好的扩展性,可以满足各种规模的部署需求。