Raspberry Pi тормозит с 3 Modbus
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Raspberry Pi тормозит с 3 Modbus
Доброго всем дня! Подскажите пожалуйста, в чем может быть проблема. Использую три платы Raspberry Pi по системе Modbus. заливаю все проекты, начинаю тестировать, то на кнопки не реагирует то с большим опозданием то включается с опозданием и не выключается.
НО!!! Стоит только отключить один один Modbus (одну плату отключить от системы Modbus) то остальная начинает работать нормально! Посмотрите, пожалуйста, ткните, в чем может быть проблема! Спасибо большое!
НО!!! Стоит только отключить один один Modbus (одну плату отключить от системы Modbus) то остальная начинает работать нормально! Посмотрите, пожалуйста, ткните, в чем может быть проблема! Спасибо большое!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
С уважением, Givitel
- Student
- Рядовой
- Сообщения: 31
- Зарегистрирован: 30 май 2026, 10:11
- Имя: Иван
- Благодарил (а): 4 раза
- Поблагодарили: 11 раз
Re: Raspberry Pi тормозит с 3 Modbus
Здравствуйте Виталий. По всей видимости у вас стоит очень маленькое время периода синхронизации 100ms. При столь низкой скорости uart (9600) и паузой между повторным запросом в 100ms этого времени может не хватить для передачи данных.
Я не могу точно утверждать что имеется ввиду под параметром "пауза перед новым запросом", но полагаю что это как время между фреймами в протоколе ModBus. Минимальное время рассчитывается исходя из скорости передачи данных, при скорости в 9600 это порядка 5ms, оно не должно быть слишком большим, это снизит скорость modbus и слишком малым, пакеты данных могут не успеть передаться. Не проверял это в FLprog, но в промышленных контроллерах при передаче данных это универсальные 20ms, 10 может быть недостаточным, а выше заметно увеличивается отклык от modbus slave устройств.
При периоде синхронизации в 100ms пакеты так же могут теряться.
Скорость можно поставить повыше, главное чтобы пропускная способность линии rs485 это позволяла. На витой паре можно и 115200, если провод какой попался под руку, мкэш или пвс, при большой протяженности этой скорости многовато.
Но и период синхронизации нужно увеличить. Начните с 1 секунды, если данных немного, можно попробовать уменьшить, но это всё эксперементально, главное чтобы slave устройство успело ответить, а master принять.
Я не могу точно утверждать что имеется ввиду под параметром "пауза перед новым запросом", но полагаю что это как время между фреймами в протоколе ModBus. Минимальное время рассчитывается исходя из скорости передачи данных, при скорости в 9600 это порядка 5ms, оно не должно быть слишком большим, это снизит скорость modbus и слишком малым, пакеты данных могут не успеть передаться. Не проверял это в FLprog, но в промышленных контроллерах при передаче данных это универсальные 20ms, 10 может быть недостаточным, а выше заметно увеличивается отклык от modbus slave устройств.
При периоде синхронизации в 100ms пакеты так же могут теряться.
Скорость можно поставить повыше, главное чтобы пропускная способность линии rs485 это позволяла. На витой паре можно и 115200, если провод какой попался под руку, мкэш или пвс, при большой протяженности этой скорости многовато.
Но и период синхронизации нужно увеличить. Начните с 1 секунды, если данных немного, можно попробовать уменьшить, но это всё эксперементально, главное чтобы slave устройство успело ответить, а master принять.
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Добрый день! Не-а. Пытался изменить, не помогло. Вообще не принимал команды, не включались свд!!!Student писал(а): 14 июл 2026, 03:08 Здравствуйте Виталий. По всей видимости у вас стоит очень маленькое время периода синхронизации 100ms. При столь низкой скорости uart (9600) и паузой между повторным запросом в 100ms этого времени может не хватить для передачи данных.
Я не могу точно утверждать что имеется ввиду под параметром "пауза перед новым запросом", но полагаю что это как время между фреймами в протоколе ModBus. Минимальное время рассчитывается исходя из скорости передачи данных, при скорости в 9600 это порядка 5ms, оно не должно быть слишком большим, это снизит скорость modbus и слишком малым, пакеты данных могут не успеть передаться. Не проверял это в FLprog, но в промышленных контроллерах при передаче данных это универсальные 20ms, 10 может быть недостаточным, а выше заметно увеличивается отклык от modbus slave устройств.
При периоде синхронизации в 100ms пакеты так же могут теряться.
Скорость можно поставить повыше, главное чтобы пропускная способность линии rs485 это позволяла. На витой паре можно и 115200, если провод какой попался под руку, мкэш или пвс, при большой протяженности этой скорости многовато.
Но и период синхронизации нужно увеличить. Начните с 1 секунды, если данных немного, можно попробовать уменьшить, но это всё эксперементально, главное чтобы slave устройство успело ответить, а master принять.
С уважением, Givitel
-
Ander
- Администратор
- Сообщения: 745
- Зарегистрирован: 31 окт 2023, 12:50
- Имя: Андрей
- Благодарил (а): 58 раз
- Поблагодарили: 142 раза
Re: Raspberry Pi тормозит с 3 Modbus
У вас у мастера только 1 слейв. Поэтому они и дерутся. и да таймауты тоже надо понизитьюGivitel писал(а): 13 июл 2026, 22:06 Доброго всем дня! Подскажите пожалуйста, в чем может быть проблема. Использую три платы Raspberry Pi по системе Modbus. заливаю все проекты, начинаю тестировать, то на кнопки не реагирует то с большим опозданием то включается с опозданием и не выключается.
НО!!! Стоит только отключить один один Modbus (одну плату отключить от системы Modbus) то остальная начинает работать нормально! Посмотрите, пожалуйста, ткните, в чем может быть проблема! Спасибо большое!
- Rovki
- Полковник
- Сообщения: 5990
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 97 раз
- Поблагодарили: 318 раз
- Контактная информация:
Re: Raspberry Pi тормозит с 3 Modbus
Слейвы не могут "драться" Если у них разные сетевые адреса.Ander писал(а): 14 июл 2026, 14:29У вас у мастера только 1 слейв. Поэтому они и дерутся. и да таймауты тоже надо понизитьюGivitel писал(а): 13 июл 2026, 22:06 Доброго всем дня! Подскажите пожалуйста, в чем может быть проблема. Использую три платы Raspberry Pi по системе Modbus. заливаю все проекты, начинаю тестировать, то на кнопки не реагирует то с большим опозданием то включается с опозданием и не выключается.
НО!!! Стоит только отключить один один Modbus (одну плату отключить от системы Modbus) то остальная начинает работать нормально! Посмотрите, пожалуйста, ткните, в чем может быть проблема! Спасибо большое!
Электронщик до мозга костей и не только
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Спасибо. Попробую, отпишусь. А таймауты до скольки понизить? До 20?Rovki писал(а): 14 июл 2026, 14:47Слейвы не могут "драться" Если у них разные сетевые адреса.Ander писал(а): 14 июл 2026, 14:29У вас у мастера только 1 слейв. Поэтому они и дерутся. и да таймауты тоже надо понизитьюGivitel писал(а): 13 июл 2026, 22:06 Доброго всем дня! Подскажите пожалуйста, в чем может быть проблема. Использую три платы Raspberry Pi по системе Modbus. заливаю все проекты, начинаю тестировать, то на кнопки не реагирует то с большим опозданием то включается с опозданием и не выключается.
НО!!! Стоит только отключить один один Modbus (одну плату отключить от системы Modbus) то остальная начинает работать нормально! Посмотрите, пожалуйста, ткните, в чем может быть проблема! Спасибо большое!
С уважением, Givitel
-
Ander
- Администратор
- Сообщения: 745
- Зарегистрирован: 31 окт 2023, 12:50
- Имя: Андрей
- Благодарил (а): 58 раз
- Поблагодарили: 142 раза
Re: Raspberry Pi тормозит с 3 Modbus
а гляньте проекты выше. там один на всехRovki писал(а): 14 июл 2026, 14:47Слейвы не могут "драться" Если у них разные сетевые адреса.Ander писал(а): 14 июл 2026, 14:29У вас у мастера только 1 слейв. Поэтому они и дерутся. и да таймауты тоже надо понизитьюGivitel писал(а): 13 июл 2026, 22:06 Доброго всем дня! Подскажите пожалуйста, в чем может быть проблема. Использую три платы Raspberry Pi по системе Modbus. заливаю все проекты, начинаю тестировать, то на кнопки не реагирует то с большим опозданием то включается с опозданием и не выключается.
НО!!! Стоит только отключить один один Modbus (одну плату отключить от системы Modbus) то остальная начинает работать нормально! Посмотрите, пожалуйста, ткните, в чем может быть проблема! Спасибо большое!
- Rovki
- Полковник
- Сообщения: 5990
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 97 раз
- Поблагодарили: 318 раз
- Контактная информация:
Re: Raspberry Pi тормозит с 3 Modbus
В этом и причина сбоев...
Электронщик до мозга костей и не только
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Ребята, еще раз привет всем! Не-а, изменил я таймауты, периоды, вставил 2 слейв. Теперь даже на 1 слейве не работает!!! Высылаю переделанную версию своей работы.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
С уважением, Givitel
- Rovki
- Полковник
- Сообщения: 5990
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 97 раз
- Поблагодарили: 318 раз
- Контактная информация:
Re: Raspberry Pi тормозит с 3 Modbus
На каком расстоянии МК? Вы через уарты соединяете или через rs485 конвертеры?
Электронщик до мозга костей и не только
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
На каком расстоянии МК? - Сейчас на макетке - ~ 30 см, на проектной схеме максимум - 1 модуль слейва от мастера 1,5-1,8 м, 2-ой 60-80 см,Rovki писал(а): 14 июл 2026, 22:33 На каком расстоянии МК? Вы через уарты соединяете или через rs485 конвертеры?
Через RS485.
Сделал вот что.
Собрал вообще пустую, чтобы понять в чем загвоздка. С 2 светодиодами на 1 и на 2 слейве, а на мастере 4 свд что команда приходит - тоже самое, приходит с опозданием, даже если один из слейвов отключу.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
С уважением, Givitel
-
malen53751
- Рядовой
- Сообщения: 79
- Зарегистрирован: 12 июн 2018, 12:38
- Имя: Михаил
- Благодарил (а): 3 раза
- Поблагодарили: 7 раз
Re: Raspberry Pi тормозит с 3 Modbus
Здравствуйте.Я на преобразователях RS485 без RE/DE подключал до 5 слейвов на RP2040(Master). Modbus в обе стороны работал не плохо.
Правда преобразователи брал TD301M485.Расстояние было до 5 метров.Дальше не тестировал.
Правда преобразователи брал TD301M485.Расстояние было до 5 метров.Дальше не тестировал.
- Rovki
- Полковник
- Сообщения: 5990
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 97 раз
- Поблагодарили: 318 раз
- Контактная информация:
Re: Raspberry Pi тормозит с 3 Modbus
Значит срабатывает тайм-аут на мастере. Может не согласована линия, попробуйте поставить 120 ом на АВ.
Электронщик до мозга костей и не только
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Добрый день, еще раз. В общем, сейчас поставил сопротивление, 120 Ом. Проблема стала такая, он как то более лучше стал работать, но, тем не менее. Нажимаю кнопку, на слейве лампочка загорается. На мастере, с какой то задержкой, там, может, на 3 на 5 секунд. Отпускаю: на слейве выключается, на мастере еще какое то время горит, там 5, может быть, 7 секунд. Нажимаю второй раз, на слейве, опять идет, тогда уже с задержкой, может быть на 3 секунды, а на мастере может не включиться, или включиться секунд уже через 10, то есть все идет с задержкой. Работал пока только с одним слейвомRovki писал(а): 15 июл 2026, 10:28 Значит срабатывает тайм-аут на мастере. Может не согласована линия, попробуйте поставить 120 ом на АВ.
С уважением, Givitel
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Попробовал подключить 2 слейв - ситуация такая. Нажимаю кнопку, высвечивается сначала на 2 слейве потом на 1, а в конце только на Мастере. все идет с задержкой от 3 до 5-7 секунд.
С уважением, Givitel
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Не понял вопрос, с компьютера отправлять команду чтобы? В этом смысле?
С уважением, Givitel
-
slsl
- Лейтенант
- Сообщения: 404
- Зарегистрирован: 08 дек 2021, 22:41
- Имя: Вячеслав
- Благодарил (а): 30 раз
- Поблагодарили: 76 раз
Re: Raspberry Pi тормозит с 3 Modbus
Да, попробовать раборту со слейвами с ПК. Чтоб локализовать хоть как-то проблему.
-
Givitel
- Сержант
- Сообщения: 157
- Зарегистрирован: 16 ноя 2024, 09:58
- Откуда: Тула
- Имя: Виталий
- Благодарил (а): 13 раз
- Поблагодарили: 2 раза
Re: Raspberry Pi тормозит с 3 Modbus
Блин, а с этим никогда не работал. Не подскажете как, или хотя бы ссылку скинуть посмотреть где и что как делать? Спасибо!
С уважением, Givitel
-
slsl
- Лейтенант
- Сообщения: 404
- Зарегистрирован: 08 дек 2021, 22:41
- Имя: Вячеслав
- Благодарил (а): 30 раз
- Поблагодарили: 76 раз
Re: Raspberry Pi тормозит с 3 Modbus
Для ПК полно разных утилит-слейвов модбаса (через свисток USB-RS485).
Например: CAS Modbus Scanner, RilhevaModbusPoll
Например: CAS Modbus Scanner, RilhevaModbusPoll
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость