---
id: scada-interface-stat-allarmi
sidebar_position: 2
title: Statistiche Allarmi
sidebar_label: Scada Interface Allarmi Statistiche
pagination_prev: null
hide_table_of_contents: true
---

# Strutture per le Statistiche degli Allarmi

Questa sezione descrive l'architettura dei dati utilizzati per l'analisi avanzata degli allarmi, che include il calcolo di KPI come MTTR (Tempo Medio di Riparazione) e MTBF (Tempo Medio tra i Guasti), e la gestione di classifiche ("Top Alarms") per identificare i problemi più critici.

---

### Struttura `ST_AlarmAnalytics`

Questa è la struttura "mattoncino" che contiene tutte le analisi calcolate per un **singolo allarme**.

| Nome Variabile | Tipo Dati | Descrizione |
| :--- | :--- | :--- |
| `State` | `BOOL` | Stato attuale dell'allarme (`VERO` = Attivo). |
| `Count` | `DINT` | Conteggio totale delle occorrenze (Frequenza) di questo allarme. |
| `TotalActiveTime_ms` | `LINT` | Tempo totale, in millisecondi, in cui questo allarme è rimasto attivo. |
| `MTTR_sec` | `LREAL` | **Tempo Medio di Riparazione** (Mean Time To Repair), in secondi. Indica il tempo medio necessario per risolvere l'allarme. |
| `MTBF_h` | `LREAL` | **Tempo Medio tra i Guasti** (Mean Time Between Failures), in ore. Indica il tempo medio di buon funzionamento tra un'occorrenza e l'altra di questo allarme. |

---

### Struttura `ST_TopAlarmEntry`

Questa struttura rappresenta una singola riga all'interno di una classifica di allarmi ("Top Alarms"). Viene usata per le due classifiche principali: quella per frequenza e quella per tempo di fermo.

| Nome Variabile | Tipo Dati | Descrizione |
| :--- | :--- | :--- |
| `AlarmId` | `DINT` | L'ID numerico dell'allarme. Un valore di `-1` indica uno slot vuoto nella classifica. |
| `Value` | `LREAL`| Il valore utilizzato per ordinare la classifica (può essere la frequenza o il tempo totale di attività in millisecondi). |

---

### Dati Allarmi nella Struttura `ST_Egress`

Infine, la struttura `ST_Egress` (dati in uscita verso lo SCADA) contiene gli array che rendono disponibili tutte queste informazioni.

| Nome Variabile | Tipo Dati | Descrizione |
| :--- | :--- | :--- |
| `AlarmAnalytics` | `ARRAY[0..1399] OF ST_AlarmAnalytics` | Un array che contiene i dati analitici dettagliati per ogni singolo allarme. |
| `TopAlarms_ByFrequency`| `ARRAY[0..99] OF ST_TopAlarmEntry` | La classifica dei 100 allarmi più frequenti. |
| `TopAlarms_ByDowntime`| `ARRAY[0..99] OF ST_TopAlarmEntry` | La classifica dei 100 allarmi che hanno causato il maggior tempo di fermo. |
| `Alarms_Packed` | `ARRAY[0..80] OF WORD` | Un array compatto di word per una rappresentazione rapida e a basso livello dello stato di tutti gli allarmi. |