Vai al contenuto

Stati e riferimenti temporali

Stati produttivi

La tabella machine_mapping_status_values, figlia della regola mapping, converte lo stato grezzo della sorgente nella semantica produttiva.

Stato Significato
NO_JOB Nessuna lavorazione
LOADED Lavorazione caricata, non avviata
RUNNING Produzione avviata
PAUSED Pausa temporanea senza chiusura
COMPLETED Produzione terminata
FAULT Allarme/errore con produzione aperta
UNKNOWN Valore riconosciuto esplicitamente senza semantica produttiva specifica

Non esiste una corrispondenza universale tra i codici numerici del pannello e questi stati: configurarla per ogni sorgente/firmware.

Stato tecnico della dashboard

Una voce stato può indicare AUTO, RUN, STOP, PAUSE o OFFLINE. Con AUTO:

Stato produttivo Stato dashboard
RUNNING RUN
PAUSED PAUSE
Altri stati STOP

Un mapping esplicito a UNKNOWN riconosce consapevolmente il valore senza modificare la produzione. Un valore grezzo senza mapping produce invece diagnostica e non viene marcato come elaborato.

Transizioni e produzione

  • RUNNING apre o continua la produzione.
  • PAUSED conserva la produzione aperta, azzera stop_started_at e genera production_pause.
  • COMPLETED o NO_JOB chiudono la produzione.

Inizio/fine derivano dai timestamp delle transizioni sorgente. field_started_at e field_stopped_at sono campi legacy nascosti, non la configurazione corrente di queste date.

Il timestamp sorgente fornisce anche la Snap Date nel fuso configurato. I dati centrali temporali vengono trattati in UTC e convertiti per la visualizzazione.

Stato stabile e OFFLINE

Una sorgente STO produce nuove righe soltanto quando qualcosa cambia. L'assenza di righe non implica fermo o perdita di comunicazione.

L'engine rinnova machine_status.updated_at dopo ogni query sorgente riuscita, anche vuota. Il timeout gateway usa questo riferimento; last_signal_at conserva invece l'ultimo evento elaborato.

Quando la sorgente torna raggiungibile, il recupero deve rispettare l'ultimo stato produttivo, inclusa PAUSED → PAUSE. In assenza di un heartbeat per macchina, un database raggiungibile non permette di distinguere un PLC silenzioso da un valore legittimamente stabile.