第1章 RICE数据源概念与硬件埋点场景
1.1 适用场景:何时使用RICE数据源?
RICE数据源模型适用于任何需要将物理世界信号转化为结构化、可分析数据集的硬件埋点项目。当项目中同时存在多种信号类型(模拟、数字、协议、计算量)时,RICE模型能够提供统一的分类框架,消除数据定义阶段的概念混乱。
1.2 前置条件:启动RICE分类前的准备工作
在对硬件埋点数据源进行RICE分类前,需要完成以下准备:
- 硬件设备清单与传感器数据手册(Datasheet)。
- 数据采集板卡或边缘计算网关的接口定义文档。
- 稳定的供电与通信链路验证报告。
- 项目数据字典与命名规范草案。
1.3 操作步骤:RICE数据源分类四步法
按照以下四个步骤,将原始硬件数据源归类为R、I、C、E四种类型:
| 步骤 | 操作内容 | 输出物 |
|---|---|---|
| 1 | 识别原始物理信号(电压、电流、频率、寄存器地址等) | Raw Input 列表 |
| 2 | 定义由硬件状态改变触发的事件(如按键按下、门禁触发、看门狗超时) | Captured Event 列表 |
| 3 | 封装经过软件计算或滤波推导得出的衍生量(如平均温度、累计流量、FFT频谱) | Computed Metric 列表 |
| 4 | 标注来自第三方系统或非直接采集的数据源(如天气API、人工补录值) | External Source 列表 |
1.4 输入输出物:概念映射与交付
RICE数据源概念的输入是原始硬件设计文档与传感器数据手册,输出是结构化的RICE数据源映射表。该映射表是后续开发数据采集固件和搭建数据管道的基础契约。
输出物示例:RICE数据源清单(YAML配置节选)
data_sources:
- id: "DS_TEMP_001"
name: "temperature_sensor_analog"
type: "RawInput"
interface: "ADC1_CH3"
unit: "mV"
description: "PT100 铂电阻原始电压信号"
- id: "DS_DOOR_001"
name: "door_trigger_event"
type: "CapturedEvent"
trigger: "GPIO_18_FALLING_EDGE"
description: "门禁磁簧开关触发中断事件"
- id: "DS_AVG_TEMP_001"
name: "avg_temperature_1min"
type: "ComputedMetric"
formula: "mean(DS_TEMP_001, 60000ms)"
description: "每60秒滑动平均温度"
- id: "DS_WEATHER_001"
name: "weather_external_temp"
type: "ExternalSource"
source: "OpenWeatherMap API"
description: "第三方气象服务补入数据"
下图展示了从物理信号输入到RICE分类再到结构化数据源输出的完整映射流程:
1.5 责任边界:谁来做?
RICE分类工作必须由跨职能团队协作完成,明确每类数据源的责任人,防止后期数据争议:
| 角色 | 核心职责 |
|---|---|
| 硬件工程师 | 提供传感器Datasheet,确认信号类型(模拟/数字/开关量),标注Raw Input和Captured Event的物理接口。 |
| 嵌入式工程师 | 负责Captured Event的固件触发逻辑(中断/轮询),上报Computed Metric的原始计算值至缓冲区。 |
| 数据科学家/工程师 | 定义Computed Metric的计算窗口与算法,管理External Source的数据导入与清洗规则。 |
| 项目经理 / 系统架构师 | 审核RICE数据源清单的完整性,确保分类边界清晰,协调跨部门仲裁。 |
1.6 记录材料:RICE数据源清单模板
建议使用如下标准化模板记录每一个数据源,该清单将作为项目核心资产存档:
| 数据源ID | 数据源名称 | RICE类型 | 采集硬件 | 信号/事件/计算逻辑 | 数据格式 | 备注 |
|---|---|---|---|---|---|---|
| DS001 | 电流传感器 | RawInput | ADC模块 | 模拟信号4-20mA | uint16 | 量程0-50A |
| DS002 | 急停按钮 | CapturedEvent | GPIO_23 | 下降沿中断 | bool | 需20ms去抖 |
| DS003 | 平均功率 | ComputedMetric | 边缘计算单元 | 滑动窗口1分钟 | float32 | 基准频率50Hz |
1.7 异常处理:分类边界不清晰
场景复现: 当同一个数据源既可以被视为Raw Input又可以被视为Computed Metric时(例如,经过边缘计算滤波后输出的电压值),优先将其归类为Computed Metric,并在备注字段注明原始Raw Input的来源ID。严禁出现同一个数据源同时归属于两个RICE类别的混乱情况。
常见异常处理方案对照:
- 信号毛刺: 在硬件端或固件端增加滤波逻辑,滤波后的信号归类为Computed Metric。
- 数据源重叠: 如果同一物理量被多个冗余传感器采集,应创建多个RICE数据源ID(如DS_TEMP_A, DS_TEMP_B)。
- 事件丢失: 检查Captured Event的触发阈值与锁存时间,必要时由硬件工程师调整电路参数。
- 外部数据不可用: External Source应有健康检查机制,若API不可用,应使用默认值或标记为无效数据。
1.8 验收标准:RICE分类准确性
完成RICE数据源分类后,需满足以下标准方可进入下一阶段的“硬件采集固件开发”流程:
- 完整性: 所有硬件物理采集点(包括冗余备份)均已映射到对应的RICE类型,无遗漏。
- 准确性: 由架构师组织评审会,随机抽查20%的数据源,分类错误率必须为0。
- 规范性: 所有数据源ID和名称严格遵循项目数据字典中的命名规范(snake_case + 数字序号)。
- 可追溯性: 每个RICE数据源均可追溯到具体的硬件接口引脚或传感器型号,禁止出现无源数据。