QModbusRtuSerialClient Class

Die Klasse QModbusRtuSerialClient repräsentiert einen Modbus-Client, der einen seriellen Bus für die Kommunikation mit dem Modbus-Server verwendet. Mehr...

Header: #include <QModbusRtuSerialClient>
CMake: find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake: QT += serialbus
Seit: Qt 6.2
Vererbt: QModbusClient

Öffentliche Funktionen

QModbusRtuSerialClient(QObject *parent = nullptr)
int interFrameDelay() const
void setInterFrameDelay(int microseconds)
void setTurnaroundDelay(int turnaroundDelay)
int turnaroundDelay() const

Reimplementierte geschützte Funktionen

virtual void close() override
virtual bool open() override

Detaillierte Beschreibung

Die Kommunikation über Modbus erfordert die Interaktion zwischen einer einzelnen Modbus-Client-Instanz und mehreren Modbus-Servern. Diese Klasse stellt die Client-Implementierung über eine serielle Schnittstelle bereit.

Dokumentation der Mitgliedsfunktionen

[explicit] QModbusRtuSerialClient::QModbusRtuSerialClient(QObject *parent = nullptr)

Konstruiert einen seriellen Modbus-Client mit der angegebenen parent.

[override virtual protected] void QModbusRtuSerialClient::close()

Reimplements: QModbusDevice::close().

int QModbusRtuSerialClient::interFrameDelay() const

Gibt die Anzahl der Mikrosekunden für das stille Intervall zwischen zwei aufeinanderfolgenden Modbus-Nachrichten zurück.

Siehe auch setInterFrameDelay().

[override virtual protected] bool QModbusRtuSerialClient::open()

Reimplements: QModbusDevice::open().

Hinweis: Beim Aufruf dieser Funktion werden bereits gepufferte Daten von der seriellen Schnittstelle entfernt.

void QModbusRtuSerialClient::setInterFrameDelay(int microseconds)

Legt die Anzahl von microseconds für das stille Intervall zwischen zwei aufeinanderfolgenden Modbus-Nachrichten fest. Standardmäßig verwendet die Klassenimplementierung einen vorberechneten Wert gemäß der Modbus-Spezifikation. Eine aktive oder laufende Verbindung ist von solchen Verzögerungsänderungen nicht betroffen.

Hinweis: Wenn microseconds auf -1 gesetzt ist oder microseconds kleiner als die vorberechnete Verzögerung ist, wird dieser vorberechnete Wert als Rahmenverzögerung verwendet.

Siehe auch interFrameDelay().

void QModbusRtuSerialClient::setTurnaroundDelay(int turnaroundDelay)

Setzt die Anzahl der Millisekunden für das stille Intervall zwischen einem Modbus-Broadcast und einer nachfolgenden Modbus-Nachricht auf turnaroundDelay. Normalerweise liegt die Umschaltverzögerung im Bereich von 100 bis 200 Millisekunden.

Siehe auch turnaroundDelay().

int QModbusRtuSerialClient::turnaroundDelay() const

Gibt die Anzahl der Millisekunden für das stille Intervall zwischen einem Modbus-Broadcast und einer darauffolgenden Modbus-Nachricht zurück. Der Standardwert ist auf 100 Millisekunden gesetzt.

Siehe auch setTurnaroundDelay().

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.