Помогите решить проблему с Modbus.

Использование протокола Modbus
chmak2007
Сержант
Сообщения: 159
Зарегистрирован: 06 сен 2015, 13:28
Откуда: Саров

Помогите решить проблему с Modbus.

Сообщение chmak2007 »

Суть вопроса таков: Master стоит на ESP8266 NodeMcu 0.9, а Slave на STM32 Blue Pill. При передачи с master переменную в slave все хорошо, а если с slave отправляешь переменную в master ни чего не приходит. В чем может быть проблема?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Panagiotis
Сержант
Сообщения: 129
Зарегистрирован: 11 сен 2015, 20:58
Имя: Панаётис

Помогите решить проблему с Modbus.

Сообщение Panagiotis »

Как то читал на форуме что есть в новой версии проблема в коммуникации Модбас, как альтернативное решение используйте более старую версию Флпрог.
vovka1973
Подполковник
Сообщения: 1202
Зарегистрирован: 14 фев 2016, 14:16
Откуда: kazahstan
Благодарил (а): 32 раза
Поблагодарили: 6 раз

Помогите решить проблему с Modbus.

Сообщение vovka1973 »

Panagiotis писал(а): 18 окт 2023, 17:40 как альтернативное решение используйте более старую версию Флпрог.
какую? не подскажите?
Дело было в переходнике юсб 485,китайцы не правильно припаяли один резистор два дня убил на это :D
Изображение
Vasiliy0000
Рядовой
Сообщения: 49
Зарегистрирован: 22 сен 2018, 11:19
Имя: Василий

Помогите решить проблему с Modbus.

Сообщение Vasiliy0000 »

chmak2007 писал(а): 18 окт 2023, 16:55 Суть вопроса таков: Master стоит на ESP8266 NodeMcu 0.9, а Slave на STM32 Blue Pill. При передачи с master переменную в slave все хорошо, а если с slave отправляешь переменную в master ни чего не приходит. В чем может быть проблема?
у меня тоже не работало. связь была через преобразователь rs485 to ttl (без di de)
на плате китайцы припаяли микросхему cd4069.
данную микросхему поменял на 74HC14 и все заработало.
Vasiliy0000
Рядовой
Сообщения: 49
Зарегистрирован: 22 сен 2018, 11:19
Имя: Василий

Помогите решить проблему с Modbus.

Сообщение Vasiliy0000 »

кто нибудь знает на стм 32 может работать мастер и слэйв одновременно?
кучу ошибок выдает при компиляции
Новый текстовый документ.txt
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vovka1973
Подполковник
Сообщения: 1202
Зарегистрирован: 14 фев 2016, 14:16
Откуда: kazahstan
Благодарил (а): 32 раза
Поблагодарили: 6 раз

Помогите решить проблему с Modbus.

Сообщение vovka1973 »

Vasiliy0000 писал(а): 27 ноя 2023, 01:55 кто нибудь знает на стм 32 может работать мастер и слэйв одновременно?
модбас не завелся у меня ни на одном порту ,компиляция проходит .
Изображение
Vasiliy0000
Рядовой
Сообщения: 49
Зарегистрирован: 22 сен 2018, 11:19
Имя: Василий

Помогите решить проблему с Modbus.

Сообщение Vasiliy0000 »

vovka1973 писал(а): 27 ноя 2023, 16:49
Vasiliy0000 писал(а): 27 ноя 2023, 01:55 кто нибудь знает на стм 32 может работать мастер и слэйв одновременно?
модбас не завелся у меня ни на одном порту ,компиляция проходит .
странно.
на сериал 1 модбас мастер работает точно.
а вот вместе со слэйвом чето не компилится

отключил защиту от зависания и все откомпилировалось
Последний раз редактировалось Vasiliy0000 28 ноя 2023, 01:19, всего редактировалось 1 раз.
vovka1973
Подполковник
Сообщения: 1202
Зарегистрирован: 14 фев 2016, 14:16
Откуда: kazahstan
Благодарил (а): 32 раза
Поблагодарили: 6 раз

Помогите решить проблему с Modbus.

Сообщение vovka1973 »

Vasiliy0000 писал(а): 27 ноя 2023, 18:20 на сериал 1 модбас мастер работает точно.
на какой версии программы?
Изображение
Vasiliy0000
Рядовой
Сообщения: 49
Зарегистрирован: 22 сен 2018, 11:19
Имя: Василий

Помогите решить проблему с Modbus.

Сообщение Vasiliy0000 »

