Function codes Modbus: Prüfungsfragen mit Musterlösungen
Übungsfragen aus dem Block Function codes der Modbus Industrial-Zertifizierung. Ausführliche Lösungen, öffentliche Quellen, ohne Registrierung lesbar.
Fragen zum Thema "Function codes"
Q01
Welcher Modbus-Funktionscode wird zum LESEN der Holding Registers (16-Bit-Register, Lese-/Schreibzugriff) eines Slaves verwendet?- A.0x01 (Read Coils)
- B.0x02 (Read Discrete Inputs)
- C.0x03 (Read Holding Registers)
- D.0x04 (Read Input Registers)
4. Function codes· Lesen Coils/Register· MittelRichtige AntwortC — 0x03 (Read Holding Registers)Lerntipp0x03 'Read Holding Registers' ist korrekt: Es liest die 16-Bit-R/W-Register und ist damit die am häufigsten genutzte Funktion für Analogwerte wie Temperatur, Druck, Zähler oder Sollwert. 0x01 (A) ist falsch, weil 'Read Coils' binäre R/W-Ausgänge liest, keine 16-Bit-Register. 0x02 (B) ist falsch, weil 'Read Discrete Inputs' nur binäre Eingänge (read only) liest. 0x04 (D) ist falsch, weil 'Read Input Registers' zwar 16-Bit-Register liest, diese aber nur lesbar sind und nicht den R/W-Holding-Registers entsprechen.
Q02
Die Funktion 0x06 'Write Single Register' schreibt ein einzelnes 16-Bit-Holding-Register in einem Modbus-Slave; Adresse und Wert sind in der Anfrage jeweils 16 Bit lang.WahrFalsch4. Function codes· Write Single Register (0x06)· LeichtRichtige AntwortWahrLerntippAufbau der 0x06-Anfrage: Funktionscode 1 Byte (0x06), Registeradresse 2 Bytes (0-65535) und Registerwert 2 Bytes (0-65535) ergeben 5 Bytes PDU (zuzüglich Transport-Header). Das Pendant ist 0x10 'Write Multiple Registers' zum Schreiben mehrerer aufeinanderfolgender Register in einem Telegramm, mit einer Obergrenze von 123 Registern.