Forenote: Это в основном программирование на основе сайта, и в то время как ваш вопрос не имеет ответ в контексте программирования, я знаю, что в вашем промышленного применения важность циклического против ациклических, как правило, быть очень специфичным аппаратным/протокольным, и на самом деле это скорее сетевая проблема, чем программирование.
Циклические данные - это не просто «непрерывные» данные. В промышленности это относится к данным, предоставленным по гарантированному (или по крайней мере высоко прогнозируемому) графику. Если поток данных должен был нарушать расписание, это может иметь катастрофические последствия (VFD пропускает свою команду отключения на долю секунды, и вы теряете руку!).
Ациклические данные по-прежнему надежны для управления машиной, они поставляются менее детерминированным способом (порядка миллисекунд, иногда до нескольких секунд). При доступе к одному VFD с одним ПЛК, вы, вероятно, никогда не будете уведомлять об этом разрыве, и на самом деле вы можете воспринимать более плавные и быстрые передачи данных. С точки зрения аппаратного интерфейса ациклическая передача данных не обеспечивает столь сильную гарантию того, когда или когда одна машина ответит на запрос другого.
Обе формы передачи данных обеспечивают передачу данных со скоростью намного быстрее, чем люди могут иметь дело, но в определенных приложениях каждый из них будет иметь свои собственные последствия.
Циклические сети обычно должны иметь форму ведущего/ведомого, где допускается только одно устройство. говорит за один раз, и ответы всегда возвращаются, даже если только для подтверждения того, что сообщение получено. Циклические сети обычно не допускают столько устройств на одном и том же кабеле, и часто они будут передавать большие объемы данных с более низкой скоростью.
Ациклические сети могут считаться немного более изящными, но поскольку они пропускают формальностей, они могут часто обманывать больше устройств в сети и одновременно получать более высокие скорости. Это происходит за счет случайных столкновений данных/узких мест, а иногда даже запросов на критические данные просто игнорируются/теряются без указания сбоя или успеха от цели (в случае, если отправитель, скорее всего, будет сидеть и ждать отчаянно за сообщение, которое оно не получит, и часто затем запускает сторожевые таймеры процессов, которые будут отключать систему).
С точки зрения программиста, между этими двумя типами передачи не так много.
Что обычно будет диктовать ситуацию,
- сколько устройства работают на проводе (иногда это заставляет ответ сразу же)
- насколько чувствительны/летучее являются данными, которые они хотят поделиться (как полезны сообщения, если они немного опоздали)
- сколько данных они могут потребоваться для отправки в любой момент времени (изменение требований к сети, которая уже создает условия гонки, может быть трудно предвидеть/избежать, если вы не видите он идет перед рукой).
Надеюсь, что это поможет :)