Modbus 9.3.12

Использование протокола Modbus
Аватара пользователя
Rovki
Полковник
Сообщения: 5709
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 67 раз
Поблагодарили: 212 раз
Контактная информация:

Re: Modbus 9.3.12

Сообщение Rovki »

Так это может дисплей не успевает обновляться , а слейв принимает следующее значение
Электронщик до мозга костей и не только
Аватара пользователя
montirovka
Капитан
Сообщения: 725
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 42 раза
Поблагодарили: 173 раза

Re: Modbus 9.3.12

Сообщение montirovka »

Rovki писал(а): 04 июн 2025, 12:46 Так это может дисплей не успевает обновляться , а слейв принимает следующее значение
Не дисплей считает сумму.
Аватара пользователя
Rovki
Полковник
Сообщения: 5709
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 67 раз
Поблагодарили: 212 раз
Контактная информация:

Re: Modbus 9.3.12

Сообщение Rovki »

montirovka писал(а): 04 июн 2025, 13:52
Rovki писал(а): 04 июн 2025, 12:46 Так это может дисплей не успевает обновляться , а слейв принимает следующее значение
Не дисплей считает сумму.
понятно, он отображает ...но не все , что то пропускает.
Электронщик до мозга костей и не только
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

Modbus 9.4.0
То ли я туплю, то ли лыжи не едут...
Решил для проверки создать мастера по уарт на 5 хр. Слушаю ком-порт, тишина, вообще никаких запросов мастер не посылает. Используется ардуино нано и лсд1602. Сам проект:
940_nano_modbus_master_lcd1602.zip
В предыдущих сообщениях вроде как при софтвар подключении работает. мне нужно по уарт(по юсб).

На тестовом скетче все работает отлично, регистры меняются, в ком-порт идут запросы:

Код: Выделить всё

[10:21:15.478] Received: 01 03 00 00 00 05 85 C9
[10:21:18.536] Received: 01 03 00 00 00 05 85 C9
[10:21:21.593] Received: 01 03 00 00 00 05 85 C9
[10:21:24.651] Received: 01 03 00 00 00 05 85 C9
[10:21:27.709] Received: 01 03 00 00 00 05 85 C9
[10:21:30.767] Received: 01 03 00 00 00 05 85 C9
[10:21:33.825] Received: 01 03 00 00 00 05 85 C9
[10:21:36.882] Received: 01 03 00 00 00 05 85 C9
Тестовый скетч:
modbus_master_nano_lcd1602.ino
пысы: поддержку RS485 включал, выключал...
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
montirovka
Капитан
Сообщения: 725
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 42 раза
Поблагодарили: 173 раза

Re: Modbus 9.3.12

Сообщение montirovka »

Rovki писал(а): 04 июн 2025, 14:18
montirovka писал(а): 04 июн 2025, 13:52
Rovki писал(а): 04 июн 2025, 12:46 Так это может дисплей не успевает обновляться , а слейв принимает следующее значение
Не дисплей считает сумму.
понятно, он отображает ...но не все , что то пропускает.
Вот как должно.
2025-06-04_20-11-27.png
Видео в реальном режиме. Укоротил для форума.
WhatsApp Video 2025-06-04 at 19.51.40.mp4
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
montirovka
Капитан
Сообщения: 725
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 42 раза
Поблагодарили: 173 раза

Re: Modbus 9.3.12

Сообщение montirovka »

Dev1 писал(а): 04 июн 2025, 17:59 Modbus 9.4.0
То ли я туплю, то ли лыжи не едут...
Решил для проверки создать мастера по уарт на 5 хр. Слушаю ком-порт, тишина, вообще никаких запросов мастер не посылает. Используется ардуино нано и лсд1602. Сам проект: 940_nano_modbus_master_lcd1602.zip
В предыдущих сообщениях вроде как при софтвар подключении работает. мне нужно по уарт(по юсб).

На тестовом скетче все работает отлично, регистры меняются, в ком-порт идут запросы:

Код: Выделить всё

[10:21:15.478] Received: 01 03 00 00 00 05 85 C9
[10:21:18.536] Received: 01 03 00 00 00 05 85 C9
[10:21:21.593] Received: 01 03 00 00 00 05 85 C9
[10:21:24.651] Received: 01 03 00 00 00 05 85 C9
[10:21:27.709] Received: 01 03 00 00 00 05 85 C9
[10:21:30.767] Received: 01 03 00 00 00 05 85 C9
[10:21:33.825] Received: 01 03 00 00 00 05 85 C9
[10:21:36.882] Received: 01 03 00 00 00 05 85 C9
Тестовый скетч:modbus_master_nano_lcd1602.ino

пысы: поддержку RS485 включал, выключал...
А где вы присваиваете значения ? Что вы хотите увидеть?
Залил, запустил. И ни чего не понял. Может мои данные перекочевали сюда?
WhatsApp Image 2025-06-04 at 20.32.25.jpeg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

