modbus rtu

modbus rtu

Использование протокола Modbus
Халил
Рядовой
Сообщения: 37
Зарегистрирован: 19.01.2018{, 01:37}
Репутация: 5

modbus rtu

#21

Сообщение Халил » 16.03.2018{, 02:17}

Вроде архив старых версий лежит здесь
http://elref.ru/load/arkhiv_versij_programmy/6-2

ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28.05.2017{, 00:28}
Репутация: 0

modbus rtu

#22

Сообщение ZeRG » 16.03.2018{, 02:34}

Пробовал версию 3.0 вроде тоже не работает

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

modbus rtu

#23

Сообщение Max » 16.03.2018{, 08:35}

Какие Ардуино применяете? Не Нано, или Микро часом? Вообще даже прошиваться у меня не хотели. Блоки питания разные?

У меня так же было недавно. ИНТ данные не в какую не хотел RTU передавать. Откатил обновления плат в Ардуино IDE на более ранние. Заработало.

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

modbus rtu

#24

Сообщение KSP » 16.03.2018{, 08:41}

ZeRG у Вас неправильно назначены адреса регистров inpyt и holding , это один и тот же регистр, т.е Вы пытаетесь записать и прочитать из одного файла. Назначьте разные номера регистров. А Coil не рекомендую использовать FLProg на них хуже работает. И QModbus установите ей можно слейвы проверять. А версия FLProg здесь не при чем. Попозже исправлю Ваши проекты и прикреплю.

Отправлено спустя 1 час 16 минут 59 секунд:
Я так понял, что при редактировании прикрепить ничего нельзя. Исправленные файлы прикрепил, что непонятно пишите поможем.
Вложения
слейф.flp
(72.04 КБ) 91 скачивание
мастер.flp
(131.18 КБ) 85 скачиваний
S

ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28.05.2017{, 00:28}
Репутация: 0

modbus rtu

#25

Сообщение ZeRG » 16.03.2018{, 10:29}

общим проверил
сигнал с мастера на слеф идет кнопка 1 работает
с датчика температуры выводит 0 на мастер то есть со слейва на мастер не выводит данные

Отправлено спустя 2 минуты 14 секунд:
но кнопка 1 жестко тормозит даже без отправки в уарт

Отправлено спустя 3 минуты 21 секунду:
Как-то так выглядит эксперимент

Отправлено спустя 20 минут 15 секунд:
KSP писал(а):
16.03.2018{, 09:58}
ZeRG у Вас неправильно назначены адреса регистров inpyt и holding , это один и тот же регистр, т.е Вы пытаетесь записать и прочитать из одного файла. Назначьте разные номера регистров.
если я правильно понимаю строение модбаса и его структуру то

1 (0x01) — чтение значений из нескольких регистров флагов (Read Coil Status).
2 (0x02) — чтение значений из нескольких дискретных входов (Read Discrete Inputs).
3 (0x03) — чтение значений из нескольких регистров хранения (Read Holding Registers).
4 (0x04) — чтение значений из нескольких регистров ввода (Read Input Registers).

это значит что Read Input Registers у него адрес в моем случае 400001, а у Read Holding Registers адрес 300001 просто фл прог убирает первую цифру и нули перед адресом

Отправлено спустя 1 минуту 25 секунд:
это два разных адреса
СпойлерПоказать
893A9EC0-DBBD-48A9-B07A-A4CD799765BF.jpeg

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

modbus rtu

#26

Сообщение Sancho » 16.03.2018{, 11:15}

ZeRG,
Попробуй

Отправлено спустя 5 минут 56 секунд:
Выбирай порты правильно, смотри, что и куда отправляешь...
Вложения
ZeRG_master_v2.flp
(147.41 КБ) 92 скачивания
ZeRG_Slave_v2.flp
(99.31 КБ) 97 скачиваний
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

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

modbus rtu

#27

Сообщение Dev1 » 16.03.2018{, 11:39}

ZeRG писал(а):
16.03.2018{, 10:56}
если я правильно понимаю строение модбаса и его структуру то

1 (0x01) — чтение значений из нескольких регистров флагов (Read Coil Status).
2 (0x02) — чтение значений из нескольких дискретных входов (Read Discrete Inputs).
3 (0x03) — чтение значений из нескольких регистров хранения (Read Holding Registers).
4 (0x04) — чтение значений из нескольких регистров ввода (Read Input Registers).
Это всего лишь функции(команда) в запросе-ответе мастер-слейв.
Посмотрите структуру запроса-ответа в описании.
Win10-64 FLProg v7.5.2 Portable :fie:

ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28.05.2017{, 00:28}
Репутация: 0

modbus rtu

#28

Сообщение ZeRG » 16.03.2018{, 12:05}

общим говоря работает но ответ от датчика где то минут 10 - 15 как можно ускорить сей процесс?

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

modbus rtu

#29

Сообщение KSP » 16.03.2018{, 12:08}

Вставлять цитаты я не умею:
СпойлерПоказать
1 (0x01) — чтение значений из нескольких регистров флагов (Read Coil Status).
2 (0x02) — чтение значений из нескольких дискретных входов (Read Discrete Inputs).
3 (0x03) — чтение значений из нескольких регистров хранения (Read Holding Registers).
4 (0x04) — чтение значений из нескольких регистров ввода (Read Input Registers).
это значит что Read Input Registers у него адрес в моем случае 400001, а у Read Holding Registers адрес 300001 просто фл прог убирает первую цифру и нули перед адресом,
но Вы сами дали ответ FLProg убирает первую цифру вернее не убирает , а работает по этой цифре но цифра эта справа по протоколу сначала идет команда , а потом адрес. Я в исправленных файлах ВАРТ не подключал. Поэтому что и где у Вас тормозит непонятно.
S

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

