Как работает тайм-аут приёма в сетевых инструкциях PMP20?

Проверено экспертом Опубликовано: 22.08.2025 Обновлено: 15.10.2025 2151 просмотр Помогло 87%

Тайм-аут задаётся в блоке параметров сокета, измеряется десятками миллисекунд и принимает значения от 0 до 65536. Нулевое значение отключает контроль времени: контроллер будет ждать данные бесконечно. Любое ненулевое значение включает контроль.

Единица измерения — главный источник ошибок. Записанное число умножается на 10 миллисекунд: значение 30 даёт выдержку 300 миллисекунд, значение 100 — одну секунду. Наладчик, записавший «1000» в расчёте на секунду, получит десять секунд ожидания и потом долго ищет, почему цикл опроса стал вязким.

Как ведёт себя инструкция. Руководство разбирает случай с выдержкой 300 миллисекунд: контроллер ждёт данные, и, как только они пришли, обмен завершается сразу — оставшееся время не выжидается. Если за 300 миллисекунд данные не пришли, инструкция завершается и сообщает об ошибке тайм-аута приёма.

Тайм-аут действует на две инструкции: приём в свободном формате и обмен по сетевому варианту протокола. На отправку он не влияет.

Как выбрать значение. Ориентируйтесь на реальное время ответа прибора с запасом в два-три раза, а не на «покрасивее». Слишком короткая выдержка даёт ложные ошибки на медленных приборах и загруженной сети; слишком длинная — превращает один неотвечающий прибор в задержку всего опроса, потому что каждая попытка съедает полную выдержку.

Отключать тайм-аут нулём стоит только в одном случае: контроллер работает сервером и просто ждёт, когда мастер что-нибудь пришлёт. В опросе приборов ноль недопустим — одна оборванная линия остановит обмен насовсем.

Прикреплённая документация

Георгий Жуков Георгий Жуков Ведущий инженер

Этот ответ был полезен?

Не нашли ответ?

Инженер сервисной службы ответит на почту. Вопросы, которые повторяются, мы публикуем в базе знаний — без ваших контактов.

Вопрос из раздела Как работает тайм-аут приёма в сетевых инструкциях PMP20?