дело в том что от мастера нету запросов для слейва, в ком-порту пусто, тишина. у меня прога-слейв по которой я передаю в ручную для мастера числа. на скетче это работает прекрасно и запросы идут. точнее 2 проги, на одной я смотрю что в ком-порт идет, другая для модбаса. я еще на 1 странице писал разницу в запросах в разных версиях флпрог. в какой то 9.3.х были запросы, правда там я на есп 8266 пробовал. завтра на работе проверю на есп эту версию флпрог.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
montirovka
Капитан
Сообщения: 725
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 42 раза
Поблагодарили: 173 раза

Re: Modbus 9.3.12

Сообщение montirovka »

А RE и DE чем вам не запросы?
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

montirovka писал(а): 04 июн 2025, 21:28 А RE и DE чем вам не запросы?
причем тут RE/DE, они для переключения rs485 в режим чтения/отправки данных. это просто пин. я не использую rs485 а передаю по уарту-юсб.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

Вроде заработал рту мастер на есп32. Правда при старте, если брать данные просто с регистров, выводил на дисплей, то показывает -23131, пока не примет новые значения, непонятно откуда эти значения. В стандартной либе модбас мастера при старте значения 0.
пысы:
не смотря на то что в порт выводятся запросы как то криво, все таки работает:
► Показать
:smile37:
пысы 2: проверил в 9.4.0 на есп32 тоже работает мастер, проверял только на 3 холдинг регистрах.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
dstrufanov
Сержант
Сообщения: 193
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: Modbus 9.3.12

Сообщение dstrufanov »

А для чего в Модбас РТУ функции чтения дискретных выводов и регистров вывода? Соответственно 0х01 и 0х03? Мастер передает слейвам значения для записи, ему приходит ответ, что запрос отработан, так зачем перепроверять?
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

Код функции Назначение Тип Доступ
1 (0x01) Чтение DO Дискретное Чтение
2 (0x02) Чтение DI Дискретное Чтение
3 (0x03) Чтение AO 16 битное Чтение
4 (0x04) Чтение AI 16 битное Чтение
5 (0x05) Запись одного DO Дискретное Запись
6 (0x06) Запись одного AO 16 битное Запись
15 (0x0F) Запись нескольких DO Дискретное Запись
16 (0x10) Запись нескольких AO 16 битное Запись
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
dstrufanov
Сержант
Сообщения: 193
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: Modbus 9.3.12

Сообщение dstrufanov »

Так вопрос в том, зачем есть функция чтения регистров, в которые идет запись? В них записали, пришел ответ, что все нормально. Зачем потом мастеру их читать, он и так знает, что там записано?
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

Чтение идет по выставленному таймингу, стандартное 1 сек. Запись идет когда вы даете команду на запись. Что не так? 0х03 читает, 0х06 записывает, это по регистрам.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
dstrufanov
Сержант
Сообщения: 193
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: Modbus 9.3.12

Сообщение dstrufanov »

Dev1 писал(а): 11 июн 2025, 10:11 Что не так? 0х03 читает, 0х06 записывает, это по регистрам.
Зачем мастеру читать, если он сам записывал? Он и так знает, что там записано. Я не знаю, как объяснить
Ander
Лейтенант
Сообщения: 502
Зарегистрирован: 31 окт 2023, 12:50
Имя: Андрей
Благодарил (а): 21 раз
Поблагодарили: 94 раза

Re: Modbus 9.3.12

Сообщение Ander »

dstrufanov писал(а): 11 июн 2025, 10:42
Dev1 писал(а): 11 июн 2025, 10:11 Что не так? 0х03 читает, 0х06 записывает, это по регистрам.
Зачем мастеру читать, если он сам записывал? Он и так знает, что там записано. Я не знаю, как объяснить
Данные же могут изменить как слейв так и мастер.
Аватара пользователя
dstrufanov
Сержант
Сообщения: 193
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: Modbus 9.3.12

Сообщение dstrufanov »

Ander писал(а): 11 июн 2025, 10:49 Данные же могут изменить как слейв так и мастер.
Так это каша будет
Аватара пользователя
Dev1
Майор
Сообщения: 1045
Зарегистрирован: 12 июл 2016, 18:04
Откуда: Гондурас
Поблагодарили: 3 раза

Re: Modbus 9.3.12

Сообщение Dev1 »

Тут все зависит от логики слейва, если он тупо делает то что ему говорит мастер, это одно(а что будет делать когда потеря связи?). Но у слейва же может быть и своя логика, аварийные там обстоятельства, разные факторы влияющие на работу слейва. Поэтому мастер всегда должен знать что происходит. Долго описывать разные ситуации.
Win10-64 FLProg v8.2.3 Portable IDE 1.8.19, 2,x,x :shok:
Аватара пользователя
dstrufanov
Сержант
Сообщения: 193
Зарегистрирован: 07 янв 2024, 12:43
Имя: Дмитрий
Благодарил (а): 23 раза
Поблагодарили: 35 раз

Re: Modbus 9.3.12

Сообщение dstrufanov »

Dev1 писал(а): 11 июн 2025, 11:23 Но у слейва же может быть и своя логика, аварийные там обстоятельства, разные факторы влияющие на работу слейва
Согласен, для распределенных систем это логично. Вопрос снимаю
Ответить

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

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

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