Guten Morgen! Ich möchte gerne mit einem Arduino eine Modbus Kommunikation aufbauen. Dafür benutze ich die ModBusMaster.h. Das Endgerät erwartet sich eine 16bit Adressierung und einen 16bit Wert. ModbusMaster node; uint8_t result; Serial.begin(9600); node.begin(1, Serial); result= node.writeSingleCoil(5500, 23); Hier sollte in das Register 5500 der Wert 23 gespeichert werden, der echte String sieht aber so aus : 01 05 15 7C FF 00 49 EE 01 ADR 05 MODE 15 highADR 7C lowADR FF highVal 00 lowValue 49 highCHK EE lowCHK Warum steht im Value 0xFF00 ? und nicht 0x0017 ? Danke!!
Josch schrieb: > result= node.writeSingleCoil(5500, 23); > > Hier sollte in das Register 5500 der Wert 23 gespeichert werden, der > echte String sieht aber so aus : 01 05 15 7C FF 00 49 EE Du setzt eine einzelne Spule. "FF00" heisst Ein, "0000" heisst Aus. Das wird hier schön erklärt: http://www.simplymodbus.ca Gruß, Falk
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.