Modbus 9.3.12

Использование протокола Modbus
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Вчера решил продолжить изучение проблемы с передачей данных между двумя контроллерами. Для тестов использовал все те же Ардуино
Про Мини и Ардуино Нано. Версия программы FLProg 9.4.
Выбрал простое соединение RX-TX, TX-RX.
Проверил в 7 версии работает. В версии 9.4 залил мастер с включенным диспетчером. Слейв 7 версии.
1.jpg
Работает передача как и от мастера слейву, так и от слейва мастеру. Все верно.
Попробовал мастер без диспетчера задач - не работает ни передача, ни прием в любую сторону. В принятых значениях случайные числа.
2.jpg
Залил обратно проект мастера версии 9.4 с диспетчером задач. Работает в обе стороны как и передача, так и прием.
Залил проект слейва версии 9.4 с выключенным диспетчером задач. Не работает ни передача ни прием в любую сторону. В принятых значениях как мастера, так и слейва случайные числа.
Залил слейв версии 9.4 с включенным диспетчером задач. В момент включения контроллера после перезагрузки в слейв записывается "лишнее" случайное число, но передача и прием в обе стороны работают.
5.jpg
Подскажите, откуда берется это случайное число?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ander
Лейтенант
Сообщения: 524
Зарегистрирован: 31 окт 2023, 12:50
Имя: Андрей
Благодарил (а): 22 раза
Поблагодарили: 99 раз

Re: Modbus 9.3.12

Сообщение Ander »

а если вот так?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Ander писал(а): 30 июн 2025, 18:03 а если вот так?
Результат тот же.
WhatsApp Image 2025-06-30 at 18.21.18.jpeg
Дополнительное значение появляется в том случае, если нет доступа к мастеру (перезагружается). Если нажать резет, то после перезагрузки слейв считает, то что в мастере. Далее работает правильно до тех пор, пока не потеряется связь.
А что было изменено?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ander
Лейтенант
Сообщения: 524
Зарегистрирован: 31 окт 2023, 12:50
Имя: Андрей
Благодарил (а): 22 раза
Поблагодарили: 99 раз

Re: Modbus 9.3.12

Сообщение Ander »

Пока нет соединения в регистре мусор из области памяти. точно забыл сначала задать параметр по умолчания . А вот так?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Взял рассоединил RXы и TXы контроллеров. На входах случайные числа и там и там.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ander
Лейтенант
Сообщения: 524
Зарегистрирован: 31 окт 2023, 12:50
Имя: Андрей
Благодарил (а): 22 раза
Поблагодарили: 99 раз

Re: Modbus 9.3.12

Сообщение Ander »

Попробуйте для начала увеличить время опроса. допистим 1 сек
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Замечательно. Применение Платы инициализации для переменной Сумма решила проблему.
По идее надо и в мастере также прописывать нулевые значения переменным передающихся по шине .
WhatsApp Image 2025-06-30 at 18.58.58.jpeg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ander
Лейтенант
Сообщения: 524
Зарегистрирован: 31 окт 2023, 12:50
Имя: Андрей
Благодарил (а): 22 раза
Поблагодарили: 99 раз

Re: Modbus 9.3.12

Сообщение Ander »

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

Re: Modbus 9.3.12

Сообщение Rovki »

montirovka писал(а): 30 июн 2025, 19:08 Замечательно. Применение Платы инициализации для переменной Сумма решила проблему.
По идее надо и в мастере также прописывать нулевые значения переменным передающихся по шине .
WhatsApp Image 2025-06-30 at 18.58.58.jpeg
Ни каких нулей, только то что отправил мастер в последний раз ... А то дом заморозите , если мастер сломался . Хорошо в пр200 все сетевые переменные энергонезависимые
Электронщик до мозга костей и не только
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Rovki писал(а): 30 июн 2025, 20:45
montirovka писал(а): 30 июн 2025, 19:08 Замечательно. Применение Платы инициализации для переменной Сумма решила проблему.
По идее надо и в мастере также прописывать нулевые значения переменным передающихся по шине .
WhatsApp Image 2025-06-30 at 18.58.58.jpeg
Ни каких нулей, только то что отправил мастер в последний раз ... А то дом заморозите , если мастер сломался . Хорошо в пр200 все сетевые переменные энергонезависимые
Ну а ваше предложение какое? Как избавится от произвольных значений переменных? В FLProg 7.5 этого нет.
Аватара пользователя
Rovki
Полковник
Сообщения: 5746
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 69 раз
Поблагодарили: 223 раза
Контактная информация:

