Помогите решить проблему с Modbus.
Помогите решить проблему с Modbus.
Суть вопроса таков: Master стоит на ESP8266 NodeMcu 0.9, а Slave на STM32 Blue Pill. При передачи с master переменную в slave все хорошо, а если с slave отправляешь переменную в master ни чего не приходит. В чем может быть проблема?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Сержант
- Сообщения: 129
- Зарегистрирован: 11 сен 2015, 20:58
- Имя: Панаётис
Помогите решить проблему с Modbus.
Как то читал на форуме что есть в новой версии проблема в коммуникации Модбас, как альтернативное решение используйте более старую версию Флпрог.
-
- Подполковник
- Сообщения: 1202
- Зарегистрирован: 14 фев 2016, 14:16
- Откуда: kazahstan
- Благодарил (а): 32 раза
- Поблагодарили: 6 раз
Помогите решить проблему с Modbus.
какую? не подскажите?Panagiotis писал(а): 18 окт 2023, 17:40 как альтернативное решение используйте более старую версию Флпрог.
Дело было в переходнике юсб 485,китайцы не правильно припаяли один резистор два дня убил на это

-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
Помогите решить проблему с Modbus.
у меня тоже не работало. связь была через преобразователь rs485 to ttl (без di de)chmak2007 писал(а): 18 окт 2023, 16:55 Суть вопроса таков: Master стоит на ESP8266 NodeMcu 0.9, а Slave на STM32 Blue Pill. При передачи с master переменную в slave все хорошо, а если с slave отправляешь переменную в master ни чего не приходит. В чем может быть проблема?
на плате китайцы припаяли микросхему cd4069.
данную микросхему поменял на 74HC14 и все заработало.
-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
Помогите решить проблему с Modbus.
кто нибудь знает на стм 32 может работать мастер и слэйв одновременно?
кучу ошибок выдает при компиляции
кучу ошибок выдает при компиляции
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Подполковник
- Сообщения: 1202
- Зарегистрирован: 14 фев 2016, 14:16
- Откуда: kazahstan
- Благодарил (а): 32 раза
- Поблагодарили: 6 раз
Помогите решить проблему с Modbus.
модбас не завелся у меня ни на одном порту ,компиляция проходит .Vasiliy0000 писал(а): 27 ноя 2023, 01:55 кто нибудь знает на стм 32 может работать мастер и слэйв одновременно?
-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
Помогите решить проблему с Modbus.
странно.vovka1973 писал(а): 27 ноя 2023, 16:49модбас не завелся у меня ни на одном порту ,компиляция проходит .Vasiliy0000 писал(а): 27 ноя 2023, 01:55 кто нибудь знает на стм 32 может работать мастер и слэйв одновременно?
на сериал 1 модбас мастер работает точно.
а вот вместе со слэйвом чето не компилится
отключил защиту от зависания и все откомпилировалось
Последний раз редактировалось Vasiliy0000 28 ноя 2023, 01:19, всего редактировалось 1 раз.
-
- Подполковник
- Сообщения: 1202
- Зарегистрирован: 14 фев 2016, 14:16
- Откуда: kazahstan
- Благодарил (а): 32 раза
- Поблагодарили: 6 раз
-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
Помогите решить проблему с Modbus.
8.2.3
отключил защиту от зависания и все откомпилировалось
осталось в железе проверить. но у меня модбас без di de
-
- Подполковник
- Сообщения: 1202
- Зарегистрирован: 14 фев 2016, 14:16
- Откуда: kazahstan
- Благодарил (а): 32 раза
- Поблагодарили: 6 раз
Помогите решить проблему с Modbus.
нашел проблему подключил так rx-rx tx-tx и заработалоVasiliy0000 писал(а): 28 ноя 2023, 01:208.2.3
отключил защиту от зависания и все откомпилировалось
осталось в железе проверить. но у меня модбас без di de
-
- Рядовой
- Сообщения: 84
- Зарегистрирован: 01 май 2022, 14:13
- Откуда: Киров
- Имя: Николай
- Поблагодарили: 3 раза
Помогите решить проблему с Modbus.
Частенько на китайских девайсах RX - TX перепутаны.
Также на RS485 интерфейсе A и В местами поменяны. У меня выработалась привычка, подключаю наугад и если не заработало, меняю местами.
-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
Помогите решить проблему с Modbus.
верно rx к rxnickass писал(а): 28 ноя 2023, 23:08Частенько на китайских девайсах RX - TX перепутаны.
Также на RS485 интерфейсе A и В местами поменяны. У меня выработалась привычка, подключаю наугад и если не заработало, меняю местами.
но у меня не работало потому что китайцы вдобавок сэкономили и вместо инвертора hc74hc14 поставили инвертор cd4096.
ps. а еще сейчас появились новые ардуино нано. там вместо ch340 ставят микроконтроллер затертый. и не работает ком порт. программу зашить можно передернув юэсби, а вот модбас на сериал0 работать не будет.
-
- Рядовой
- Сообщения: 84
- Зарегистрирован: 01 май 2022, 14:13
- Откуда: Киров
- Имя: Николай
- Поблагодарили: 3 раза
Помогите решить проблему с Modbus.
Вместо Нано лучше покупать LGT8F, там все работает и цена ниже. По крайней мере у меня с LGT8F проблем не было.
-
- Рядовой
- Сообщения: 49
- Зарегистрирован: 22 сен 2018, 11:19
- Имя: Василий
Помогите решить проблему с Modbus.
проверил. одновременно мастер и слэйв на стм 32 не работают.Vasiliy0000 писал(а): 28 ноя 2023, 01:208.2.3
отключил защиту от зависания и все откомпилировалось
осталось в железе проверить. но у меня модбас без di de
-
- Сержант
- Сообщения: 184
- Зарегистрирован: 06 сен 2019, 19:23
- Имя: Владимир
- Благодарил (а): 11 раз
- Поблагодарили: 7 раз
Помогите решить проблему с Modbus.
Доброго всем времени суток. Есть в наличии датчик температуры ДТС105М (ДТх-RS) с протоколом ModBus. Возможно с него считывать температуру? Как это реализовать в FLProg?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Сержант
- Сообщения: 184
- Зарегистрирован: 06 сен 2019, 19:23
- Имя: Владимир
- Благодарил (а): 11 раз
- Поблагодарили: 7 раз
Помогите решить проблему с Modbus.
Сам датчик через преобразователь USB-485 проверил, данные читаются. Собираю простейший стенд, NANO, плата max485, дисплей (SSD1306), и тишина. Даже на UART0, к которому подключена плата 485 ни чего нет. Может я что делаю не так? Версии программы пробовал менять, была 8.2.3 сейчас 8.1.0.
Отправлено спустя 2 часа 47 минут 23 секунды:
Как вариант есть ещё 7.3.8, можно попробовать.
Отправлено спустя 3 часа 11 минут 47 секунд:
Пробовал устанавливать версию 7.5.2, эффект тот же.
Отправлено спустя 2 часа 47 минут 23 секунды:
Как вариант есть ещё 7.3.8, можно попробовать.
Отправлено спустя 3 часа 11 минут 47 секунд:
Пробовал устанавливать версию 7.5.2, эффект тот же.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Сержант
- Сообщения: 184
- Зарегистрирован: 06 сен 2019, 19:23
- Имя: Владимир
- Благодарил (а): 11 раз
- Поблагодарили: 7 раз
Помогите решить проблему с Modbus.
Доброго всем времени суток. Продолжаю "пытать" температурный датчик. На данный момент результаты следующие:
1. Была замечена интересная закономерность (а может и глюк). Датчик подключен через преобразователь на UART3 меги2560 (1280), пробовал на обоих, эффект тот же. Как уже писал выше, на порту тишина. Но стоило переключиться на Sftware Serial и выбрать эти же пины (UART3), порт "ожил".
2. Вторая проблема была в платах преобразователей 485. При штатных элементах установленных на платах, было "выподание" данных. Пришлось подобрать сопротивления на выходе и частично убрать подтягивающие резисторы. Связь стала стабильной.
3. На данный момент стоит задача конвертировать данные с датчика.
По запросу температуры считывается 4 байта (2 регистра по 2 байта). И как их преобразовать в температуру, ума не приложу. Читал про конвертацию данных с подобных датчиков, там максимум рассматривается 12-ти битные данные. А как с этими быть?
На скрине с анализатора верхняя строчка это запрос, нижняя ответ с датчика.
Отправлено спустя 3 минуты 55 секунд:
Температура в датчике хранится в регистрах 2200-2201 (898-899 и 16-ом).
Отправлено спустя 24 минуты 55 секунд:
P.S. Прошу прощения, сам проект забыл:
1. Была замечена интересная закономерность (а может и глюк). Датчик подключен через преобразователь на UART3 меги2560 (1280), пробовал на обоих, эффект тот же. Как уже писал выше, на порту тишина. Но стоило переключиться на Sftware Serial и выбрать эти же пины (UART3), порт "ожил".
2. Вторая проблема была в платах преобразователей 485. При штатных элементах установленных на платах, было "выподание" данных. Пришлось подобрать сопротивления на выходе и частично убрать подтягивающие резисторы. Связь стала стабильной.
3. На данный момент стоит задача конвертировать данные с датчика.
По запросу температуры считывается 4 байта (2 регистра по 2 байта). И как их преобразовать в температуру, ума не приложу. Читал про конвертацию данных с подобных датчиков, там максимум рассматривается 12-ти битные данные. А как с этими быть?
На скрине с анализатора верхняя строчка это запрос, нижняя ответ с датчика.
Отправлено спустя 3 минуты 55 секунд:
Температура в датчике хранится в регистрах 2200-2201 (898-899 и 16-ом).
Отправлено спустя 24 минуты 55 секунд:
P.S. Прошу прощения, сам проект забыл:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- AlexCrane
- Капитан
- Сообщения: 903
- Зарегистрирован: 20 окт 2017, 13:22
- Откуда: Ульяновск
- Имя: Александр
- Поблагодарили: 12 раз
Помогите решить проблему с Modbus.
Ну так читайте как float (у Вас же читается как LongInteger). Возможно придется поиграться с форматом передачи float ( AB CD, CD AB и т.д.)
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Если нет возможности отблагодарить материально, хотя бы оцени пост....
-
- Сержант
- Сообщения: 184
- Зарегистрирован: 06 сен 2019, 19:23
- Имя: Владимир
- Благодарил (а): 11 раз
- Поблагодарили: 7 раз
Помогите решить проблему с Modbus.
Сейчас как раз пробую порядок битов изменить, посмотрим что получится. FLoat с порядком по умолчанию пробовал, в переменной 0.AlexCrane писал(а): 23 янв 2024, 08:18 Ну так читайте как float (у Вас же читается как LongInteger). Возможно придется поиграться с форматом передачи float ( AB CD, CD AB и т.д.)
Отправлено спустя 10 минут 57 секунд:
Может я конечно цепляюсь к мелочам, но как то подозрительно. При добавлении переменной из ModBus в проект она должна окрашиваться в цвет соответствующий типу данных. В самом ModBus всё нормально, а в проекте все переменные из него чёрные, не зависимо от типа.
Отправлено спустя 1 час 1 минуту 29 секунд:
Перетасовка последовательности регистров результата не дала.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Лейтенант
- Сообщения: 556
- Зарегистрирован: 04 июн 2022, 04:14
- Имя: Михаил
- Благодарил (а): 5 раз
- Поблагодарили: 9 раз
Помогите решить проблему с Modbus.
Подскажите по ModBus плз.
Две есп32, общаются между собой через max485. ModBus RTU. В обоих МК для ModBus используется serial 2.
Две переменные (holding register) передаются, а всё что дальше нет. В обратную сторону пытаюсь передать одну переменную, тоже не проходит.
ФЛП 820.
Всё integer.
В чем может быть дело, куда копать?
Передача не идет даже если на вход переменой модбас константу повесить.
Адреса регистров проверял, имена переменных и в мастере, и в слейве одинаковые, копировал через файл параметры слейв в мастер, всё без толку (
Две есп32, общаются между собой через max485. ModBus RTU. В обоих МК для ModBus используется serial 2.
Две переменные (holding register) передаются, а всё что дальше нет. В обратную сторону пытаюсь передать одну переменную, тоже не проходит.
ФЛП 820.
Всё integer.
В чем может быть дело, куда копать?
Передача не идет даже если на вход переменой модбас константу повесить.
Адреса регистров проверял, имена переменных и в мастере, и в слейве одинаковые, копировал через файл параметры слейв в мастер, всё без толку (
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя