Russian Qt Forum

Qt => Работа с сетью => Тема начата: sergek от Август 31, 2017, 11:11



Название: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: sergek от Август 31, 2017, 11:11
Коллеги,
может, кого-нибудь, кто работает с библиотекой Qt Serial Bus и прототколом modbus, заинтересует это.
Сделал на основе QModbusRtuSerialMaster класс клиента, работающего по TCP/IP с протоколом modbus RTU. Вроде работает, но при нагрузке 10-15 запросов подряд иногда выскакивает assert (ASSERT failure in processQueue: "response timer active"). Я эту проблему пока отложу, но, может быть, для кого-нибудь эта тема интересна? Вдруг проблема на поверхности, а я не вижу (pimpl - не очень дружественный шаблон :))
Могу выложить исходники или послать в личку. Может, кто-то уже решал подобную задачу.


Название: Re: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: Ilya9797 от Август 25, 2021, 17:20
Добрый день! Как раз разбираюсь с данной темой, можно взглянуть на ваши исходники?


Название: Re: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: tux от Август 25, 2021, 21:45
Доброго времени суток!
Любопытно бы посмотреть. Заодно и под linux бы проверил.


Название: Re: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: sergek от Август 27, 2021, 23:53
Все работает, проверено ))


Название: Re: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: tux от Август 28, 2021, 09:24
Так 5.13 под Linux нет и не будет, видимо. А так, modbus - протокол удобный. Другое дело, что реализации могут быть весьма занятные.
Ладно, подождём штатной реализации в 6.2.


Название: Re: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: sergek от Август 28, 2021, 11:03
Что значит "нет и не будет", в репозиториях, что ли? Ну и фиг с ними. Можно же поставить инсталлятором. Если без графической оболочки, то можно собрать из исходников (silent установку я так и не осилил).
У меня есть версии модуля rtu на tcp, начиная с 5.6, кажется. Но там реализация modbus корявенькая и были какие-то проблемы, которые нужно было патчить в основных модулях. Модули полностью переработаны, боюсь ошибиться когда, но в 5.10 уже была новая реализация, простая и понятная. Поэтому, не советую использовать более раннюю версию.
Я на 5.13.0 остановился потому, что в следующих релизах была ошибка, которая исправлена в 5.14. Но переходить на исправленную версию мне было уже поздно. Но и нареканий на 5.13.0 у меня нет.


Название: Re: Qt Serial Bus - modbus RTU через TCP/IP
Отправлено: tux от Август 28, 2021, 21:19
Попутал я что-то. С 5.15.3. Он, как раз, коммерческий.