Humanoid Robotics (ISO 13849)

OmniSensor-Integration: Multi-Sensor Fusion Topologie

Software-in-the-Loop (SIL) Testsystem mit LiDAR (60%) + Vision (40%) Fusion, Fallback-Mechanismen bei Hardware-Fehler, <100ms Latency unter Verdeckung

Das versteckte Problem: Sensor-Gewichte im Embedded C++ versteckt

  • Anforderung: „Zuverlässige Mensch-Erkennung <100ms, ISO 13849 konform"
  • Implementation: LiDAR 60% Gewicht + Vision 40% Gewicht (Fusion)
  • Das Problem: Gewichtungen sind im HAL-Code hardcodiert, nicht tracierbar
  • Sicherheits-Frage: „Wenn das ML-Backend crasht — ist die Anforderung noch erfüllbar?"
  • Manuelle Antwort: Sicherheits-Ingenieur muss C++ + ROS2 Architektur durchgehen (4+ Stunden)
  • Graph-Antwort: Sofort: „LiDAR-Fallback aktiv, +40ms Latenz aber <100ms" ✓

Der Vimpact-Graph: Automatische Dependency-Analyse

  • Alle Sensor-Module als Knoten: ML_INFERENCE_ENGINE, CPU_FALLBACK, LIDAR_DETECTOR, VISION_DETECTOR
  • Kanten mit Gewichten & Fallback: weight: 0.4, has_fallback: true, latency_impact: "+40ms"
  • Latency Budget als Graph-Constraint: REQ_100MS depends_on [ML_INFER + FUSION + SAFETY_LOGIC]
  • Impact-Analyse: „Remove ML_BACKEND" → Graph berechnet Pfade → 60ms (OK) oder 120ms (FAIL)
  • Compliance-Verifikation: Hat jeder Fallback-Pfad einen ISO 13849 Test? Graph validiert!

Reale Sensor-Fusion Topologie

SAFETY REQUIREMENT (Graph-Knoten):
  "Human detection <100ms, confidence >95%, unter Okklusion"
  │ verified_by (OpenSCENARIO)
  ▼
TEST SCENARIO: "Person hinter Hindernis (60% Verdeckung) + Dämmerlicht"
  │ depends_on (Weighted Sensor Fusion)
  ├─▶ 3D-Sensor (60% Gewicht) — 16-Ring, 180° FOV, 10Hz
  ├─▶ RGB-Depth Kamera (40% Gewicht) — 120° HFOV, RealSense
  └─▶ Kalman-Filter Tracking — 5-Frame Memory, Velocity-Estimation

Graph-Knoten: ML Inference Engine

{
  "node_id": "HAL_ML_INFERENCE",
  "type": "inference_engine",
  "framework": "Quantized Vision Transformer (local)",
  "edges": [
    { "to": "SENSOR_FUSION_NODE", "type": "powers", "weight": 0.4 },
    { "to": "HAL_CPU_FALLBACK", "type": "has_fallback", "latency_penalty_ms": 100 }
  ],
  "properties": { "latency_ms": 15, "failure_rate": "< 1e-8/h" }
}