Modbus

Koble til en Modbus TCP-enhet og les eller skriv registre og coils som tagger.

Modbus leser og skriver registre og coils i en Modbus TCP-enhet. Du legger til enheten med nettverkstilkoblingen, og oppretter deretter en tagg for hvert register eller hver coil du vil samle inn.

Koble til en Modbus-enhet

InnstillingHva den gjør
NavnIdentifiserer enheten i prosjektet. Et valgfritt egendefinert navn gir den et mer lettlest alias.
AktivertOm THMI kobler til enheten for å motta data. Slå den av for å stoppe all kommunikasjon og verdiinnsamling uten å slette enheten.
VertVertsnavnet eller IP-adressen som brukes for å nå enheten i nettverket.
PortTCP-porten til Modbus-enheten. Standard er 502, standardporten for Modbus TCP.
TidsavbruddHvor lenge det skal ventes på svar før forespørselen regnes som mislykket. Standard er 5 sekunder (5000 ms).
Enhets-IDIdentifiserer den aktuelle enheten i Modbus-nettverket. Brukes når flere enheter står bak én gateway. Verdien er 0–255 (standard 1).

Lese en verdi: funksjonen

Hver Modbus-tagg leser fra ett av fire områder, som velges med funksjonskategorien. Den bestemmer også om verdien kan skrives tilbake:

FunksjonskategoriInneholderTilgang
CoilEnkeltbiter (på/av)Les og skriv
Diskrete inngangerEnkeltbiter (på/av)Skrivebeskyttet
Holdingregistre16-bits registreLes og skriv
Inngangsregistre16-bits registreSkrivebeskyttet

Coils og diskrete innganger er enkeltbiter, så de tilsvarer datatypen bool. Holdingregistre og inngangsregistre er på 16 bit, så større tall leses fra flere påfølgende registre:

DatatypeAntall registre
int16 / uint161 register
int32 / uint32 / float2 registre
int64 / double4 registre

Startadressen er adressen til registeret eller coilen der taggen begynner å lese. Arraydatatyper leser flere verdier etter hverandre derfra; angi antall verdier for å styre hvor mange.

Byte- og ordrekkefølge (byttemodus)

Når en verdi strekker seg over mer enn ett register, er enheter uenige om i hvilken rekkefølge bytene og 16-bits ordene ligger. Byttemodus korrigerer for dette, slik at tallet settes riktig sammen. Ta 32-bits verdien 0x12345678, lest fra to registre:

ByttemodusVirkning0x12345678 blir
IngenBytene slik de mottas.12 34 56 78
ByteBytter de to bytene i hvert ord.34 12 78 56
OrdBytter rekkefølgen på ordene.56 78 12 34
Byte og ordBytter begge.78 56 34 12

Hvis et tall som går over flere registre, leses som tull eller er helt feil, er det nesten alltid byttemodusen som må justeres. Tilpass den til byterekkefølgen i dokumentasjonen for enheten. Byttemodus gjelder ikke for verdier i coils og diskrete innganger, som er enkeltbiter.

Se Datatyper for hele listen og hva hver datatype betyr.

Polling og skriving

  • Pollingintervall: hvor ofte, i millisekunder, THMI leser verdien. Standard er 5000 (5 sekunder).
  • Skrivbar: lar brukere med tillatelse endre verdien manuelt (se Verdier og historikk). Innstillingen er bare tilgjengelig for funksjonskategoriene som kan leses og skrives (coils og holdingregistre) og for enkeltverdier (ikke arrayer); diskrete innganger og inngangsregistre er alltid skrivebeskyttet.