Passa al contenuto principale

Modulo smartCORE ModBus

Descrizione​

Il modulo "modbus" legge principalmente i registri ModBus dei nodi ModBus. Questi nodi possono essere collegati

  • tramite una connessione seriale (ModBus/RTU)
  • tramite TCP (ModBus/TCP)

Interfacce e protocolli utilizzati​

  • ModBus

Configurazione JSON​

Nella sezione seguente viene descritta l'intera configurazione JSON del modulo e vengono illustrati i singoli parametri.

Configurazione di esempio​

Di seguito è riportata una configurazione di esempio per ModBus/TCP:

{
"module": "ModBus",
"comment": "ModBus/TCP config",
"factory": "modbus",
"config": {
"version": 1,
"type": "modbus",
"enable": true,
"pollCycleInMilliseconds": 1000,
"transport": {
"type": "tcp",
"ipAddress": "192.168.0.1",
"ipPortNumber": 502,
"timeoutInMilliseconds": 200
},
"devices": [
{
"enable": true,
"deviceName": "Device Name",
"deviceAddress": 1,
"readChannels": [
{
"name": "Channel Name",
"address": 49152,
"registerType": "HoldingReg",
"registerFormat": "REAL",
"byteOrder": "ABCD",
"bitOffset": 0,
"unit": "",
"scale": 1.0,
"offset": 0.0
}
]
}
]
}
}

Parametri globali del modulo​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoDefaultDescrizione
versionSÌINT1Versione del protocollo ModBus
typeSÌSTRING"modbus"Interfaccia seriale per la comunicazione
enableSÌBOOLtrueInterruttore per la produzione dei dati negli smartCHANNEL
pollCycleInMillisecondsSÌINT1 -Intervallo di interrogazione [ms] degli accessi ModBus
transportSÌJSON ObjektConfigurazione del livello di trasporto ModBus (vedere sotto)
devicesSÌJSON Array von JSON ObjektenElenco dei nodi ModBus

Parametri di trasporto specifici di ModBus/TCP ("transport")​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoDefaultDescrizione
typeSÌSTRING"tcp"Selezione di ModBus/TCP
ipAddressSÌSTRINGIndirizzo IP validoIndirizzo IP del dispositivo ModBus
ipPortNumberSÌINTNumero di porta IP validoNumero di porta IP del dispositivo ModBus (se non diversamente specificato, dovrebbe essere impostato su 502)
timeoutInMillisecondsSÌINT1 -Timeout [ms] per la connessione TCP (se non diversamente specificato, dovrebbe essere impostato su 200)

Parametri di trasporto specifici di ModBus/RTU ("transport")​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoDefaultDescrizione
typeSÌSTRING"rtu"Selezione di ModBus/RTU
baudRateSÌINTBaud rate ModBus validaBaud rate dell'interfaccia seriale
dataBitsSÌINT5 - 8Bit di dati dell'interfaccia seriale
encodingSÌSTRING"rtu"Codifica dei dati ModBus (è supportato esclusivamente "rtu")
paritySÌSTRING"no", "even", "odd"Parità dell'interfaccia seriale
stopBitsSÌDOUBLE1.0, 1.5, 2.0Bit di stop dell'interfaccia seriale
portNameSÌSTRINGDevice file validoFile di dispositivo dell'interfaccia seriale
terminationResistorSÌBOOLtrue, falseInterruttore per la resistenza di terminazione INTERNA
timeoutInMillisecondsSÌINT1 -Timeout [ms] per la connessione TCP (se non diversamente specificato, dovrebbe essere impostato su 200)
deviceTimeoutInMillisecondsNoINT0 -0Timeout aggiuntivo [ms] tra le interrogazioni di nodi ModBus diversi

Parametri del dispositivo ModBus ("devices")​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoDefaultDescrizione
enableSÌBOOLtrueInterruttore per l'attivazione del dispositivo ModBus
deviceNameSÌSTRINGNome del dispositivo ModBus
deviceAddressSÌINT1 -Indirizzo del dispositivo ModBus
readChannelsSÌJSON Array von JSON Objektenvedere sotto

Configurazione dei canali ModBus ("readChannels")​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoDefaultDescrizione
nameSÌSTRINGNome dello smartCHANNEL
addressSÌINTIndirizzo del registro ModBus
registerTypeSÌSTRINGTipo di registro ModBus validoTipo del registro ModBus ("InputReg", "HoldingReg", "Coil", "Status", "0x17" (solo accesso in lettura))
registerFormatSÌSTRINGFormato di registro ModBus validoFormato del registro ModBus ("I8","I16","I32","I64","UI8","UI16","UI32","UI64","REAL","BOOL")
byteOrderSÌSTRINGOrdine dei byte del registro ModBus ("A" = MSB, "B" o "D" = LSB)
bitOffsetSÌUINTOffset in bit del valore da interpretare
unitSÌSTRINGUnità dello smartCHANNEL
scaleSÌDOUBLEScalatura dello smartCHANNEL
offsetSÌDOUBLEOffset dello smartCHANNEL

Configurazione dei canali ModBus ("readChannelGroups")​

In alternativa è possibile riunire più configurazioni di canale in un JSON Array, in modo che i registri ModBus alla base di questo gruppo possano essere letti in un unico passaggio (se il tipo di registro è identico). Questo array readChannelGroup così riunito può quindi essere elencato nel JSON Array di "readChannelGroups", ad es.

"readChannelGroups": [
[
{
"name": "Channel 1",
"address": 49152,
"registerType": "HoldingReg",
"registerFormat": "REAL",
"byteOrder": "ABCD",
"bitOffset": 0,
"unit": "",
"scale": 1.0,
"offset": 0.0
},
{
"name": "Channel 2",
"address": 49158,
"registerType": "HoldingReg",
"registerFormat": "REAL",
"byteOrder": "ABCD",
"bitOffset": 0,
"unit": "",
"scale": 1.0,
"offset": 0.0
}
]
]

In alternativa è possibile specificare "readChannels" oppure "readChannelGroups".

Informazioni sul modulo​

InformazioneValore
AutorioptiMEAS GmbH
da smartCORE0.1
Tipo di moduloProducer
DipendenzeNESSUNA