DOCA0302IT-04

Tipi di dati e formato tabella Modbus

Formati delle tabelle

Le tabelle dei registri sono costituite dalle colonne seguenti:

Indirizzo

Registro

N.

L/S

X

Unità

Tipo

Portata

Valore predefinito

Backup

Codice funzione

Descrizione

Definizione

Descrizione

Indirizzo

Indirizzo registro 16 bit in esadecimale. L'indirizzo corrisponde ai dati utilizzati nel frame Modbus.

Registro

Numero di registro 16 bit in decimale. Registro = Indirizzo + 1

N.

Numero di registri da 16 bit che vanno letti/scritti per accedere alle informazioni complete.

L/S

Se il registro è di sola lettura (R) o lettura-scrittura (L/S).

X

Fattore di scala:

  • Una scala X1 significa che il valore del registro è quello corretto con l'unità indicata.

  • Una scala di 10 significa che il registro contiene il valore moltiplicato per 10. Il valore effettivo è quindi il valore del registro diviso per 10.

  • Una scala di 0,1 significa che il registro contiene il valore moltiplicato per 0,1. Il valore effettivo è quindi il valore del registro moltiplicato per 10.

Unità

Unità di misura dell'informazione:

  • : nessuna unità corrispondente al valore espresso.

  • h: ore.

  • D: l'unità dipende dal dispositivo collegato.

Tipo

Tipo di dati di codifica (vedere Tabella tipi di dati).

Portata

Campo dei valori consentiti per la variabile, generalmente un sottoinsieme di ciò che consente il formato. Per i dati di tipo BITMAP, il contenuto di questo dominio è "".

Valore predefinito

Valore predefinito per la variabile.

Backup

Salvataggio del valore in caso di interruzione dell'alimentazione:

  • Y: il valore del registro viene salvato in caso di interruzione dell'alimentazione.

  • N: il valore viene perso in caso di interruzione dell'alimentazione.

NOTA: all'avvio o al reset i valori disponibili vengono recuperati.

Codice funzione

Codice delle funzioni utilizzabili nel registro.

Descrizione

Informazioni sul registro e sulle limitazioni applicabili.

Tipi di dati

Nelle tabelle dei registri Modbus compaiono i seguenti tipi di dati:

Nome

Descrizione

Portata

UINT

Intero da 16 bit senza segno (1 parola)

Da 0 a 65535

INT

Intero da 16 bit con segno (1 parola)

da -32768 a +32767

UINT32

Intero da 32 bit senza segno (2 parole)

Da 0 a 4 294 967 295

INT32

Intero da 32 bit con segno (2 parole)

Da -2 147 483 648 a +2 147 483 647

Float32

Valore da 32 bit (2 parole)

da -3,4028E+38 a +3,4028E+38

ASCII

Carattere alfanumerico da 8 bit

Tabella dei caratteri ASCII

BITMAP

Campo da 16 bit (1 parola)

DATE

Vedere Tabella data

NOTA:

Dati tipo Float32: virgola mobile a precisione singola con bit del segno, esponente 8 bit, mantissa 23 bit (reale normalizzato positivo e negativo)

Per i dati di tipo ASCII l'ordine di trasmissione dei caratteri nelle parole (registri da 16 bit) è il seguente:

  • carattere n in bit meno significativi

  • carattere n + 1 in bit più significativi

Tutti i registri (a 16 bit o 2 byte) vengono trasmessi con codifica Big Endian:

  • il byte più significativo viene trasmesso per primo

  • il byte meno significativo viene trasmesso per secondo

Le variabili a 32 bit salvate su due parole a 16 bit (ad esempio, contatori di consumo) sono in formato Big Endian:

  • la parola più significativa viene trasmessa per prima, seguita da quella meno significativa.

Le variabili a 64 bit salvate su quattro parole a 16 bit (ad esempio, le date) sono in formato Big Endian:

  • la parola più significativa viene trasmessa per prima e così via.

DATETIME

DATETIME è un tipo di dati utilizzato per codificare data e ora definite dallo standard IEC 60870-5.

Registro

Tipo

Bit

Intervallo

Descrizione

1

INT16U

0-6

0x00–0x7F

Anno:

da 0x00 (00) a 0x7F (127) corrisponde agli anni da 2000 a 2127

Ad esempio, 0x17 (23) corrisponde all'anno 2023.

7–15

Riservato

2

INT16U

0–4

0x01–0x1F

Giorno

5-7

Riservato

8-11

0x00–0x0C

Mese

12–15

Riservato

3

INT16U

0-5

0x00–0x3B

Minuti

6-7

Riservato

8-12

0x00–0x17

Ore

13–15

Riservato

4

INT16U

0-15

0x0000–0xEA5F

Millisecondi

Indirizzamento bit diretto

L'indirizzamento viene consentito per le zone di tipo BITMAP con le funzioni 1, 2, 5 e 15.

L'indirizzo del primo bit ha la struttura seguente: (indirizzo del registro x 16) + numero del bit.

Questa modalità di indirizzamento è specifica di Schneider Electric.

Esempio: Per le funzioni 1, 2, 5 e 15 il bit 3 del registro 0x0078 deve essere indirizzato; l'indirizzo del bit è quindi 0x0783.

NOTA: Il registro il cui bit deve essere indirizzato deve avere un indirizzo ≤ 0x0FFF.

Esempio di frame Modbus

Richiesta

Definizione

Numero di byte

Valore

Commento

Numero server

1 byte

0x05

Indirizzo Modbus I/O Smart Link

Codice funzione

1 byte

0x03

Lettura di n parole di uscita o interne

Indirizzo

2 byte

0x36E2

Indirizzo di un contatore di consumo il cui indirizzo è 14050 in formato decimale.

Numero di parole

2 byte

0x002C

Lettura di 44 registri a 16 bit.

CRC

2 byte

xxxx

Valore di CRC16.

Risposta

Definizione

Numero di byte

Valore

Commento

Numero server

1 byte

0x05

Indirizzo Modbus I/O Smart Link

Codice funzione

1 byte

0x03

Lettura di n parole di uscita o interne

Numero di byte

2 byte

0x0058

Numero di byte letti

Valore delle parole lette

88 byte

Lettura di 44 registri a 16 bit

CRC

2 byte

xxxx

Valore di CRC16.

Indirizzo Modbus

L'elenco di indirizzi Modbus, definito dal protocollo Modbus, inizia da 0.

L'indirizzo del numero n del registro è n-1.

Le tabelle dettagliate nei capitoli successivi di questa guida forniscono sia i numeri di registro (in formato decimale) sia gli indirizzi corrispondenti (in formato esadecimale). Esempio di indirizzo: l’indirizzo del numero di registro 3000 è 0x0BB7 (2999).

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Le informazioni sono state utili?