Реферат: Контроллеры для автоматизации крупных промышленных объектов
Взаимовлияние программ может привести к чрезвычайно высокой трудоемкости технологической наладки объекта.
Во-первых, модификация программы в любой ее части может изменить время ее выполнения существенным образом, что повлияет на динамические свойства других участков программ. В некоторых случаях, ощутимое перераспределение процессорного времени может возникать только при соблюдении определенных условий (состояний), т.е. очень редко. Выявление и устранение подобных программных ошибок может занять неизвестное количество времени.
Во-вторых, для запуска исправленной в ходе технологической наладки программы требуется перезагрузка программы в контроллере на работающем объекте. Если контроллер ответственен за крупный участок технологии, то такая перезагрузка может повлечь остановку основного оборудования, что просто не допустимо.
Недостатки классической параллельной шины
Помимо перечисленных выше противоречий, возникающих при использовании традиционных контроллеров в управлении сложными технологическими объектами, существует ряд недостатков, порождаемых самой природой параллельной шины:
Во-первых, большинство параллельных шин являются одномастерными (однопроцессорными). Многомастерные (многопроцессорные) шины существенно сложней и более дорогостоящи. Если для решения задач, потребуется многопроцессорная обработка, то необходимо использовать относительно дорогие многопроцессорные шины типа VME или аналогичные.
Во-вторых, многопроцессорные параллельные шины имеют централизованную схему арбитража. Арбитр - это отдельное самостоятельное устройство, которое управляет доступом процессоров к шине. Выход из строя единственного элемента - арбитра, приведет выходу из строя всего контроллера.
В-третьих, шинные циклы на параллельной магистрали являются элементарными операциями чтения/записи операндов с точно заданными адресами. Шинные циклы не обладают свойством транзакции, т.е. невозможно корректно "откатиться" в состояние до выполнения неудачного цикла и попытаться повторить его вновь. Из этого следует сразу несколько проблем:
1. любой сбой при выполнении шинного цикла является серьезной системной ошибкой (исключительной ситуацией), корректная обработка которой практически невозможна. Редко какие операционные системы способны сохранить функционирование при подобных сбоях;
2. обязательное наличие точного адреса операнда в шинном цикле лишает возможности организации динамической маршрутизации информационных потоков;
3. ряд ограничений в адресации на параллельных шинах - отсутствуют широковещательные сообщения.
Вывод. Крупные контроллеры с централизованной обработкой даже с очень мощным процессором не удовлетворяют предъявляемым требованиям в полной мере. Необходима децентрализация обработки между небольшими автономными контроллерами, оптимальный объем которых соответствует объемам ФУ, для того, чтобы минимизировать обмен информацией между контроллерами.
Структура системы, адекватная функционально-технологической структуре объекта, на традиционных контроллерах возможна, но при этом стоимость системы существенно возрастет. С точки зрения эксплуатации, такая система будет иметь ряд недостатков. Отсутствие архитектурных решений, повышающих надежность системы будет допускать возможность отказов, приводящих к остановкам основного технологического оборудования на длительные периоды времени.
Контроллер с последовательной шиной
Распределение интеллекта по небольшим автономным контроллерам продиктовано разбиением технологии на функциональные узлы. Если представить архитектуру контроллера, состоящего из автономных интеллектуальных модулей, в которых объем каналов ввода/вывода и производительность встроенного в модуль процессора достаточны для управления средним функциональным узлом, то такая архитектура будет адекватной технологической структуре объекта автоматизации. Ключевой проблемой здесь является организация межмодульного взаимодействия внутри контроллера.
Локальная сеть внутри контроллера вместо параллельной шины
Сегодня локальные сети решают весь комплекс задач по объединению компьютерного и контроллерного оборудования в единую систему. Почему бы не использовать сетевые технологии для организации межмодульной коммуникации внутри контроллера?
Фактически контроллер с внутренней локальной сетью будет представлять собой кластер автономных интеллектуальных модулей, объединенных этой сетью. Важной предпосылкой для использования стандартной сети из семейства современных полевых сетей "Fieldbus" в качестве межмодульной среды передачи является существенное снижение интенсивности межмодульного взаимодействия. Проведенные нами исследования и оценки показывают, что интенсивность обмена информацией между интеллектуальными модулями может снизиться в сотни раз. Это достигается за счет реализации операций ввода/вывода УСО, обработки информации и управляющих программ внутри интеллектуального модуля. Межмодульное взаимодействие в этом случае требуется только для получения информации о значениях параметров, необходимых для функционирования собственных алгоритмов управления и заданий/рапортов извне. С другой стороны, объемы отдельных ФУ могут превосходить возможности отдельного модуля, поэтому сеть внутри контроллера должна быть достаточной для обеспечения более тесных и интенсивных связей, необходимых для решения задач внутри ФУ.
На "цеховом" уровне, где представлено несколько контроллеров, стоит задача их объединения в единую систему. Это означает, что сеть интеллектуальных модулей должна быть двухуровневой и включать сеть первого ранга, образующую контроллеры ФУ из интеллектуальных модулей и сеть второго ранга, объединяющую контроллеры (кластеры) в единую систему (рис 1).
Кластер модулей, объединенных сетью первого ранга, можно назвать контроллером функциональных узлов (далее КФУ).
Важной особенностью этой архитектуры является то, что сетевой шлюз в КФУ является абсолютно прозрачным для модулей. Таким образом, система выглядит для модулей как одноранговая сеть, т.е. для любого отправителя (модуля) не имеет значения, где физически находится получатель сообщения - в том же КФУ, или в другом. Это еще одно неоспоримое достоинство предлагаемой архитектуры.
Рис. 1. Сеть интеллектуальных модулей
Выбор стандартных локальных сетей для объединения интеллектуальных модулей внутри КФУ и полное исключение традиционных параллельных шин, как средства межмодульной коммуникации, позволяет без дополнительных затрат решить ряд проблем, неразрешимых для контроллеров с традиционной архитектурой. В этом состоит суть предлагаемого решения для организации архитектуры контроллера, адекватной предъявляемым требованиям.
Замена параллельной шины внутри контроллера на локальную сеть оптимально и без всяких оговорок решает ряд ключевых задач, определяющих основные системные свойства контроллеров:
Во-первых, обеспечение надежной среды передачи данных. В современных локальных сетях обеспечивается достоверность передаваемых по сети данных, которые защищаются циклическими контрольными суммами. Подобная защита данных от искажений отсутствует в большинстве параллельных шин.
Во-вторых, некоторые сети обеспечивают возможность инициативного доступа к среде передачи со стороны любого сетевого абонента. Это позволяет реализовать разнообразные схемы обработки информации - по инициативе "ведущего" обработчика, управление по событиям, управление потоком данных.
В-третьих, дает возможность осуществить разнообразные методы адресации. Некоторые сети не имеют физических адресов - все сообщения имеют свой идентификатор типа или класса сообщений. Это позволяет строить динамические схемы маршрутизации информационных потоков в системе. Кроме того, имеются специальные служебные и широковещательные сообщения, без которых трудно реализовать ряд необходимых системных функций - например, синхронизацию времени и другие функции, требующие синхронной обработки.
В-четвертых, отсутствие централизованного арбитра и широкие возможности авто-конфигурирования сетевой топологии существенно повышает надежность и живучесть контроллера. В многопроцессорных параллельных архитектурах, напротив, используется централизованная схема арбитража.
В-пятых, более высокоуровневый обмен информацией. Общение между интеллектуальными модулями происходит не на уровне элементарных регистровых обращений (циклов чтения/записи), а на уровне смысловых сообщений. В сетях элементом информации является сообщение, оформленное в виде пакетов. Пакет является нормальной транзакцией, целостность которой автоматически отслеживается на сетевом уровне. Более того, даже разрушение самой сетевой среды во время передачи пакета не является фатальной системной ошибкой - это обычная штатная ситуация, предусмотренная в любой сети, в отличие от параллельной шины, где сбой шинного цикла является серьезной системной ошибкой с фатальными последствиями. Это свойство локальных сетей изящно и совершенно естественно решает такую глобальную проблему для архитектур с параллельной шиной, как "горячая замена" модулей в контроллере.