vovka1973 писал(а): 27 ноя 2023, 18:38
Vasiliy0000 писал(а): 27 ноя 2023, 18:20 на сериал 1 модбас мастер работает точно.
на какой версии программы?
8.2.3

отключил защиту от зависания и все откомпилировалось

осталось в железе проверить. но у меня модбас без di de
vovka1973
Подполковник
Сообщения: 1202
Зарегистрирован: 14 фев 2016, 14:16
Откуда: kazahstan
Благодарил (а): 32 раза
Поблагодарили: 6 раз

Помогите решить проблему с Modbus.

Сообщение vovka1973 »

Vasiliy0000 писал(а): 28 ноя 2023, 01:20
vovka1973 писал(а): 27 ноя 2023, 18:38
Vasiliy0000 писал(а): 27 ноя 2023, 18:20 на сериал 1 модбас мастер работает точно.
на какой версии программы?
8.2.3

отключил защиту от зависания и все откомпилировалось

осталось в железе проверить. но у меня модбас без di de
нашел проблему подключил так rx-rx tx-tx и заработало
Изображение
nickass
Рядовой
Сообщения: 84
Зарегистрирован: 01 май 2022, 14:13
Откуда: Киров
Имя: Николай
Поблагодарили: 3 раза

Помогите решить проблему с Modbus.

Сообщение nickass »

vovka1973 писал(а): 28 ноя 2023, 15:34 подключил так rx-rx tx-tx и заработало
Частенько на китайских девайсах RX - TX перепутаны.
Также на RS485 интерфейсе A и В местами поменяны. У меня выработалась привычка, подключаю наугад и если не заработало, меняю местами.
Vasiliy0000
Рядовой
Сообщения: 49
Зарегистрирован: 22 сен 2018, 11:19
Имя: Василий

Помогите решить проблему с Modbus.

Сообщение Vasiliy0000 »

nickass писал(а): 28 ноя 2023, 23:08
vovka1973 писал(а): 28 ноя 2023, 15:34 подключил так rx-rx tx-tx и заработало
Частенько на китайских девайсах RX - TX перепутаны.
Также на RS485 интерфейсе A и В местами поменяны. У меня выработалась привычка, подключаю наугад и если не заработало, меняю местами.
верно rx к rx
но у меня не работало потому что китайцы вдобавок сэкономили и вместо инвертора hc74hc14 поставили инвертор cd4096.

ps. а еще сейчас появились новые ардуино нано. там вместо ch340 ставят микроконтроллер затертый. и не работает ком порт. программу зашить можно передернув юэсби, а вот модбас на сериал0 работать не будет.
nickass
Рядовой
Сообщения: 84
Зарегистрирован: 01 май 2022, 14:13
Откуда: Киров
Имя: Николай
Поблагодарили: 3 раза

Помогите решить проблему с Modbus.

Сообщение nickass »

Вместо Нано лучше покупать LGT8F, там все работает и цена ниже. По крайней мере у меня с LGT8F проблем не было.
Vasiliy0000
Рядовой
Сообщения: 49
Зарегистрирован: 22 сен 2018, 11:19
Имя: Василий

Помогите решить проблему с Modbus.

Сообщение Vasiliy0000 »

Vasiliy0000 писал(а): 28 ноя 2023, 01:20
vovka1973 писал(а): 27 ноя 2023, 18:38
Vasiliy0000 писал(а): 27 ноя 2023, 18:20 на сериал 1 модбас мастер работает точно.
на какой версии программы?
8.2.3

отключил защиту от зависания и все откомпилировалось

осталось в железе проверить. но у меня модбас без di de
проверил. одновременно мастер и слэйв на стм 32 не работают.
vlad1451
Сержант
Сообщения: 184
Зарегистрирован: 06 сен 2019, 19:23
Имя: Владимир
Благодарил (а): 11 раз
Поблагодарили: 7 раз

Помогите решить проблему с Modbus.

Сообщение vlad1451 »

Доброго всем времени суток. Есть в наличии датчик температуры ДТС105М (ДТх-RS) с протоколом ModBus. Возможно с него считывать температуру? Как это реализовать в FLProg?
re_dth-rs_1-ru-92806-1.8.pdf
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vlad1451
Сержант
Сообщения: 184
Зарегистрирован: 06 сен 2019, 19:23
Имя: Владимир
Благодарил (а): 11 раз
Поблагодарили: 7 раз

Помогите решить проблему с Modbus.

Сообщение vlad1451 »

