Modbus RTU

Использование протокола Modbus
Ingwar
Полковник
Сообщения: 1716
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 142
Откуда: Ленобласть
Имя: Игорь

Modbus RTU

#1

Сообщение Ingwar » 27.07.2017{, 16:54}

Доброе время суток.
Не получается передавать несколько переменных типа Holding Registr
Пробовал разные порты и периоды опроса. В лучшем случае получал 2 переменных, а по умолчанию только значение последней переменной в регистре первой...
Пробовал в тестовом варианте - та-же фигня... Что я делаю не так? Пример прилагается.
Вложения
modbus_rtu.rar
(23.16 КБ) 78 скачиваний
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
Sancho
Полковник
Сообщения: 3991
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Modbus RTU

#2

Сообщение Sancho » 27.07.2017{, 17:40}

1. Узнать, что железо работает, на слэйве  - подключить через usb/485 свисток к компу, протестить. люблю MasterOPC Universal Modbus Server 32.
2. Для мастера - подключить так-же, использовать, например, Modbus PLC Simulator - покажет многое.
3. Если нет засад - подключать друг к дружке.
Очень МНОГО проблем у народа было с дешёвыми модулями 485....
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Аватара пользователя
Dev1
Майор
Сообщения: 1015
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 58
Откуда: Гондурас

Modbus RTU

#3

Сообщение Dev1 » 27.07.2017{, 18:03}

В мастере соберите 3 переменные сложением строк ,отправляйте в уарт и смотрите что там. Зачем городить с переключателем...
Win7-64 FLProg v7.2.2 Portable :fie:

KSP
Сержант
Сообщения: 248
Зарегистрирован: 18.09.2015{, 14:00}
Репутация: 28
Откуда: Саратов
Имя: Сергей

Modbus RTU

#4

Сообщение KSP » 27.07.2017{, 20:46}

А вот так попробуйте. Мастер опрашивает инпут регистры и переписывает холдинги поэтому холдинги используйте только если в них нужно что-то записать мастером и номера у них не должны совпадать. Если совпадут начнется кавардак.
Вложения
5876974.flp
(44.41 КБ) 68 скачиваний
S

KSP
Сержант
Сообщения: 248
Зарегистрирован: 18.09.2015{, 14:00}
Репутация: 28
Откуда: Саратов
Имя: Сергей

Modbus RTU

#5

Сообщение KSP » 27.07.2017{, 20:50}

Я кажется второй проект в первом сообщении не добавил
Вложения
7631416.flp
(44.41 КБ) 77 скачиваний
3628981.flp
(107.64 КБ) 69 скачиваний
S

Аватара пользователя
Grafsaxar
Лейтенант
Сообщения: 377
Зарегистрирован: 06.09.2015{, 16:04}
Репутация: 6
Откуда: Маркс-Энгелс
Имя: Alexander

Modbus RTU

#6

Сообщение Grafsaxar » 27.07.2017{, 22:47}

Вот вам !!!

Подкорегировал и проверил. всё работает . Проверил.

Кстати вы модбас можете через усб кабель тоже проверить. Без подключения модбас свистка.

Советую программу для проверки мастера и славе Qmodbus

Так-же вы можете 2 ардуино 2 проводами соединить TX c RX    ------     RX c TX . Масса должна быть общая.

Сдесь берём Qmodbus

https://sourceforge.net/projects/qmodbus/files/qmodbus/
Вложения
8072396.flp
(48.41 КБ) 84 скачивания
0368753.flp
(151.58 КБ) 88 скачиваний
Последний раз редактировалось Grafsaxar 27.07.2017{, 22:48}, всего редактировалось 1 раз.
Качество — это делать что-либо правильно, даже когда никто не смотрит

Аватара пользователя
Sancho
Полковник
Сообщения: 3991
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Modbus RTU

#7

Сообщение Sancho » 28.07.2017{, 08:33}

Grafsaxar писал(а):Кстати вы модбас можете через усб кабель тоже проверить. Без подключения модбас свистка.
Модбас "угробить" - надо ещё уметь, а вот засад по железу 485 - предостаточно.
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Ingwar
Полковник
Сообщения: 1716
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 142
Откуда: Ленобласть
Имя: Игорь

Modbus RTU

#8

Сообщение Ingwar » 28.07.2017{, 09:22}

Всем откликнувшимся спасибо.
Походу проблема в платках max485, поскольку прямое подключение ардуин между собой через СОМ порты, позволяет получить все переменные без потерь
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
Grafsaxar
Лейтенант
Сообщения: 377
Зарегистрирован: 06.09.2015{, 16:04}
Репутация: 6
Откуда: Маркс-Энгелс
Имя: Alexander

Modbus RTU

#9

Сообщение Grafsaxar » 28.07.2017{, 10:29}

Sancho писал(а):Модбас "угробить" - надо ещё уметь, а вот засад по железу 485 - предостаточно
Согласен:)) его невозможно убить.

мах 485 сама по себе капризная штука. Если в шине одна пробивается то сдыхают все сидящие на етой шине. Я уже их перепаивать устал.

2 Диода надо для защиты ставить, но лень новые платы разводить:))
В будущем решил не SMD  а нормальные в сокель ставить.

Хочу в будущем попробовать экранированным кабелем напрямую соединить. Мах 475 много энергии жрёт.
Вот незнаю пока мах. длину кабеля. может кто уже тестировал?

В принципе тот же СОМ . встречал кабеля для  RS 232 50м. длиной
Последний раз редактировалось Grafsaxar 28.07.2017{, 10:36}, всего редактировалось 1 раз.
Качество — это делать что-либо правильно, даже когда никто не смотрит

Ingwar
Полковник
Сообщения: 1716
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 142
Откуда: Ленобласть
Имя: Игорь

Modbus RTU

#10

Сообщение Ingwar » 28.07.2017{, 11:36}

Пробовал сейчас соединить 2 ардуинки на софт портах через бухту 50м экранированной витой пары на скорости 9600 - без проблем.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
Sancho
Полковник
Сообщения: 3991
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Modbus RTU

#11

Сообщение Sancho » 28.07.2017{, 12:11}

Народ, для исключения в будушем получения проблем связи(вроде есть, а вроде и нет..), сделайте "входящий контроль качества продукции".
Купите дешёвый свисток усб-485, и все платы с 485 сразу! тестируйте с какой-нить ардуинкой и компом.

Добавлено (28.07.2017, 11:55)
---------------------------------------------
Ingwar писал(а):Пробовал сейчас соединить 2 ардуинки на софт портах через бухту 50м экранированной витой пары на скорости 9600 - без проблем.
Мы же электронщики, и понимаем, что вся собака зарыта в ёмкости кабеля - чем она больше, тем больший ток для зарядки/разрядки нужен или увеличивается время этой самой перезарядки. Если поставить на выходе парочку прямой-обратный хороших транзисторов и на общие базы подать сигнал, снять с общих эмитеров - думаю, перезарядят на 115200 МНОГО СОТЕН МЕТРОВ, пока не начнёт выплывать индуктивность кабеля....

Добавлено (28.07.2017, 12:11)
---------------------------------------------
Grafsaxar писал(а):В принципе тот же СОМ . встречал кабеля для  RS 232 50м. длиной
Нет. Уровни 1 и 0 у UART и RS232 абсолютно разные.
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Аватара пользователя
Grafsaxar
Лейтенант
Сообщения: 377
Зарегистрирован: 06.09.2015{, 16:04}
Репутация: 6
Откуда: Маркс-Энгелс
Имя: Alexander

Modbus RTU

#12

Сообщение Grafsaxar » 28.07.2017{, 12:46}

Ingwar писал(а):Пробовал сейчас соединить 2 ардуинки на софт портах через бухту 50м экранированной витой пары на скорости 9600 - без проблем.
Классно. Меня ето реально радует:))) Можете на 20м и на 30м ещё 2 славе подцепить и их опросить.
Если всё работает можно без мах 485  всё реализовать. только масса должна быть общая.

У меня с усб свистками проблемы были. От разных производителей .

От одних на 40 метров не работало ,от других на 100 работало нормально.
Хотя из личного опыта знаю что Соларлог без проблем опрашивает слейвы на 1км при 56700
Sancho писал(а):Если поставить на выходе парочку прямой-обратный хороших транзисторов и на общие базы подать сигнал,
Идея классная. А нарисовать примерное подключение можешь?
поставит драйвер мосфета  на 6A

Добавлено (28.07.2017, 12:46)
---------------------------------------------
Sancho писал(а):Нет. Уровни 1 и 0 у UART и RS232 абсолютно разные.
Я имел ввиду кабел от RS232 использовать
Последний раз редактировалось Grafsaxar 28.07.2017{, 12:43}, всего редактировалось 1 раз.
Качество — это делать что-либо правильно, даже когда никто не смотрит

starshoy81
Лейтенант
Сообщения: 510
Зарегистрирован: 05.04.2016{, 23:30}
Репутация: 29
Откуда: Санкт-Петербург
Имя: Илья

Modbus RTU

#13

Сообщение starshoy81 » 28.07.2017{, 14:19}

Grafsaxar писал(а):Если всё работает можно без мах 485  всё реализовать. только масса должна быть общая.
без мах485, по уарту только две точки соединятся. А на мах-ах можно точка-многоточка сделать

Аватара пользователя
Sancho
Полковник
Сообщения: 3991
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Modbus RTU

#14

Сообщение Sancho » 28.07.2017{, 15:41}

Цитата starshoy81 () без мах485, по уарту только две точки соединятся.Нет! Чуть подумайте и получится
Рисунок внизу относится ТОЛЬКО к ТХ мастера.
Цитата Grafsaxar () Идея классная. А нарисовать примерное подключение можешь?
Вложения
9071095.png
Последний раз редактировалось Sancho 28.07.2017{, 16:09}, всего редактировалось 1 раз.
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Аватара пользователя
Grafsaxar
Лейтенант
Сообщения: 377
Зарегистрирован: 06.09.2015{, 16:04}
Репутация: 6
Откуда: Маркс-Энгелс
Имя: Alexander

Modbus RTU

#15

Сообщение Grafsaxar » 28.07.2017{, 17:26}

Я был прав. Это драйвер мосфета. Правильно. Их можно поставить на трансмиттеры мастера и всех слейвов. Жаль что я раньше об этом не подумал и купил 50 шт. Мах 485:))
Благодарю за идею:))
Качество — это делать что-либо правильно, даже когда никто не смотрит

Аватара пользователя
Sancho
Полковник
Сообщения: 3991
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 567
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Modbus RTU

#16

Сообщение Sancho » 29.07.2017{, 08:13}

Grafsaxar писал(а):Их можно поставить на трансмиттеры мастера и всех слейвов.
Нет, на слэйвы по другому. ОБЯЗАТЕЛЬНО по другому - если один в 0, то другие никак не смогут выставить 1, лишь "поубивав, повыжигав" друг дружку....
Если не получится на контроллере - сделаю на тразисторах и 155/176...Научился, немного.
Поможем проекту вместе!

Аватара пользователя
sser
Рядовой
Сообщения: 81
Зарегистрирован: 02.01.2018{, 12:19}
Репутация: 19
Откуда: Н.Новгород
Контактная информация:

Modbus RTU

#17

Сообщение sser » 28.03.2019{, 12:26}

Здравствуйте!
А кто ни-будь пробовал подключать промышленную HMI панель к ардуине по мадбас.

Аватара пользователя
Grafsaxar
Лейтенант
Сообщения: 377
Зарегистрирован: 06.09.2015{, 16:04}
Репутация: 6
Откуда: Маркс-Энгелс
Имя: Alexander

Modbus RTU

#18

Сообщение Grafsaxar » 28.03.2019{, 12:38}

sser писал(а):
28.03.2019{, 12:26}
Здравствуйте!
А кто ни-будь пробовал подключать промышленную HMI панель к ардуине по мадбас.
О чём речь????

Какая панель? Марка? Тип???

Многие используют MPI , Profibus, Profinet с модбасом не встречал.

Доктор дайте мне таблетки, и он вам даёт не спрашивая от чего.
И не удивляйтесь если увидете на рецепте ПУРГЕН , т.к. он подходит ко всем болезням:)))
Качество — это делать что-либо правильно, даже когда никто не смотрит

Аватара пользователя
sser
Рядовой
Сообщения: 81
Зарегистрирован: 02.01.2018{, 12:19}
Репутация: 19
Откуда: Н.Новгород
Контактная информация:

Modbus RTU

#19

Сообщение sser » 28.03.2019{, 12:44}

Kinco MT4532TE.

Ingwar
Полковник
Сообщения: 1716
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 142
Откуда: Ленобласть
Имя: Игорь

Modbus RTU

#20

Сообщение Ingwar » 28.03.2019{, 23:55}

Пробовал HMI панели Weintek на RTU и TCP. И LG (LS) на TCP. Думаю можно любую HMI подружить, если в ней есть поддержка "чистого" Modbus.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Ответить

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