Mapping pannello → database¶
Scopo e tempi¶
La scheda MAPPING, accanto a DATA PANEL, espone le 118 letture Modbus correnti. Gli offset sono 0–117; il ciclo legge a partire dall'indirizzo 101, normalmente indicato come registri 101–218. La convenzione di indirizzamento deve essere confermata con il firmware.
L'interfaccia mostra offset, registro, descrizione disponibile, valore letto, ultimo valore inviato e campo DB selezionato. Il polling pannello è di 500 ms; la sincronizzazione DB ha intervallo predefinito di 5 secondi.
Procedura¶
- Verificare la configurazione DB1 e una lettura Modbus riuscita.
- Scegliere la tabella destinazione, predefinita
dati_macchine. - Impostare un filtro semplice
campo=valoreche identifichi la macchina prevista. - Premere RICARICA CAMPI DB per leggere le colonne reali della tabella.
- Associare gli offset ai campi selezionabili. Le associazioni sono salvate immediatamente.
- Salvare le impostazioni e controllare il conteggio righe aggiornate.
- Verificare sul database il valore di un registro cambiato e il comportamento dei valori invariati.
Il filtro accetta una sola uguaglianza. {macchina} è risolto con il nome macchina e {codmacchina} con il codice macchina. Controllare questa distinzione: il default cod_macchina={macchina} non garantisce che nome e codice siano uguali nella propria installazione.
Un filtro che corrisponde a più righe le aggiorna tutte. Il mapping non crea automaticamente la tabella o la riga della macchina.
File mapping.ini¶
Dal 28/09/2026 la configurazione ha questa struttura:
[Mapping]
table=dati_macchine
where=cod_macchina={codmacchina}
enabled=1
refreshIntervalMs=5000
[PANEL_TO_DB]
; Associazioni Text4_n → nome colonna, salvate dalla UI
[PANEL_PREVIOUS_VALUES]
; Ultimi valori inviati con successo
È un esempio per un'installazione che usa il codice macchina come filtro. Le associazioni concrete dipendono dalla mappa registri approvata e dai tipi delle colonne.
Se il file manca, il primo caricamento importa le sezioni legacy da config.ini e crea il file dedicato. Se esiste, mapping.ini è autorevole. L'importazione non modifica config.ini; le sezioni legacy rimaste non vengono più usate. Il file non è copiato automaticamente dalla build/publish.
Scritture e gestione degli errori¶
La sincronizzazione procede soltanto dopo una lettura Modbus riuscita e aggiorna i valori cambiati rispetto a quelli persistiti. L'intervallo configurabile è limitato dal codice tra 1.000 e 60.000 ms.
Gli update di un ciclo usano parametri e una transazione DB1. Tabelle e campi vengono quotati secondo il provider. I valori dei registri sono passati come stringhe: la conversione al tipo della colonna dipende dal database/provider.
Gli errori compaiono nella scheda e nei log senza la terminazione forzata delle routine legacy. Le prove descritte nelle memorie verificano build, interfaccia e persistenza offline; tipi, filtro e update su database/pannello reali restano da collaudare.