Вступить в клуб →
сложнаявопросCAN, Modbus и RS-485

Дозатор иногда выдаёт двойную порцию реагента

Мастер запускает дозу записью в регистр команд: функция 06, значение 1 = «выдать порцию». Таймаут ответа в мастере — 50 мс, при таймауте запрос повторяется. Ведомое устройство иногда отвечает за 60–80 мс: перед ответом оно пишет журнал во внешнюю EEPROM.

В журнале дозатора в эти моменты две порции подряд. Как исправить надёжно?

  • Таймаут выше худшего ответа и идемпотентные команды
  • Отключить повторы запросов в мастере совсем
  • Поднять скорость шины с 9600 до 115200 бод
  • Отвечать мастеру раньше, чем команда выполнена

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела