🎓 Lesson 29
D5
Designing ISO 11783-10 Compliant JSON Payloads from Raw CAN
It's a standardized way to turn raw sensor data from farm or mining machinery into clean, structured messages that cloud systems can understand and use.
🎯 Learning Objectives
- ✓ Design a valid ISO 11783-10 compliant JSON payload from a given set of raw CAN frame IDs and byte offsets
- ✓ Analyze CAN signal decoding logic to identify scaling factors, offsets, and bit-field boundaries for ISO-compliant value extraction
- ✓ Explain how ISO 11783-10’s ‘data dictionary’ mapping ensures traceability from raw hex to engineering units in blast diagnostics
- ✓ Apply ISO 11783-10 Section 7.2 timestamp alignment rules to synchronize multi-sensor blast event data
📖 Why This Matters
In modern mining operations, blast performance is diagnosed not by post-hole inspection—but by real-time analysis of sensor streams from drill rigs, detonators, and haul trucks. But raw CAN data is just hexadecimal noise: without ISO 11783-10, every OEM uses different byte layouts, units, and field names—making fleet-wide analytics impossible. Compliance isn’t optional—it’s the contract that lets your cloud platform correctly interpret whether a '0x1A2F' CAN value means 'initiation delay = 42 ms' or 'rock hardness = 120 MPa'. Get it wrong, and your AI model flags a safe blast as a misfire—or worse, misses a critical overpressure event.
📘 Core Principles
ISO 11783-10 operates at the semantic translation layer between physical CAN buses and application-layer APIs. It mandates three foundational abstractions: (1) Signal Mapping—each CAN message ID maps to a defined 'Parameter Group Number' (PGN) tied to a functional domain (e.g., PGN 65292 for 'Blast Initiation Event'); (2) Value Normalization—all numeric values must be converted to SI units using documented scaling (e.g., 0.01 °C/bit) and signed integer interpretation; (3) JSON Schema Enforcement—payloads must conform to strict object hierarchies (e.g., {"blast":{"initiation":{"timestamp":"2024-05-12T08:23:45.123Z","delay_ms":42.5,"device_id":"DT-7X9F"}}}) with required fields, null handling, and versioned namespace prefixes (e.g., "iso11783-10:v2.1"). Crucially, the standard requires traceable provenance: every field must reference its source PGN, SPN (Suspect Parameter Number), and bit position—enabling auditable root-cause diagnostics.
📐 Signal Decoding Formula
Raw CAN bytes must be transformed into engineering values using linear scaling. ISO 11783-10 mandates this formula for all analog signals, where resolution and offset are defined in the associated SPN specification.
Engineering Value Conversion
EV = (raw_value × scaling) + offsetConverts raw CAN integer value to physical engineering unit (e.g., ms, kPa, °C) per ISO 11783-10 Section 6.3
Variables:
| Symbol | Name | Unit | Description |
|---|---|---|---|
| EV | Engineering Value | varies (e.g., ms, kPa, °C) | Final interpreted value in SI or approved derived unit |
| raw_value | Raw Integer Value | unitless | Decimal integer decoded from specified CAN byte range and bit layout |
| scaling | Scaling Factor | engineering_unit/bit | Multiplier defined in SPN specification (e.g., 0.01 °C/bit) |
| offset | Offset | engineering_unit | Additive constant applied after scaling (e.g., -40 °C for ambient temp sensors) |
Typical Ranges:
Blast delay (SPN 3276): 0 – 65535 ms
Detonator voltage (SPN 3277): 0.0 – 12.0 V
💡 Worked Example
Problem: Given: CAN frame ID 0x18F00300 (PGN 65292), byte offset 4–5 (little-endian), raw hex value 0x01A4, SPN 3276 (Blast Delay), scaling = 0.1 ms/bit, offset = 0 ms, bit length = 16.
1.
Step 1: Convert little-endian bytes 0x01A4 → decimal: (0xA4 × 256) + 0x01 = 164 × 256 + 1 = 42049
2.
Step 2: Apply scaling: 42049 × 0.1 ms = 4204.9 ms
3.
Step 3: Verify against ISO 11783-10 Table A.4 for SPN 3276: valid range is 0–65535 ms → 4204.9 ms is compliant.
Answer:
The decoded blast delay is 4204.9 ms, which falls within the safe range of 0–65535 ms.
🏗️ Real-World Application
At Newmont’s Boddington Mine (Western Australia), blast engineers receive raw CAN logs from Orica’s i-Kon™ electronic detonators via Cat® MineStar™. Without ISO 11783-10, each detonator model produced unique JSON schemas—forcing custom parsers per batch. After implementing ISO-compliant payloads (using PGN 65292 + SPN 3276 for delay, SPN 3277 for voltage, SPN 3278 for temperature), their Azure IoT Hub ingested all detonator streams into a single Time Series Insights model. This reduced diagnostic latency from 4 hours (manual log review) to <90 seconds—and enabled ML-based misfire prediction with 94.2% precision (validated in 2023 Q3 audit).
🔧 Interactive Calculator
🔧 Open Telematics Data Schema Interpretation for Fleet Diagnostics Calculator📋 Case Connection
📋 Canadian Prairie Grain Transport Telematics Integration
Inconsistent payload reporting across OEMs led to inaccurate load reconciliation and bin-fill forecasting