Сам датчик через преобразователь USB-485 проверил, данные читаются. Собираю простейший стенд, NANO, плата max485, дисплей (SSD1306), и тишина. Даже на UART0, к которому подключена плата 485 ни чего нет. Может я что делаю не так? Версии программы пробовал менять, была 8.2.3 сейчас 8.1.0.
Test_MB_328.flp
Отправлено спустя 2 часа 47 минут 23 секунды:
Как вариант есть ещё 7.3.8, можно попробовать.

Отправлено спустя 3 часа 11 минут 47 секунд:
Пробовал устанавливать версию 7.5.2, эффект тот же.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
vlad1451
Сержант
Сообщения: 184
Зарегистрирован: 06 сен 2019, 19:23
Имя: Владимир
Благодарил (а): 11 раз
Поблагодарили: 7 раз

Помогите решить проблему с Modbus.

Сообщение vlad1451 »

Доброго всем времени суток. Продолжаю "пытать" температурный датчик. На данный момент результаты следующие:
1. Была замечена интересная закономерность (а может и глюк). Датчик подключен через преобразователь на UART3 меги2560 (1280), пробовал на обоих, эффект тот же. Как уже писал выше, на порту тишина. Но стоило переключиться на Sftware Serial и выбрать эти же пины (UART3), порт "ожил".
2. Вторая проблема была в платах преобразователей 485. При штатных элементах установленных на платах, было "выподание" данных. Пришлось подобрать сопротивления на выходе и частично убрать подтягивающие резисторы. Связь стала стабильной.
3. На данный момент стоит задача конвертировать данные с датчика.

По запросу температуры считывается 4 байта (2 регистра по 2 байта). И как их преобразовать в температуру, ума не приложу. Читал про конвертацию данных с подобных датчиков, там максимум рассматривается 12-ти битные данные. А как с этими быть?

На скрине с анализатора верхняя строчка это запрос, нижняя ответ с датчика.
изображение_2024-01-23_091950.png
Отправлено спустя 3 минуты 55 секунд:
Температура в датчике хранится в регистрах 2200-2201 (898-899 и 16-ом).

Отправлено спустя 24 минуты 55 секунд:
P.S. Прошу прощения, сам проект забыл:
2560_MB.zip
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
AlexCrane
Капитан
Сообщения: 903
Зарегистрирован: 20 окт 2017, 13:22
Откуда: Ульяновск
Имя: Александр
Поблагодарили: 12 раз

Помогите решить проблему с Modbus.

Сообщение AlexCrane »

Ну так читайте как float (у Вас же читается как LongInteger). Возможно придется поиграться с форматом передачи float ( AB CD, CD AB и т.д.)
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
vlad1451
Сержант
Сообщения: 184
Зарегистрирован: 06 сен 2019, 19:23
Имя: Владимир
Благодарил (а): 11 раз
Поблагодарили: 7 раз

Помогите решить проблему с Modbus.

Сообщение vlad1451 »

AlexCrane писал(а): 23 янв 2024, 08:18 Ну так читайте как float (у Вас же читается как LongInteger). Возможно придется поиграться с форматом передачи float ( AB CD, CD AB и т.д.)
Сейчас как раз пробую порядок битов изменить, посмотрим что получится. FLoat с порядком по умолчанию пробовал, в переменной 0.

Отправлено спустя 10 минут 57 секунд:
Может я конечно цепляюсь к мелочам, но как то подозрительно. При добавлении переменной из ModBus в проект она должна окрашиваться в цвет соответствующий типу данных. В самом ModBus всё нормально, а в проекте все переменные из него чёрные, не зависимо от типа.
067.jpg
Отправлено спустя 1 час 1 минуту 29 секунд:
Перетасовка последовательности регистров результата не дала.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
WildCat
Лейтенант
Сообщения: 556
Зарегистрирован: 04 июн 2022, 04:14
Имя: Михаил
Благодарил (а): 5 раз
Поблагодарили: 9 раз

Помогите решить проблему с Modbus.

Сообщение WildCat »

Подскажите по ModBus плз.

Две есп32, общаются между собой через max485. ModBus RTU. В обоих МК для ModBus используется serial 2.

Две переменные (holding register) передаются, а всё что дальше нет. В обратную сторону пытаюсь передать одну переменную, тоже не проходит.
ФЛП 820.

Всё integer.

В чем может быть дело, куда копать?
Передача не идет даже если на вход переменой модбас константу повесить.

Адреса регистров проверял, имена переменных и в мастере, и в слейве одинаковые, копировал через файл параметры слейв в мастер, всё без толку (
Ответить

Вернуться в «Modbus»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя