How awrs1-ai/bput-hackathon works
Industrial Safety Monitor combines edge vision-based PPE and fire detection with thermal and smoke telemetry, then fuses evidence into safety states and incident responses. The main workflow is camera and sensor input → hazard analysis → persisted or dispatched response → operator interfaces. The README documents several capabilities beyond the sampled excerpts; those are represented at their documented subsystem paths, while uncertain internal wiring is omitted.
Main entry points: run_system.py System Orchestrator · vision.py Vision Pipeline · db.py Incident Store · fusion_engine.py Sensor Fusion
Components 22
Edge Inputs
- Vision Pipeline
core/vision.py - Fire Detection
core/fire_detector.py - ESP32 Bridge
services/hardware_bridge.py - Thermal Sensor
core/thermal_sensor.py - Smoke Sensor
core/smoke_sensor.py
Hazard Analysis
- PPE Association
core/spatial.py - Violation Debounce
core/debounce.py - Risk & Evidence
core/risk_engine.py - Sensor Fusion
core/fusion_engine.py - Safety States
core/safety_states.py - System Orchestrator
run_system.py
Response Services
- Incident Store
services/db.py - Priority Alert Queue
services/alert_queue.py - Telegram Alerts
services/telegram_alert.py - Plant Actuation
services/hardware_bridge.py
Operator Interfaces
- REST & WebSockets
services/api.py - Safety Analytics
services/analytics.py - Command Dashboard
app.py - Supervisor Portal
alert_app/app.py
Other components
- Camera Feed
- ESP32 Sensors
hardware/esp32_firmware/esp32_firmware.ino - Safety Operator
Connections 27
- Camera Feed → System Orchestrator: provides frames
- System Orchestrator → Vision Pipeline: processes frames
- Vision Pipeline → PPE Association: associates PPE
- Vision Pipeline → Violation Debounce: confirms violations
- Vision Pipeline → Risk & Evidence: evaluates incidents
- Vision Pipeline → Fire Detection: detects hazards
- ESP32 Sensors → ESP32 Bridge: sends telemetry
- System Orchestrator → Thermal Sensor: polls readings
- System Orchestrator → Smoke Sensor: polls readings
- System Orchestrator → Sensor Fusion: supplies evidence
- Fire Detection → Sensor Fusion: supplies fire scores
- Thermal Sensor → Sensor Fusion: supplies readings
- Smoke Sensor → Sensor Fusion: supplies readings
- Sensor Fusion → System Orchestrator: returns risk result
- System Orchestrator → Safety States: updates state
- Risk & Evidence → Incident Store: logs incidents
- Risk & Evidence → Priority Alert Queue: enqueues alerts
- Priority Alert Queue → Telegram Alerts: dispatches alerts
- Safety States → Plant Actuation: sets alarm state
- Plant Actuation → ESP32 Sensors: commands actuators
- Incident Store → REST & WebSockets: serves event data
- Incident Store → Safety Analytics: provides records
- Incident Store → Command Dashboard: reads incidents
- Incident Store → Supervisor Portal: reads incidents
- Command Dashboard → Safety Operator: shows status
- Supervisor Portal → Safety Operator: shows alerts
- Supervisor Portal → REST & WebSockets: requests status