Il progetto si basa su un'architettura modulare che gestisce la raccolta, l'elaborazione e la fruizione dei dati in fasi distinte.

Le 3 Macro-fasi dello sviluppo

Fase 1: Raccolta Dati e Profilazione Iniziale (Asincrona)

Fase 2: Monitoraggio Sincrono in Tempo Reale

Fase 3: Fruizione del Servizio e Personalizzazione (App Minervas)


Architettura completa

Architettira_Schumi.png

<aside> <img src="/icons/info-alternate_blue.svg" alt="/icons/info-alternate_blue.svg" width="40px" />

DESCRIZIONE DIAGRAMMA

Descrizione Dettagliata dell'Architettura e del Flusso di Lavoro


Questo diagramma illustra il flusso completo dei dati e le interazioni tra i componenti del sistema "Shumi". Il processo è stato riprogettato e suddiviso in due macro-fasi logiche e sequenziali: una prima fase di profilazione asincrona per costruire un profilo statico del conducente, e una seconda fase di monitoraggio sincrono durante la guida reale.

<aside>

Macro-Fase 1: Profilazione Asincrona (Offline)

Questa fase si svolge prima della guida reale e ha l'obiettivo di creare un profilo fondamentale e statico del conducente.

  1. Raccolta Dati Iniziale:
  2. Canale di Comunicazione (MQTT): Lo script di raccolta impacchetta i dati telemetrici (es. in formato JSON) e li pubblica su un topic specifico di un MQTT Broker. Questo intermediario disaccoppia il client dal server, garantendo una comunicazione asincrona e affidabile.
  3. Elaborazione e Creazione del Profilo Statico (Server-Side):

<aside>

Macro-Fase 2: Monitoraggio Sincrono (Real-Time)

Questa fase si attiva durante la guida effettiva su un veicolo reale, dopo che il conducente è stato profilato.

  1. Contesto e Raccolta Dati Live:
  2. Analisi dello Stato d'Animo: Il modello CV è un servizio sempre attivo che analizza i frame video per determinare lo stato d'animo del conducente (es. "calmo", "stanco", "distratto"). Questo risultato viene esposto come un flusso di dati live, disponibile per essere consumato da applicazioni esterne. </aside>

<aside>

Fruizione del Servizio e Personalizzazione (App Minervas)

L'Applicazione Minervas è il punto in cui le informazioni delle due macro-fasi convergono per fornire un'assistenza intelligente e contestuale.

  1. Accesso ai Dati: L'applicazione utilizza due canali distinti per ottenere un quadro completo:
  2. Personalizzazione Dinamica: Combinando il profilo statico con lo stato d'animo live, l'applicazione Minervas può adattare dinamicamente le sue raccomandazioni, il tono del feedback e gli avvisi, offrendo un supporto realmente personalizzato ed efficace. </aside>

</aside>