이 페이지에서

QModbusTcpServer Class

QModbusTcpServer 클래스는 Modbus 클라이언트와의 통신에 TCP 서버를 사용하는 Modbus 서버를 나타냅니다. 더 보기...

헤더: #include <QModbusTcpServer>
CMake: find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake: QT += serialbus
상속: QModbusServer

공개 함수

QModbusTcpServer(QObject *parent = nullptr)
virtual ~QModbusTcpServer()
void installConnectionObserver(QModbusTcpConnectionObserver *observer)

신호

void modbusClientDisconnected(QTcpSocket *modbusClient)

재구현된 보호 함수

virtual void close() override
virtual bool open() override
virtual QModbusResponse processRequest(const QModbusPdu &request) override

상세 설명

Modbus를 통한 통신에는 단일 Modbus 클라이언트 인스턴스와 단일 Modbus 서버 간의 상호 작용이 필요합니다. 이 클래스는 TCP 서버를 통해 Modbus 서버 구현을 제공합니다.

Modbus TCP 네트워크에는 여러 대의 서버가 존재할 수 있습니다. 서버는 ` QModbusTcpClient`로 표현되는 클라이언트 장치에 의해 읽기/쓰기 작업이 수행됩니다.

멤버 함수 문서

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

지정된 ` parent`을 사용하여 `QModbusTcpServer`를 생성합니다. ` serverAddress `의 기본값은 ` 255`입니다.

[virtual noexcept] QModbusTcpServer::~QModbusTcpServer()

QModbusTcpServer 인스턴스를 삭제합니다.

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

QModbusDevice::close()을 재구현합니다.

void QModbusTcpServer::installConnectionObserver(QModbusTcpConnectionObserver *observer)

이 서버 인스턴스에 새로운 TCP 클라이언트가 연결될 때 알림을 수신하는 데 사용할 수 있는 ` observer `를 설치합니다. 또한, ` observer `를 사용하여 들어오는 TCP 연결을 거부할 수 있습니다.

QModbusTcpServer 지정된 observer 의 소유권을 인수합니다. 이전에 설정된 모든 관찰자는 삭제됩니다. 이 함수를 nullptr 를 매개변수로 전달하여 호출하면 관찰자를 제거할 수 있습니다.

QModbusTcpConnectionObserver도 참조하십시오 .

[signal] void QModbusTcpServer::modbusClientDisconnected(QTcpSocket *modbusClient)

이 신호는 현재 연결된 TCP 기반 modbusClient 가 이 Modbus TCP 서버와의 연결을 끊을 때 발생합니다. 여러 개의 TCP 클라이언트가 동시에 연결되어 있을 수 있다는 점에 유의하십시오.

installConnectionObserver()를 통해 QModbusTcpConnectionObserver 를 설치하면 들어오는 새 연결에 대한 알림을 수신할 수 있습니다.

installConnectionObserver항목도 참조하십시오 .

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

QModbusDevice::open()을 재구현합니다.

[override virtual protected] QModbusResponse QModbusTcpServer::processRequest(const QModbusPdu &request)

QModbusServer::processRequest(const QModbusPdu &request)를 재구현합니다.

request 로 지정된 Modbus 클라이언트 요청을 처리하고 Modbus 응답을 반환합니다.

다음 Modbus 기능 코드는 Modbus 애플리케이션 프로토콜 사양 1.1b에 따라 시리얼 라인 전용이므로 필터링됩니다:

TCP 서버에 대한 요청에는 예외 코드 QModbusExceptionResponse::IllegalFunction이 포함된 Modbus 예외 응답이 반환됩니다.

© 2026 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.