Re: Modbus 9.3.12

Сообщение Rovki »

montirovka писал(а): 30 июн 2025, 20:54
Rovki писал(а): 30 июн 2025, 20:45
montirovka писал(а): 30 июн 2025, 19:08 Замечательно. Применение Платы инициализации для переменной Сумма решила проблему.
По идее надо и в мастере также прописывать нулевые значения переменным передающихся по шине .
WhatsApp Image 2025-06-30 at 18.58.58.jpeg
Ни каких нулей, только то что отправил мастер в последний раз ... А то дом заморозите , если мастер сломался . Хорошо в пр200 все сетевые переменные энергонезависимые
Ну а ваше предложение какое? Как избавится от произвольных значений переменных? В FLProg 7.5 этого нет.
Если это уставки из мастера, то запоминать в еепром каждое изменение в слейве.
Электронщик до мозга костей и не только
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Добавил переменную и сделал фильтр по полосе правильных передаваемых значений. При старте ошибок нет.
2025-07-01_09-22-24.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Вернулся к RS485. Для прием передача использую те же платы с MAX485. В версии FLProg 9.4 передача работает только от мастера к слейву. От слейва к мастеру не передается.
Проект в FLProg 7.5 работает в обе стороны.
WhatsApp Image 2025-07-01 at 11.11.49.jpeg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ecoins
Полковник
Сообщения: 4019
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 137 раз
Поблагодарили: 165 раз

Re: Modbus 9.3.12

Сообщение ecoins »

Rovki писал(а): 30 июн 2025, 20:45
montirovka писал(а): 30 июн 2025, 19:08 Замечательно. Применение Платы инициализации для переменной Сумма решила проблему.
По идее надо и в мастере также прописывать нулевые значения переменным передающихся по шине .
WhatsApp Image 2025-06-30 at 18.58.58.jpeg
Ни каких нулей, только то что отправил мастер в последний раз ... А то дом заморозите , если мастер сломался . Хорошо в пр200 все сетевые переменные энергонезависимые
В FLProg 9 версии любую тэг Modbus пометить как "Сохранение EEPROM". Вы эту опцию в ПР-200 имели ввиду?
Разработчик сохранение в EEPROM(любой переменной) реализовал не обычно.
EEPROM медленное устройство(запись 5 мсна байт), тем не менее запись выполняется прозрачно и на быстродействие проекта работа с EEPROM практически не влияет.
Аватара пользователя
Rovki
Полковник
Сообщения: 5746
Зарегистрирован: 22 апр 2016, 17:25
Откуда: Чехов
Имя: Анатолий
Благодарил (а): 69 раз
Поблагодарили: 223 раза
Контактная информация:

Re: Modbus 9.3.12

Сообщение Rovki »

В Пр200 есть супервизор питания . Все модбас переменные работают в оперативке , но при снижении напряжения питания(выключении) переписывают их в ПЗУ.При включении питания переменная из ПЗУ загружается в ОЗУ.. Любую переменную не нужно сохранять, которая меняется часто, я ж говорил об УСТАВКАХ.
Электронщик до мозга костей и не только
Аватара пользователя
montirovka
Капитан
Сообщения: 770
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Благодарил (а): 50 раз
Поблагодарили: 177 раз

Re: Modbus 9.3.12

Сообщение montirovka »

Продолжил изучение RS485. Заменил платы с MAX485 с входами RE/DE на платы без этих входов.
WhatsApp Image 2025-07-02 at 10.02.47.jpeg
Запустил проект с выключенным RS485. Работает, но почему то на одно показание больше считает. Если до этого сумма была 5050, то сейчас 5150. Это не страшно. Включил режим RS485. Ни чего не поменялось. Наверное так должно было быть. Я же не использую RE/DE.
WhatsApp Image 2025-07-02 at 10.15.24 (1).jpeg
Дальше разбираться начну когда выйдет новая верия программы FLProg. Может там что то изменится.
Для себя сделал выводы - обязательно на входе данных фильтр данных, а неверное значение в течении какого то промежутка времени использовать как сигнал неработоспособности передачи данных.
Вопрос почему не работает RS485 с использованием RE/DE остается открытым.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ответить

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

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

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