modbus rtu

#30

Сообщение Sancho » 16.03.2018{, 12:10}

ZeRG писал(а):
16.03.2018{, 12:05}
но ответ от датчика где то минут 10 - 15 как можно ускорить сей процесс?
Вы о чём?
Генератор корректно работает в ответах со слэйва? счёт на увеличение посекундный.
Кнопки работают?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28.05.2017{, 00:28}
Репутация: 0

modbus rtu

#31

Сообщение ZeRG » 16.03.2018{, 12:14}

Sancho, кнопки все работают но температура изменяется в районе 10 - 15 минут

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

modbus rtu

#32

Сообщение Sancho » 16.03.2018{, 12:20}

Sancho писал(а):
16.03.2018{, 12:10}
Генератор корректно работает в ответах со слэйва? счёт на увеличение посекундный.
Ответ?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

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

modbus rtu

#33

Сообщение KSP » 16.03.2018{, 12:30}

Я немного исправил проекты Sancho попробуйте их.
Вложения
ZeRG_Slave_v3.flp
(93.71 КБ) 84 скачивания
ZeRG_masterv3.flp
(139.89 КБ) 89 скачиваний
S

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

modbus rtu

#34

Сообщение Sancho » 16.03.2018{, 12:53}

Дорогие форумчане.
Напоминаю, проверенно 100%
для версий 3 и выше, даже и в ранних, но не скажу с какой именно.
Регистры Inpyt и Holding не пересекаются в адресах, каждые имеют свой массив!!!
Поэтому не стоит разносить их по номерам, типа, что-бы не пересекались!
Начинайте ВСЕ с нулевого и не парьтесь, программа полностью поддерживает "стандарт".
ПРОВЕРЕННО!!!!
Старайтесь делать нумерацию в секциях/таблицах ( Input, coil, holding) подряд, без пропусков регистров, тогда их (секции/таблицы) считать можно в один запрос на каждую.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

ZeRG
Рядовой
Сообщения: 52
Зарегистрирован: 28.05.2017{, 00:28}
Репутация: 0

modbus rtu

#35

Сообщение ZeRG » 16.03.2018{, 13:04}

KSP писал(а):
16.03.2018{, 12:30}
Я немного исправил проекты Sancho попробуйте их.
не работает

Отправлено спустя 2 минуты 48 секунд:
работает только кнопка

Отправлено спустя 10 минут 53 секунды:
не работает ответ от слейва

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

modbus rtu

#36

Сообщение KSP » 16.03.2018{, 13:42}

Даже в свете сообщения от Sancho мой проект тоже должен работать, И2С конечно тормозит процессор но на скорости 9600 все должно работать, как вариант попробуйте поменять порт на Меге , кто-то писал , что у нее не все порты работают одинаково с Modbus , да и железо еще раз проверьте.
И еще на картинке компьютер подключен к какой -то платке , у Вас прямого шнура от Меги до ЮСБ нету.
И еше DC18 тоже подгружает систему попробуйте вот с этим блоком.
Вложения
ZeRG_Slave_v4.flp
(114.78 КБ) 88 скачиваний
S

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

modbus rtu

#37

Сообщение Sancho » 16.03.2018{, 14:25}

Отключите слэйв 2, физически.
Для нормальной настройки/проверки очень желательно=необходимо иметь свисток usb/485.
Как уже неоднократно описывалось на нашем форуме, платы 485, как на Вашем фото - та ещё монетка - работает, не работает. Гимора народ с ними хапнул неподецки.
Итого, для начала, почитать немного
тут
и тут читать до конца
сам использую
Рекомендую
О засадах с платами Mega Вам уже писали...
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

modbus rtu

#38

Сообщение Serg_Grn » 19.07.2018{, 15:20}

Доброго дня! Прошу помощи разобраться в Modbus RTU.
Не могу пока разобраться в подразделах дерева проекта.
А именно: есть разделы Master и Slave. Но при этом в разделе Master можно также "добавить Slave", не могу понять смысла... При этом появляются загадочные параметры: "период синхронизации", "активность слейва" и т.д.
Разобрался бы сам, но не нашёл в программе и на сайте пояснений по этой части... Если это где-то есть, прошу кинуть в меня ссылкой.
Спасибо!

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

modbus rtu

#39

Сообщение Sancho » 19.07.2018{, 16:08}

Serg_Grn писал(а):
19.07.2018{, 15:20}
есть разделы Master и Slave. Но при этом в разделе Master можно также "добавить Slave", не могу понять смысла... При этом появляются загадочные параметры: "период синхронизации", "активность слейва" и т.д.
Разобрался бы сам, но не нашёл в программе и на сайте пояснений по этой части... Если это где-то есть, прошу кинуть в меня ссылкой.
Спасибо!
не спеша.
1. а. При активации "модбас слэйв" Вы добавляете ещё один serial или tcp для работы контролера уже в качестве ведомого(слэйва). Просто как-то этот параметр затесался не в тот раздел. При этом на порту "модбас мастер" он им и остаётся.
б. При "Добавить Slave" Вы просто добавите ещё одного ведомого.
2. "период синхронизации" - периодичность опроса ведомого.
3. "активность слейва" - есть описание блока. В двух словах - опрашивать или нет и статус, будет опрашиваться или нет.
СпойлерПоказать
screenshot_18-07-19_16-07-47.png
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Ответить

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