Дискретные активаторы
Контакторы
Стартеры электродвигателей
Кнопки
Соленоиды
Аналоговые /сложные датчики
LVDT
Датчик деформаций
Измеритель потока (например газовый счетчик)
Термопара/термистор
Датчик давления
Аналоговые активаторы
Позиционер
Электроклапан
Электродвигатель с регулируемым числом оборотов
Инструменты
Счетчик частиц
Измеритель кислотности
Хроматограф
Интерферометр
Интеллектуальные активаторы
Одиночный петлевой контроллер
Интеллектуальный контроллер электродвигателя
Прочие аналоговые цепи ввода/вывода мощностью 4-20ma
Устройства, обрабатывающие интенсивный поток данных
Экран вывода сообщений
Регистраторы данных
Сложные устройства ввода/вывода
Устройства поблочного ввода/вывода
Сканеры полоскового кода
Сканеры линии
Машинное зрение
RF ID Tags
Супервизорные контроллеры
Промышленные
Компьютеры типа PC, VME, SDT-32
Станции SCADA
Консоль оператора
Порт RS-232
Рисунок 1.2. Объединение нескольких сетей, каждая из которых поддерживает передачу пакетов только фиксированной длины.
- По-событийное обновление показаний датчиков.
Режим сканирования или опроса изменений наиболее соответствует естественному поведению датчиков, производящих измерения только при свершении некоторого события, а не в строго определенные моменты времени. Более того, процесс измерения (например, в аналого-цифровом преобразователе) должен быть завершен как можно быстрее, и система, при которой моменты завершения измерений происходят в строго определенные периодические моменты времени, не самая оптимальная. По-событийная система требует наличия по-событийного планировщика на оконечных устройствах, одноуровневого доступа к сети и существования принимающего узла, который имеет коммуникационные и вычислительные ресурсы для обработки поступающих значений, если таковое требуется. Это влечет за собой соответствующие изменения архитектуры каждого элемента управляющей цепи.
- Одноуровневая архитектура.
Такая архитектура позволяет связываться устройствам прямо через сеть управления. Это делает ненужным центральный контроллер, являющийся узким местом всей системы. Как было замечено ранее, центральный контроллер – просто исторический артефакт тех времен, когда вычислительные мощности были сосредоточены в больших центральных машинах. С приходом недорогих СБИС с достаточными вычислительными ресурсами, такая архитектура стала полностью вымирающей и ненужной. Независимо от демократического одноуровневого доступа к среде передачи и по-событийного обновления показаний датчиков, одноуровневая система также требует достаточной интеллектуальности для датчиков и активаторов (особенно для активаторов) для обеспечения прямого выполнения управляющего алгоритма (и производства необходимых действий) вместо ожидания управляющей команды от центрального котроллера, вырабатываемой на основе обработки данных от датчиков.
- Выделенный прикладной процессор.
Многократно повторяющиеся прерывания прикладного процессора на обработку приходящих пакетов или других коммуникационных задач отрицательно влияют на производительность в обоих случаях. Они также влияют на надежность узла и системы в целом. Пусть занятый канал послал десять пакетов с интервалом 100 микросекунд при размере пакета 100 бит и скорости 1 мегабит в секунду и ждет подтверждения приема каждого пакета. На обработку прерывания, возникающего при приеме пакета, процессор тратит не менее 25 микросекунд и в итоге приложению может не хватить времени на сортировку приходящих пакетов, осуществление процесса ввода/вывода, выполнения локальных вычислений и генерацию пакетов с ответом. Таким образом, на приемном конце пакеты могут быть потеряны. Потерянные пакеты приведут к срыву завершения транзакции и могут вызвать остановку работы сети в целом.
- Задержки при прохождении роутеров (маршрутизаторов) и шлюзов.
Роутеры, соединяющие подсети, должны работать на уровне приложений модели OSI/ISO, если реализация сетевого уровня протокола не предполагает маршрутизации на своем уровне. Для иллюстрации отличия между маршрутизацией прикладного и системного уровня, приведем аналогию с почтовой службой. Письмо. Посылаемое из города А в город Б, может быть отсортировано прямо по адресу города и доставлено (маршрутизация сетевого уровня). Во втором случае, клерк на почте не читает адрес города, а только фамилии адресата и отправителя и должен помнить, что мистер Джонс из города А всегда пишет мистеру Грину в город Б (маршрутизация прикладного уровня). Такая система требует больше ресурсов и работает медленнее. Читатель может сам сделать выводы о производительности, масштабируемости, восстанавливаемости и гибкости на основании приведенного примера.
- Прогнозируемость.
Прогнозируемость (Determinism) иногда упоминается как фактор, влияющий на производительность без уточнения почему. Однако тот детерминизм, который упоминается везде и всюду, есть прогнозируемость системного уровня и означает, что цикл измерения завершится в течении строго определенного временного интервала, начиная с возникновения события или условия, заставившего датчик сработать. Такая прогнозируемость невозможна в реальном мире за исключением традиционных однопоточных систем полностью контролируемых центральным устройством, подобным PLC (Programmable Logical Controller), выполняющим постоянное сканирование в строго определенные моменты времени, использующим централизованно управляемую шину типа точка-точка или шину с множественным доступом и временным разделением. Схема с прослушиванием несущей и контролем коллизий не гарантирует прогнозируемости уровня соединений (link level determinism). Такие технологии как предупреждение коллизий, разрешение коллизий, определение коллизий, система приоритетов и их комбинации, будучи применяемы в рамках CSMA схемы доступа (carrier-sense multiple access), могут увеличить прогнозируемость системы. Должна существовать возможность включать и выключать эти дополнительные подпротоколы избирательно для канала, узла или параметров узла без остановки всей системы.
Решающим фактором, обеспечивающим максимум прогнозируемости системного уровня, является существование выделенного приложения и коммуникационных ресурсов на каждом узле. Большинство процессоров узлов в управляющих системах фактически работают по стохастическому расписанию, поскольку они работают не в режиме фиксированных интервалов измерений полностью независимом от прерываний. События в виде сигналов от локальных датчиков или в виде пакетов, приходящих по сети от удаленных датчиков, стохастичны по своей природе. Они происходят не в фиксированные моменты времени, а как бог на душу положит. Узел, управляемый прерываниями недетерминирован от рождения. К примеру, сканирование проходящего трафика в занятом канале и сортировка приходящих пакетов иногда может приостановить на длительное время выполнение прикладных задач, таких как опрос датчиков и генерация выходных событий.
Суммируя все вышесказанное можно заключить, что прогнозируемость уровня соединений может быть максимизирована для всех узлов путем выбора таких дополнительных механизмов, как предотвращение коллизий, разрешение коллизий, выявление коллизий, система приоритетов доступа. Прогнозируемость уровня приложений может быть улучшена путем введения выделенных приложений и коммуникационных ресурсов, которые не прерывают друг друга. Все факторы, влияющие на прогнозируемость конкретной управляющей цепи, должны быть оптимизированы для эффективной работы.
Однако, прогнозируемость, как объективная реальность, более похожа на требования к “реально быстрым” системам, нежели на требования к системам “реального времени”. Цель первых иллюзорна и препятствует выработке любого реального решения. Второе требует системного подхода и предполагает оптимизационные решения для системных требований реального времени.