Una guida pratica per raccogliere dati dai tuoi sensori e prepararli per il training AI.
I dati dei sensori possono arrivare da molte fonti. Ecco le più comuni e come esportarli.
| Sorgente | Come esportare | Formato tipico |
|---|---|---|
| PLC / SCADA | Export dati integrato o software historian (TIA Portal, FactoryTalk, ecc.) | CSV, XLSX |
| Arduino / ESP32 | Serial.println() sul Serial Monitor, oppure scrittura su SD card con la libreria SD | Serial text, SD card CSV |
| Data logger USB | Collegare il logger, scaricare il file tramite il software del produttore | CSV, TXT |
| Excel / Google Sheets | Foglio di calcolo con letture manuali — esporta come CSV (File > Salva con nome > CSV) | XLSX → CSV |
| OPC-UA / MQTT | Usa un client (es. Node-RED, Python opcua) per sottoscrivere e loggare su CSV | JSON → CSV |
Gli export grezzi dai sensori spesso includono timestamp, colonne di stato testuali o metadati che Luviner non necessita. Ecco un esempio prima/dopo:
Cosa fare:
Fix rapidi per i problemi più frequenti negli export di dati sensore.
| Problema | Soluzione |
|---|---|
| Celle vuote o valori mancanti | Elimina le righe con valori mancanti, oppure riempi con la lettura precedente (forward fill) |
| Testo nelle colonne feature (es. "N/A", "ERR") | Sostituisci con un valore numerico o rimuovi la riga |
| Unità di misura miste (es. alcune righe in °C, altre in °F) | Converti tutti i valori nella stessa unità prima dell'export |
| Virgola decimale invece del punto (1.234 vs 1,234) | Sostituisci le virgole con punti nelle colonne numeriche, oppure usa il punto e virgola come delimitatore CSV |
| Righe duplicate o intervalli di campionamento irregolari | Rimuovi i duplicati; per intervalli irregolari, ricampiona a frequenza fissa se possibile |
Ogni riga ha bisogno di una label — un intero che dice a Luviner a quale classe appartiene quella lettura. Ci sono diversi modi per assegnare le label a seconda della situazione.
| Metodo | Quando usarlo | Esempio |
|---|---|---|
| Tipi di guasto noti | Sai già com'è ogni condizione (dai log di manutenzione o dalla conoscenza del dominio) | normal=0, bearing_fault=1, misalignment=2 |
| Dagli allarmi SCADA/PLC | Il tuo sistema segnala già le condizioni anomale — mappa i codici allarme in interi | OK=0, ALARM=1 |
| Per finestra temporale | Sai quando si è verificato un guasto — etichetta tutte le righe prima di quel momento come 0, e le righe durante/dopo come 1 | "Tutto prima del 15 marzo = normale (0), dopo = guasto (1)" |
Dati accelerometro da un motore elettrico. Label: 0 = normale, 1 = guasto cuscinetto, 2 = disallineamento.
Letture da unità di trattamento aria. Label: 0 = normale, 1 = flusso aria basso, 2 = sovraccarico compressore.
Monitoraggio cella frigorifera per prodotti deperibili. Label: 0 = condizioni sicure, 1 = rischio deterioramento.
Letture da quadro elettrico. Label: 0 = normale, 1 = distorsione armonica, 2 = sottotensione.