9.5 KiB
Feature Engineering Specification
Data Quality & Calibration Features
Feature Group ID: FG-DQC
Scope: Sensor Hub (Sub-Hub only)
Target Platform: ESP32-S3–based Sensor Hub
Applies To: Indoor poultry farm sensor hubs
Dependencies: Sensor Data Acquisition Features (FG-DAQ), Diagnostics Features (FG-DIAG), Persistence / DP Stack
1. Purpose and Objectives
The Data Quality & Calibration Features ensure that all sensor data generated by the Sensor Hub is valid, trustworthy, correctly classified, and calibrated throughout the system lifecycle. These features provide mechanisms for:
-
Automatic identification of connected sensors
-
Enforcing correct sensor–slot compatibility
-
Early detection and isolation of faulty sensors
-
Centralized management of machine constants and calibration parameters
The goal is to maintain high data integrity, reduce commissioning errors, support remote reconfiguration, and ensure safe operation during updates or failures.
2. Feature Overview and Relationships
Feature ID | Feature Name | Primary Objective | Related Features |
|---|---|---|---|
F-DQC-01 | Automatic Sensor Detection | Detect connected sensors dynamically | F-DAQ-01, F-DIAG-01 |
F-DQC-02 | Sensor Type Enforcement | Prevent incorrect sensor-slot usage | F-DQC-01 |
F-DQC-03 | Sensor Failure Detection | Identify and isolate faulty sensors | F-DIAG-02 |
F-DQC-04 | Machine Constants & Calibration Management | Manage static configuration and calibration | OTA, Persistence, Teardown |
3. Functional Feature Descriptions
3.1 F-DQC-01: Automatic Sensor Detection
Description
The Sensor Hub shall automatically detect which sensors are physically connected at runtime. Each sensor slot provides a dedicated detection mechanism (e.g., GPIO presence pin or ID signal) that allows the system to determine whether a sensor is installed.
Detected sensors are dynamically initialized and incorporated into the data acquisition workflow without requiring firmware changes.
Key Capabilities
-
Hardware-based presence detection
-
Runtime sensor enumeration
-
Dynamic initialization during boot or reconfiguration
-
Integration with diagnostics and data acquisition
3.2 F-DQC-02: Sensor Type Enforcement
Description
Each physical sensor slot on the Sensor Hub is dedicated to a specific sensor type. The system enforces sensor-slot compatibility to prevent incorrect sensor insertion (e.g., humidity sensor in temperature slot).
This enforcement is achieved via electrical identification, pin mapping, or firmware configuration defined in Machine Constants.
Key Capabilities
-
Fixed sensor-to-slot mapping
-
Sensor identity verification
-
Rejection of invalid sensor configurations
-
Diagnostic reporting of configuration violations
3.3 F-DQC-03: Sensor Failure Detection
Description
The Sensor Hub continuously monitors sensor behavior to detect failures such as disconnection, out-of-range values, non-responsive sensors, or abnormal signal patterns.
Detected sensor failures are classified, logged, timestamped, and reported to the Main Hub. Failed sensors are excluded from control and analytics workflows to prevent propagation of invalid data.
Key Capabilities
-
Runtime health monitoring
-
Failure classification
-
Fault isolation
-
Diagnostic event generation
3.4 F-DQC-04: Machine Constants & Calibration Management
Description
The system maintains a Machine Constants (MC) dataset that defines static and semi-static configuration parameters for the Sensor Hub, including:
-
Installed sensor types and slots
-
Communication identifiers and addressing
-
Calibration coefficients and offsets
-
Sensor-specific limits and scaling
Machine Constants are persisted in non-volatile storage (SD card) and loaded during system initialization. Updates may be received from the Main Hub and applied via a controlled teardown and reinitialization process.
Key Capabilities
-
Persistent configuration storage
-
Runtime loading and validation
-
Remote update support
-
Controlled reinitialization sequence
4. System Requirements (Formal SHALL Statements)
4.1 Automatic Sensor Detection
SR-DQC-001
The system shall detect the presence of each sensor using a dedicated hardware detection mechanism.
SR-DQC-002
The system shall perform sensor presence detection during system startup and after any reinitialization event.
SR-DQC-003
The system shall initialize only those sensors that are detected as present.
4.2 Sensor Type Enforcement
SR-DQC-004
The system shall assign each sensor slot to a predefined sensor type.
SR-DQC-005
The system shall verify that the detected sensor matches the expected sensor type for the slot.
SR-DQC-006
The system shall reject and report any sensor-slot mismatch as a diagnostic event.
4.3 Sensor Failure Detection
SR-DQC-007
The system shall continuously monitor sensor responsiveness and signal validity during operation.
SR-DQC-008
The system shall detect sensor failures including disconnection, non-responsiveness, and invalid measurement ranges.
SR-DQC-009
The system shall mark a failed sensor as defective and exclude it from data reporting.
SR-DQC-010
The system shall report detected sensor failures to the Main Hub with timestamps and failure classification.
4.4 Machine Constants & Calibration Management
SR-DQC-011
The system shall maintain a Machine Constants dataset defining sensor configuration, calibration parameters, and communication identifiers.
SR-DQC-012
The system shall persist the Machine Constants dataset in non-volatile storage.
SR-DQC-013
The system shall load and apply Machine Constants during system initialization.
SR-DQC-014
The system shall support remote updates of the Machine Constants dataset initiated by the Main Hub.
SR-DQC-015
The system shall apply updated Machine Constants only after executing a controlled teardown and reinitialization sequence.
5. Traceability Summary
Feature ID | System Requirements |
|---|---|
F-DQC-01 | SR-DQC-001 → SR-DQC-003 |
F-DQC-02 | SR-DQC-004 → SR-DQC-006 |
F-DQC-03 | SR-DQC-007 → SR-DQC-010 |
F-DQC-04 | SR-DQC-011 → SR-DQC-015 |