WebCommander e WebLog Note applicative AN001: Driver ModBus Generalita Questo documento descrive la configurazione dei parametri ModBus nei dispositivi WebLog e WebCommander, al fine di definire le variabili e i registri che il dispositivo deve leggere da un strumento di misura o da un sistema dotato di protocollo ModBus RTU. Le impostazioni ModBus si possono configurare tramite DevTool, HyperTerminal o tramite SMS. Configurazione dei canali di comunicazione ModBus WebLog e WebCommander possono lavorare come Master o Slave in uno qualsiasi dei 4 canali di comunicazione. Il comando per impostarne il modo è: MODBUS <seriale master> <seriale slave> <ritardo> <timeout> <mode> <seriale master> <seriale slave> <ritardo> <timeout> <mode> È la password dell utente amministratore 0: modalità master disabilitata su COM0 (RS232A) 2: modalità master su COM1 (seriale morsetti RS232B) 4: modalità master su COM2 (modem) 8: modalità master su COM3 (RS485) 0: modalità slave disabilitata su COM0 (RS232A) 2: modalità slave su COM1 (seriale morsetti RS232B) 4: modalità salve su COM2 (modem) 8: modalità slave su COM3 (RS485) Ritardo in ms tra i pacchetti (100ms per esempio), tra la ricezione della risposta e l invio del comando successivo Timeout in ms del bus (1000ms per esempio), timeout di attesa di risposta dallo slave 0: byte mode 1: word mode (più diffuso) CMD: MODBUS 0000 8 0 100 1000 1 Imposta la COM3 (RS485) come master, un ritardo tra pacchetti di 100ms e un timeout di 1000ms. Usa la modalità a word.
L impostazione della modalità ModBus varia a seconda dell uso e del dispositivo collegato ad ogni porta seriale: - Collegamento di espansioni ModBus: occorre impostare WebLog come master sulla seriale COM3 (RS485) a cui e collegata l espansione - Collegamento al pannello Touchscreen: occorre impostare WebLog come slave sulla COM1 (RS232B) - Collegamento al PC tramite PlantManager: occorre impostare WebLog come slave sulla COM0 (RS232A) - Collegamento con dispositivi ModBus: occorre impostare WebLog come master sulla porta a cui è collegato il dispositivo Configurazione dei comandi ModBus Il comando per la configurazione dei registri ModBus è MBCMD <canale> <slave ID><comando ModBus> <indirizzo> <lunghezza> <n.variabile> <canale> <slave ID> <comando ModBus> <indirizzo> <lunghezza> <indirizzo destinazione> Password dell amministratore 0: COM0 (seriale DB9) 1: COM1 (seriale morsetti RS232B) 2: COM2 (modem) 3: COM3 (RS485) ID dello slave ModBus da interrogare 1: Lettura variabili digitali 2: Lettura ingressi digitali 3: Lettura variabili analogiche 4: Lettura ingressi analogici 5: Scrittura variabile digitale 6: Scrittura variabile analogica 16: Scrittura variabili analogiche Indirizzo ModBus della variabile remota (registro) da leggere nel dispositivo collegato a WebLog Numero di variabili remote (registri) adiacenti da leggere (in word) Indirizzo della variabile locale in cui salvare il responso del comando, cioè dove sarà copiato il responso del comando. Va creata con il comando VAR CMD: mbcmd 0000 3 2 1 4 2 8 Imposta la lettura di variabili da un dispositivo (strumento) collegato alla porta RS485 del Weblog. Legge 2 registri adiacenti a partire dal 4 e salva il valore nella variabile con indirizzo 8. Far riferimento al datasheet del dispositivo collegato al WebLog per la mappatura dei registri.
Assicurarsi che le variabili di memoria siano create per poter salvare il valore letto tramite ModBus. Per cancellare un comando ModBus impostato in precedenza usare il comando: MBCMD DEL <n. comando> Cancella il comando ModBus specificato <n comando> CMD: MBCMD 0000 DEL 1 Cancella il primo comando inserito password dell amministratore N del comado da cancelare (i comandi sono numerati in ordine crescente di inserimento)
Configurazione di variabili ModBus Il valore letto tramite ModBus deve essere salvarto nelle variabili di memoria del WebLog. Il valore letto può essere moltiplicato o diviso per costanti per effettuare delle conversioni e può essere loggato ai fini di creare uno storico dati. Questo comando permette di configurare delle variabili nell area di memoria interna: VAR <nome variabile> <tipo> <molt> <div> <bit/dec> <indirizzo> <tempo_media> <periodo log> <notazione> <nome variabile> <tipo> <molt> <div> <dec> <indirizzo> <tempo_media> <periodo log> <notazione> password dell utente amministratore Nome che si vuole assegnare alla variabile 0: string 1: boolean 2: char 3: integer 4: long 5: float Fattore per cui si vuole moltiplicare la variabile. Impostare 0 per non moltiplicare la variabile. Se <tipo>=boolean questo campo è l etichetta attribuita al valore vero dell ingresso. Fattore per cui si vuole dividere la variabile. Impostare 0 per non dividere la variabile. Se <tipo>=boolean questo campo è l etichetta attribuita al valore falso dell ingresso. Se <tipo>=1, il numero del bit, altrimenti il numero di decimali da assegnare alla variabile L indirizzo della variabile interna a Weblog, varia tra 0 e 1024 (il massimo numero di variabili impostabili è 32) Valore in secondi su cui viene mediato il valore della variabile Valori in secondi di salvataggio in memoria del valore della variabile 1:big endian 0:little endian CMD: VAR 0000 Portata 5 10 36 0 0 Crea una variabile con nome Portata all indirizzo 0. Non assegna decimali. Moltiplica il valore per 10 e lo divide per 36 (trasformazione da m 3 /h a l/s) N.B.: prestare attenzione agli indirizzi dove vengono allocate le variabili di memoria. Le variabili non devono essere sovrapposte. Considerare la lunghezza della variabile e allocare ogni nuova variabile all indirizzo successivo.
Per visualizzare le variabili di memoria impostate usare il comando: VAR Verranno visualizzati il numero di variabili salvate in memoria e i parametri di configurazione impostati per ogni singola variabile. Comando di cancellazione dei Comandi Modbus e delle variabili Questo comando permette di cancellare comandi e variabili modbus nell area di memoria interna: DELETE <argomento> <argomento> password dell utente amministratore V: elimina le variabili C: elimina i comandi ModBus CMD: delete 0000 C Cancella tutti i comandi ModBus impostati