Класс QModbusDevice
Класс QModbusDevice является базовым классом для классов Modbus, QModbusServer и QModbusClient. Подробнее...
| Заголовок: | #include <QModbusDevice> |
| qmake: | QT += serialbus |
| С момента: | Qt 5.8 |
| Наследует: | QObject |
| Наследуется для: |
Типы публичного доступа
| Перечисление | ConnectionParameter { SerialPortNameParameter, SerialParityParameter, SerialBaudRateParameter, SerialDataBitsParameter, ..., UserParameter } |
| Перечисление | Error { NoError, ReadError, WriteError, ConnectionError, ..., UnknownError } |
| Перечисление | State { UnconnectedState, ConnectingState, ConnectedState, ClosingState } |
Функции публичного доступа
| QModbusDevice(QObject *parent = nullptr) | |
| ~QModbusDevice() | |
| bool | connectDevice() |
| QVariant | connectionParameter(int parameter) const |
| void | disconnectDevice() |
| Error | error() const |
| QString | errorString() const |
| void | setConnectionParameter(int parameter, const QVariant &value) |
| State | state() const |
- 32 функции публичного доступа унаследованные от QObject
Сигналы
| void | errorOccurred(QModbusDevice::Error error) |
| void | stateChanged(QModbusDevice::State state) |
- 2 сигнала унаследованных от QObject
Защищенные функции
| виртуальный void | close() = 0 |
| виртуальный bool | open() = 0 |
| void | setError(const QString &errorText, QModbusDevice::Error error) |
| void | setState(QModbusDevice::State newState) |
- 9 защищенных функций унаследованных от QObject
Дополнительные унаследованные члены
- 1 свойство унаследованное от QObject
- 1 слот публичного доступа унаследованный от QObject
- 11 статические члены публичного доступа унаследованные от QObject
Подробное описание
Класс QModbusDevice является базовым классом для классов Modbus, QModbusServer и QModbusClient.
Документация по типам членов
Перечисление QModbusDevice::ConnectionParameter
Это перечисление описывает возможные значения, которые можно установить для подключения к устройству Modbus.
Значения общего назначения (и соответствующие типы):
| Постоянная | Значение | Описание |
|---|---|---|
QModbusDevice::SerialPortNameParameter |
0 |
Это параметр, хранящий последовательный порт, используемый для связи с устройством, например, COM1. QString
|
QModbusDevice::SerialParityParameter |
1 |
Этот параметр хранит режим проверки чётности. QSerialPort::Parity
|
QModbusDevice::SerialBaudRateParameter |
2 |
Этот параметр хранит скорость передачи данных для связи. QSerialPort::BaudRate
|
QModbusDevice::SerialDataBitsParameter |
3 |
Этот параметр хранит биты данных в кадре. QSerialPort::DataBits
|
QModbusDevice::SerialStopBitsParameter |
4 |
Этот параметр хранит количество стоповых битов в кадре. QSerialPort::StopBits
|
QModbusDevice::NetworkPortParameter |
5 |
Этот параметр хранит сетевой порт. int
|
QModbusDevice::NetworkAddressParameter |
6 |
Этот параметр хранит адрес хоста для сетевой связи. QString
|
Пользовательские параметры:
| Постоянная | Значение | Описание |
|---|---|---|
QModbusDevice::UserParameter |
0x100 |
Первый параметр, который может использоваться для целей, специфичных для пользователя. QVariant
|
Перечисление QModbusDevice::Error
Это перечисление описывает все возможные условия возникновения ошибок.
| Постоянная | Значение | Описание |
|---|---|---|
QModbusDevice::NoError |
0 |
Ошибок не произошло. |
QModbusDevice::ReadError |
1 |
Во время чтения произошла ошибка. |
QModbusDevice::WriteError |
2 |
Во время записи произошла ошибка. |
QModbusDevice::ConnectionError |
3 |
Ошибка возникла при попытке открыть backend. |
QModbusDevice::ConfigurationError |
4 |
Ошибка возникла при попытке установить параметр конфигурации. |
QModbusDevice::TimeoutError |
5 |
Произошло истечение времени ожидания во время ввода-вывода. Операция ввода-вывода не завершилась в заданный период времени. |
QModbusDevice::ProtocolError |
6 |
Произошла ошибка протокола Modbus. |
QModbusDevice::ReplyAbortedError |
7 |
Ответ был прерван из-за разрыва соединения с устройством. |
QModbusDevice::UnknownError |
8 |
Произошла неизвестная ошибка. |
Перечисление QModbusDevice::State
Это перечисление описывает все возможные состояния устройства.
| Постоянная | Значение | Описание |
|---|---|---|
QModbusDevice::UnconnectedState |
0 |
Устройство отключено. |
QModbusDevice::ConnectingState |
1 |
Устройство подключается. |
QModbusDevice::ConnectedState |
2 |
Устройство подключено к сети Modbus. |
QModbusDevice::ClosingState |
3 |
Устройство закрывается. |
Документация по функциям членов
QModbusDevice::QModbusDevice(QObject *parent = nullptr)
Создаёт устройство Modbus с указанным parent.
QModbusDevice::~QModbusDevice()
Удаляет экземпляр QModbusDevice.
[pure virtual protected] void QModbusDevice::close()
Эта функция отвечает за закрытие соединения Modbus. Реализация должна гарантировать, что состояние экземпляра state() установлено в QModbusDevice::UnconnectedState.
См. также disconnectDevice().
bool QModbusDevice::connectDevice()
Подключает устройство к сети Modbus. Возвращает true при успехе; в противном случае false.
Эта функция вызывает open() как часть своей реализации.
QVariant QModbusDevice::connectionParameter(int parameter) const
Возвращает значение, связанное с заданным параметром соединения parameter. Возвращаемое значение может быть пустым.
По умолчанию QModbusDevice инициализируется некоторыми общими значениями. Параметры последовательного порта: чётность, скорость 19200 бит в секунду, 8 бит данных и 1 стоп-бит. Параметры сетевого подключения: адрес хоста — локальный хост, порт — 502.
Примечание: Для успешного подключения по последовательному каналу необходимо установить SerialPortNameParameter на допустимый порт связи. Информация о допустимых последовательных портах может быть получена из QSerialPortInfo.
Примечание: Если устройство уже подключено, настройки учитываются после повторного подключения устройства.
См. также setConnectionParameter() и ConnectionParameter.
void QModbusDevice::disconnectDevice()
Отключает устройство.
Эта функция вызывает close() как часть своей реализации.
Error QModbusDevice::error() const
Возвращает состояние ошибки устройства.
См. также setError() и QModbusDevice::Error.
[signal] void QModbusDevice::errorOccurred(QModbusDevice::Error error)
Этот сигнал излучается при возникновении ошибки типа error.
QString QModbusDevice::errorString() const
Возвращает текстовое описание ошибки устройства.
См. также QModbusDevice::Error.
[pure virtual protected] bool QModbusDevice::open()
Эта функция вызывается connectDevice(). Подклассы должны предоставить реализацию, возвращающую true при успешном подключении Modbus или false в противном случае.
Реализация должна гарантировать, что состояние экземпляра state() установлено в QModbusDevice::ConnectedState при успехе; в противном случае QModbusDevice::UnconnectedState.
См. также connectDevice().
void QModbusDevice::setConnectionParameter(int parameter, const QVariant &value)
Устанавливает значение parameter в value. Если parameter уже существует, предыдущее значение перезаписывается. Действующее или активное соединение не затрагивается такими изменениями параметров.
См. также ConnectionParameter и connectionParameter().
[protected] void QModbusDevice::setError(const QString &errorText, QModbusDevice::Error error)
Устанавливает состояние ошибки устройства. Реализации устройств ModBus должны использовать эту функцию в случае ошибки для установки типа error и описания errorText.
См. также error() и QModbusDevice::Error.
[protected] void QModbusDevice::setState(QModbusDevice::State newState)
Устанавливает состояние устройства в newState. Реализации устройств Modbus должны использовать эту функцию для обновления состояния устройства.
См. также state().
State QModbusDevice::state() const
Возвращает текущее состояние устройства.
См. также setState() и stateChanged().
[signal] void QModbusDevice::stateChanged(QModbusDevice::State state)
Этот сигнал излучается каждый раз, когда состояние устройства изменяется. Новое состояние представлено state.
См. также setState() и state().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qmodbusdevice.html