Food Safety
HACCP — Critical Control Points
Configure and monitor Critical Control Points (CCP) for HACCP compliance
HACCP — Critical Control Points
What is a CCP?
A Critical Control Point (CCP) is a step in your production process where control is essential to prevent a food safety hazard. Examples:
| CCP | Equipment | Parameter | Limit |
|---|---|---|---|
| Cooking temperature | Tunnel oven | Temperature | ≥ 165 degrees C |
| Storage temperature | Freezer | Temperature | ≤ -18 degrees C |
| Pasteurization pressure | Pasteurizer | Pressure | ≥ 72 degrees C for 15s |
| CIP concentration | CIP System | pH | 2.0 - 3.0 |
Create a CCP
From the Dashboard
- Go to Food Safety -> HACCP
- Click New CCP
- Configure:
- Name: Descriptive name (e.g., "Oven Zone 3 Temperature")
- Equipment: Select the asset that monitors this CCP
- Data source: Select the event source that sends readings
- Metric: The field in the event data (e.g., "temperature")
- Hazard type: Biological, Chemical, or Physical
- Upper limit: Maximum acceptable value
- Lower limit: Minimum acceptable value
- Unit: degrees C, degrees F, bar, pH, etc.
- Grace period: Seconds allowed out of limit before requiring action
- Predefined corrective actions: List of steps to follow if there is a deviation
- Responsible person: Who must act
From the API
POST /api/v1/haccp/ccps
{
"name": "Oven Zone 3 Temperature",
"asset_id": "asset_abc123",
"source_id": "source_plc_oven",
"monitoring_metric": "temperature",
"hazard_type": "biological",
"parameter_type": "temperature",
"critical_limit_high": 180,
"critical_limit_low": 165,
"unit": "C",
"grace_period_seconds": 60,
"corrective_actions": [
"Stop production",
"Verify sensor calibration",
"Inspect product in affected zone",
"Document and notify supervisor"
],
"responsible_person_id": "person_tech01"
}Automatic Monitoring
Once configured, Rela evaluates each sensor reading against the CCP limits:
- Reading within limits — Status: Under control
- Reading out of limits, within grace period — Status: Deviation detected
- Reading out of limits, grace period expired — Status: Corrective action required
Deviations are automatically recorded with:
- Reading value
- Deviation from limit
- Duration
- Direction (above / below)
HACCP Dashboard
The dashboard shows:
- Summary bar: "5 of 5 CCPs under control" or "2 require corrective action"
- Cards per CCP: Current reading, limits, time in deviation, corrective action button
- History: List of deviations with dates and actions taken
Pipeline Integration
CCPs are evaluated within the existing event pipeline:
- Event arrives via MQTT/OPC UA/Modbus ->
machine_webhook_service - After logging the event ->
haccp_service.check_ccp_reading() - If there is a deviation -> it is recorded + WhatsApp/email notification
- If corrective action is required -> automatic task + audit trail entry
- In parallel -> statistical anomaly detection continues running
CCPs do not replace anomaly detection — they complement it. Anomalies detect statistical changes; CCPs verify regulatory compliance.