Заменил модули, перестал работать modbus

Использование протокола Modbus
Ответить
Dwail
Рядовой
Сообщения: 16
Зарегистрирован: 23 июн 2019, 19:17
Имя: Анатолий

Заменил модули, перестал работать modbus

Сообщение Dwail »

Изначальная задача: передавать числа между Master и Slave.
Для эксперимента собрал простую сборку, Master: Uno+самый дешевый модуль rs485 Изображение
Slave аналогичен, только добавлен дисплей на чипе HD44780.
И сделал примитивную программу, отправить число с мастера.
Проверил, все работает, число передано и выведено на экран.

Затем поменял устройства RS485 на такие Ссылка на Али Они отличаются как минимум тем, что нет выхода на Pe-De. Соответственно в настройках поставил пин Pe-De "нет".
Заливаю прошивку, число не передается. Говорят что на этих платах бывают перепутаны TX-RX, пробовал разные варианты подключения - результат тот же.

Не могу понять в чем проблема. Нужна помощь.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Заменил модули, перестал работать modbus

Сообщение ecoins »

Dwail писал(а): 19 окт 2022, 21:02 Slave аналогичен, только добавлен дисплей на чипе HD44780.
С высокой вероятностью(проект не смотрел) проблема в длительном выводе строковых переменных через блок стандартного LCD.
Попробуйте блоки ecoins - они решают эти проблемы.
Dwail
Рядовой
Сообщения: 16
Зарегистрирован: 23 июн 2019, 19:17
Имя: Анатолий

Заменил модули, перестал работать modbus

Сообщение Dwail »

Отключил экран, перенастроил UART на SoftwareSerial. Результат тот же, связи нет.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Заменил модули, перестал работать modbus

Сообщение Ingwar »

Dwail писал(а): 20 окт 2022, 19:39 Отключил экран, перенастроил UART на SoftwareSerial. Результат тот же, связи нет.
Используемая в этих модулях MAX3465 по распайке идентична "классике" MAX485 и имеет входа Pe-De.
Из этого можно сделать предположение, что формируемый сигнал управления на "захват шины" не приемлем по временным параметрам в реалиях Flprog.
Поясню - в рамках разработки miniHMI совместно с некоторыми форумчанами проводил эксперименты по зависимости задержки запроса после выставления управления на Pe-De.
Выяснилось, что необходима пауза (к сожалению не помню сколько мсек) между выставления управления и начала передачи.
Допускаю, что плата "Конвертер TTL в RS485" формирует управление одновременно или с малым промежутком.
Варианты проверки - поставить на мастер простой трансмиттер с управлением Pe-De, а на слейв новые. Или на новой плате для мастера обрезать дорожку управления и припаяв проводок на 2,3 ножки, подать на него Pe-De.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Dwail
Рядовой
Сообщения: 16
Зарегистрирован: 23 июн 2019, 19:17
Имя: Анатолий

Заменил модули, перестал работать modbus

Сообщение Dwail »

