Поддержка разработчика очень вялая , отвечают раз в 5 дней и не какой конкретики, типо с смотри и читай мануал а там информация очень размытая.
Поддержка разработчика очень вялая , отвечают раз в 5 дней и не какой конкретики, типо с смотри и читай мануал а там информация очень размытая.
Видимо потому, что фактически это прозрачный шлюз с возможностью преобразования Modbus RTU в TCP и обратно. И для чего то имеющее подключение по MQTT к различным облакам...
Да, так и есть , необходимо посылать команду через mqtt клиента в хец формате, но не все клиенты особенно мобильные дают это делать.
Я подключал такие шлюзы через бесплатные публичные MQTT-сервера к приложениям на Android.
Идея очень проста:
На 21 стр. в самом верху даны образцы настроек формы для прибора и формы для клиента.
Используется всего 2 топика: Subscribe-топик и Publish-топик, пусть мы дадим им имена "Request" и "Response".
Соответственно, прибор при включении подписывается на "Request".
Когда клиент положит в него массив байт с запросом, то MQTT-сервер тут же перешлет его на прибор через этот топик.
Прибор извлекает его из MQTT-пакета как есть и транслирует в сеть RS-485.
Получив ответ из сети, он публикует его в топике "Response".
Соответственно, клиентское приложение при подключении к MQTT, наоборот, подписывается на "Response" и получает ответ сразу же как прибор его опубликует на MQTT-сервере.
Такой способ обмена я использую при работе с модулем SIM800L (который, кстати, впаян в ПМ01).
Он использует только GPRS соединение с Интернетом и не требует статических IP (VPN и т.д.)
причем есть ограничение на длину, 40 символов ASCII и 20 символов HEX - страницы 21-22. В общем особо каши не сваришь...
Проблема в том, кто будет преобразовывать стандартный запрос например Modbus RTU в строку топика и преобразовывать потом обратно из строки ответа в ответ от Modbus устройства ? Видимо Вася Форточкин
Последний раз редактировалось melky; 16.03.2023 в 20:10.
Это для Heartbeat Packet.
Написано: This heartbeat packet is not MQTT heartbeat and need to be turned of in MQTT client mode.
В описании MQTT-протокола сказано, что можно за раз передать массив размером 268 435 455 байт.
Кстати, в моем случае передавались/принимались ОВЕН-запросы/ответы (шлюз работал с ОВЕН-сетью).
В моем случае само Android приложение формировало стандартный ОВЕН-запрос и заворачивало его в MQTT-пакет и обратно.
Проблема была в другом - полное время прохождения пакета через всю цепочку (особенно по сотовым сетям).
Среднее время ответа было около 0.8 секунды, но периодически приходилось ждать до 5 сек.
Так а в случае с Modbus разве не получается Heartbeat Packet ?
MQTT символьный протокол, Modbus скорее бинарный. Овен вроде тоже символьный.