я пробовал на мастере простой модуль, на слэйве "новый", тоже не заработало. Видел примеры с этими модулями на базе библиотеки ModbusMaster.h, но у меня не получилось разобраться в коде :-(
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Заменил модули, перестал работать modbus

Сообщение Ingwar »

Dwail писал(а): 20 окт 2022, 21:42 я пробовал на мастере простой модуль, на слэйве "новый", тоже не заработало.
Оба проверили "новых"? И все варианты их подключения (Rx/Tx, A/B)?
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
WildCat
Лейтенант
Сообщения: 556
Зарегистрирован: 04 июн 2022, 04:14
Имя: Михаил
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Заменил модули, перестал работать modbus

Сообщение WildCat »

На этих модулях (без re/de) протокол не modbus. Они используют принцип дифференциальной передачи сигнала по витой паре, без использования протокола обмена modbus. Заявляют, что реализовано аппаратное управление потоком данных (приём/передача). По сути, получается полу-дуплекс, в отличие от классического UART.

Для работы с ними нужно использовать блоки отправка переменной в UART, чтение переменной из UART. И всё будет работать.
Но стоит иметь ввиду, что максимальная скорость будет меньше. У меня без потерь в обе стороны заработало на скорости 19200.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Заменил модули, перестал работать modbus

Сообщение Ingwar »

WildCat писал(а): 22 окт 2022, 02:20 На этих модулях (без re/de) протокол не modbus. Они используют принцип дифференциальной передачи сигнала по витой паре, без использования протокола обмена modbus.
Вы не правы. Протокол отвечает за программную часть (MODBUS). А физический способ передачи это скорее интерфейс (RS485). И одно другому не должно мешать.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
WildCat
Лейтенант
Сообщения: 556
Зарегистрирован: 04 июн 2022, 04:14
Имя: Михаил
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Заменил модули, перестал работать modbus

Сообщение WildCat »

[ref]Ingwar[/ref], в чем не прав?
Указанные модули не используют протокол modbus, они по сути являются удлинителем UART по стандарту rs485. Соответственно, и пакеты команд как в UART.

Есть подобные беспроводные модули hc-12, работают точно так же, но по радиоканалу.

Этот модуль подключаем к контроллеру Tx-Tx, Rx-Rx, в скетче переменную отправляем в UART. Настраиваем скорость передачи одинаково на двух контроллерах (выше 19200 не стоит выбирать, фронты импульсов довольно сильно завалены), готово.

Если слать в эти модули команды modbus, то на выходе будет белиберда. В modbus есть отдельный выход управления потоком (re/de), а в этом модуле аппаратное управление потоком (к сожалению, полноценной документации на эти модули не нашёл).

Я буквально последние пару дней занимаюсь как раз связью двух контроллеров, пробовал модули и max485 (modbus), и эти (UART). И управление программное у них разное.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Заменил модули, перестал работать modbus

Сообщение Ingwar »

[ref]WildCat[/ref], из Вашего поста я понял, что диалог не будет конструктивным... Пусть каждый останется при своем мнении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Naladchik
Капитан
Сообщения: 908
Зарегистрирован: 04 окт 2015, 19:10
Откуда: Новосибирск
Имя: Павел
Благодарил (а): 20 раз
Поблагодарили: 22 раза

Заменил модули, перестал работать modbus

Сообщение Naladchik »

WildCat писал(а): 22 окт 2022, 04:32 ... в чем не прав? ...
В том, что валите в одну кучу разные вещи, смешивая понятия "Интерфейс" и "Протокол".
Интерфейс - это физическая реализация. В нее входит и сам модуль (аппаратная часть. max485 и ее аналоги), и линии передачи данных (витая пара, ... ), и т.д. Например RS485, RS232, UART, ......
Протокол - это набор правил, по которым происходит передача информации, т.е. это программная часть и она управляет аппаратной.
Например Serial, Modbus, TCP/IP, .....

Естественно есть устройства, где и интерфейс и протокол в "одном флаконе", но Ваши модули к таким устройствам не относятся.
Ваши устройства это просто банальные конвертеры из одного интерфейса (UART) в другой (RS485). И по какому протоколу будут через них передаваться данные - им без разницы. Главное, чтоб реализация этого протокола позволяла правильно управлять этими устройствами.
Win10-64. FLProg Portable.
Изображение
Dwail
Рядовой
Сообщения: 16
Зарегистрирован: 23 июн 2019, 19:17
Имя: Анатолий

Заменил модули, перестал работать modbus

Сообщение Dwail »

WildCat писал(а): 22 окт 2022, 02:20 Для работы с ними нужно использовать блоки отправка переменной в UART, чтение переменной из UART. И всё будет работать.
Но стоит иметь ввиду, что максимальная скорость будет меньше. У меня без потерь в обе стороны заработало на скорости 19200.
Можете приложить файлы с примерами? Скорость меня не сильно волнует, меня интересует сам факт связи по проводу на расстоянии от 20м
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Заменил модули, перестал работать modbus

Сообщение Sancho »

типа таких и таких работают давно на 115200. время выключения передачи около 2 мс.

Отправлено спустя 7 минут 14 секунд:
Modbus.
Но хочу перейти на такие.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Заменил модули, перестал работать modbus

Сообщение ecoins »

Sancho писал(а): 22 окт 2022, 15:38 типа таких и таких работают давно на 115200. время выключения передачи около 2 мс.
На сколько мы разбирались, эти модули имеют настройку на фиксированную скорость и соответственно фиксированное время переключения (R-C цепочкой определяется). В явном виде перенастройка на другую скорость не предусмотрена. Это так?
Sancho писал(а): 22 окт 2022, 15:38 Modbus.
Но хочу перейти на такие.
Очень интересно. Не могли бы поподробнее и о модуле, и о возможностях использования в FLProg-ModBus?
Спасибо.
Аватара пользователя
ViktorPetrov
Капитан
Сообщения: 807
Зарегистрирован: 09 апр 2018, 23:56
Имя: Виктор
Благодарил (а): 4 раза
Поблагодарили: 1 раз

Заменил модули, перестал работать modbus

Сообщение ViktorPetrov »

ecoins писал(а): 22 окт 2022, 17:19 На сколько мы разбирались, эти модули имеют настройку на фиксированную скорость и соответственно фиксированное время переключения (R-C цепочкой определяется). В явном виде перенастройка на другую скорость не предусмотрена. Это так?
Вероятно Вы правы,RC цепочка должна быть рассчитана таким образом, чтобы за время передачи одного байта информации емкость не могла зарядится до уровня срабатывания инвертора, даже если передается последовательность из всех 1.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Заменил модули, перестал работать modbus

Сообщение Sancho »

ecoins писал(а): 22 окт 2022, 17:19 Очень интересно. Не могли бы поподробнее и о модуле, и о возможностях использования в FLProg-ModBus?
Вроде всё понятно будет по даташиту.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
ecoins
Полковник
Сообщения: 3999
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 149 раз

Заменил модули, перестал работать modbus

Сообщение ecoins »

Спасибо.
Интересно.
Rovki хорошо отзывается о USR-K5 https://aliexpress.ru/item/100500480035 ... 63e9x4i2NS
Есть следующая модель USR-K7 подороже https://aliexpress.ru/item/33060767667. ... 6acbB3P2CK
USR-K7-EN_V1.0.0.pdf
------
NT1-B дешевле. И описание хорошее. Это прорыв на рынке нового производителя?
С технической точки зрения не готов дать оценку - надо погрузиться в тему, возможно поисследовать.
Может Вы что-то поподробнее можете разъяснить?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ответить

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

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

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