logo search

1.1.3. Распределенные системы автоматизации

С ростом количества датчиков, увеличением площади территории, на которой расположена автоматизированная система и усложнением алгоритмов управления становится более эффективным применение распределенных систем [Bertocco, Vyatkin - Хазарадзе]. Распределенные системы состоят из множества территориально разнесенных контроллеров и модулей ввода-вывода. При таком подходе структура распределенной системы и структура алгоритма ее работы становятся подобны структуре самого объекта автоматизации, а функции сбора, обработки данных, управления и вычисления оказываются распределенными среди множества контроллеров. Каждый контроллер работает со своей группой устройств ввода-вывода и обслуживает определенную часть объекта управления. В частности, технологическое оборудование, как правило, выпускается с уже встроенными ПЛК. Тенденция децентрализации управления и приближения контроллеров к объектам управления является общей для всех систем автоматизации и отчасти навеяна успехами объектно-ориентированного программирования. Кроме того, сосредоточенная система является частью или частным случаем распределенной, поэтому появление распределенных систем является следствием естественного развития от частного к общему.

Распределенную систему управления (РСУ, DCS - Distributed Control System) можно определить как систему, состоящую из множества устройств, разнесенных в пространстве, каждое из которых не зависит от остальных, но взаимодействует с ними для выполнения общей задачи [Bonastre]. В предельном случае элементы системы могут находиться на разных континентах земного шара, а связь между ними может выполняться через интернет. В качестве "множества устройств" могут выступать любые микропроцессорные устройства, например, ПЛК или разнесенные в пространстве модули ввода-вывода одного контроллера. Однако в последнем случае только сбор данных можно рассматривать как распределенный, в то время как функция управления является сосредоточенной в одном контроллере.

Максимальные преимущества распределенной системы достигаются, когда контроллеры работают автономно, а обмен информацией между ними сведен до минимума.

Распределенная система имеет следующие характеристики, отличающие ее от сосредоточенной:

Рис. 1.3. Модель распределенной системы автоматизации в соответствии со стандартом МЭК 61499

Распределенная система смягчает также требования к операционным системам (ОС) реального времени (см. раздел "Программное обеспечение"), поскольку задачи распределены между параллельно работающими контроллерами, на каждом из которых установлена отдельная ОС.

Для эффективного проектирования распределенных систем автоматизации необходимы строгие методы их описания. Необходимо также обеспечить совместимость и взаимозаменяемость между собой всех устройств, входящих в систему и выпускаемых разными производителями. Для этих целей был разработан международный стандарт МЭК 61499 "Функциональные блоки для индустриальных систем управления" [IEC] (см. также раздел "Программное обеспечение"). Он используют три уровня иерархии моделей при разработке распределенных систем: модель системы, модель физических устройств и модель функциональных блоков. Модели всех уровней в соответствии со стандартом представляются в виде функциональных блоков, которые описывают процесс передачи и обработки информации в системе.

Особенностью функциональных блоков стандарта МЭК 61499 является то, что они учитывают не только традиционное инициирование выполнения алгоритма с помощью тактирования или временного расписания, но и по признаку наступления некоторых событий (событийное управление). Событийное управление является более общим, а тактирование можно рассматривать как его частный случай, заключающийся в периодическом появлении одного и того же события (сигнала тактирования).

Функциональные блоки (ФБ) могут быть использованы также для поддержания всего жизненного цикла системы, включая проектирование, изготовление, функционирование, валидацию* и обслуживание. Примеры применения стандарта и дальнейшая разработка методики проектирования распределенных систем с его помощью описываются в работах [Hummer - Zoitl].

Модель распределенной системы

Модель распределенной системы автоматизации в соответствии со стандартом МЭК 61499 может быть представлена как набор физических устройств (например, ПЛК), взаимодействующих между собой с помощью одной или нескольких промышленных сетей (рис. 1.3). Сети могут иметь иерархическую структуру.

Функции, выполняемые системой автоматизации, моделируются с помощью программного приложения, которое может располагаться в одном устройстве (например, ПЛК), как, например, приложение В на рис. 1.3, или может быть распределено между несколькими ПЛК, как приложения А и Б. Например, приложение, выполняющее ПИД-регулирование, может располагаться в трех устройствах, из которых первое выполняет функцию ввода данных от датчиков (является модулем ввода), второе выполняет алгоритм регулирования, третье выполняет функцию вывода данных в исполнительное устройство. Вторым примером может быть клиент-серверное приложение, в котором клиент расположен в одном устройстве, сервер - в другом.

Модель физического устройства

Рис. 1.4. Пример модели одного из устройств, показанных на рис. 1.3 (например, ПЛК2) по стандарту МЭК 61499. Стрелками показаны потоки данных и событий

Каждое физическое устройство в распределенной системе должно содержать по крайней мере один интерфейс к объекту управления или к промышленной сети и может содержать несколько (в том числе ноль) ресурсов (определение ресурса см. ниже), см. рис. 1.4. При этом устройство по МЭК 61499 рассматривается как конкретный экземпляр определенного типа устройств, по аналогии с объектно-ориентированным программированием. Интерфейс с объектом управления обеспечивает отображение**данных и событий физического процесса (например, аналоговых или дискретных сигналов) в ресурсы и обратно.

В одном устройстве может быть несколько ресурсов и несколько программных приложений. Каждое приложение может исполняться на нескольких устройствах (см. рис. 1.3) и может занимать часть ресурсов в одном устройстве (рис. 1.4).

Коммуникационные интерфейсы выполняют отображение между ресурсами и промышленной сетью. Они могут предоставлять информацию ресурсу в виде данных или событий, а также выполнять дополнительные функции для поддержки программирования, конфигурирования, диагностики и т.д.

Модель ресурса

Ресурс рассматривается как функциональная единица, которая содержится в устройстве (например, в ПЛК), имеет независимое управление своими операциями и обеспечивает различные сервисные функции (сервисы) для программного приложения, включая планирование и исполнение алгоритмов. Ресурс может быть создан, сконфигурирован, параметризован, стартован, удален и т п. без воздействия на другие ресурсы устройства. Примером ресурса может быть память и время, выделенные для выполнения задачи в центральном процессоре.

В функции ресурса входит прием данных или событий от объекта управления или коммуникационного интерфейса, обработка данных и событий и возврат данных и событий в процесс или промышленную сеть, в соответствии с алгоритмом работы программного приложения, использующего данный ресурс.

Рис. 1.5. Модель ресурса распределенной системы по стандарту МЭК 61499

В соответствии с рис. 1.5, ресурс моделируется следующими элементами:

Модель программного приложения

Программное приложение состоит из сети функциональных блоков (подробнее см. раздел "Программное обеспечение"), ветви которой переносят данные и события (рис. 1.6). Поток событий определяет выполнение алгоритмов, содержащихся в функциональных блоках. В состав функциональных блоков могут входить и другие программные приложения (суб-приложения).

Программные приложения могут быть распределены между несколькими ресурсами в одном или в нескольких устройствах (ПЛК). Ресурс реагирует на события, поступающие из интерфейсов, следующими способами:

Рис. 1.6. Модель приложения распределенной системы по стандарту МЭК 61499

Модель функциональных блоков распределенной системы автоматизации подробно описана в разделе "Программное обеспечение".

Архитектура системы с общей шиной

Архитектура распределенной системы промышленной автоматизации на основе общей шины показана на рис. 1.7. Для того, чтобы получить данные из модуля или контроллера, компьютер (или контроллер) посылает в шину его адрес и команду запроса данных. Микропроцессор, входящий в состав каждого модуля или контроллера, сверяет адрес на шине с его собственным адресом, записанным в ПЗУ, и, если адреса совпадают, исполняет следующую за адресом команду. Команда позволяет считать данные, поступающие на вход устройства, или установить необходимые данные на его выходе.

Распределенная система с общей шиной порождает две новые проблемы по сравнению с топологией "точка-точка" (когда соединяются только два устройства, как на рис. 1.1): необходимость адресации устройств и необходимость ожидания в очереди. Добавление адреса в коммуникационный пакет снижает скорость обмена при коротких сообщениях, а обмен по общей шине приводит к тому, что каждое устройство для передачи сообщения должно ждать, когда шина станет свободной. Это замедляет скорость обмена между устройствами по сравнению с топологией "точка-точка". Задержка в сетях с большим количеством устройств становится существенным ограничением на применение топологии с общей шиной [Kim] в некоторых приложениях, в частности, в случае ПИД-регулирования, когда задержка в сети ограничивает тактовую частоту работы контура регулирования. Для таких случаев используют локальные подсети или локальные технологические контроллеры.

Рис. 1.7. Пример архитектуры распределенной системы сбора данных и управления на модулях RealLab! Расшифровку обозначений см. во введении к разделу "Разновидности архитектур" и "Требования к архитектуре".

Распределенные системы позволяют решить также следующую проблему. С ростом количества датчиков в системе, показанной на рис. 1.1, увеличивается число и суммарная длина проводов, соединяющих датчики с устройством ввода. Это приводит не только к росту стоимости кабельного оборудования, но и к проблемам, связанным с электромагнитными наводками, особенно если датчики распределены по большой площади (например, в промышленной теплице датчики распределены по площади около 6 Га, а в элеваторе число датчиков достигает 3...5 тыс. шт.). В распределенной системе модули ввода-вывода изготавливаются с небольшим количеством входов (обычно от 1 до 16), а сами модули располагаются вблизи места установки датчиков. Увеличение количества датчиков (входов) достигается путем наращивания числа модулей и объединения их с помощью общей шины. Это сокращает общую длину проводов в системе, а также длину проводов с аналоговыми сигналами.

Связь отдельных устройств в распределенной системе может осуществляться с помощью любой промышленной сети, см. раздел "Промышленные сети и интерфейсы". Наиболее распространены в России сети Profibus, что связано с популярностью изделий фирмы Siemens, а также сети Modbus с физической шиной RS-485 благодаря распространенности модулей и контроллеров фирм ICP DAS, Advantech и RealLab!. За последние годы стремительно возросло количество используемых сетей Ethernet (точнее, Industrial Ethernet) в качестве промышленных сетей при скорости передачи 10, 100 и 1000 Мбит/с.

Некоторые модули ввода-вывода, входящие в состав распределенных систем, позволяют по команде из компьютера выполнять функции автоматического регулирования (например, модули NL-8TI, NL-16AIфирмы RealLab!). Для этого в них посылают значение уставки и параметры ПИД-регулятора (пропорциональный, дифференциальный и интегральный коэффициенты), затем команду запуска процесса регулирования. Наличие ПИД-регулятора в модулях распределенной системы позволяет осуществить локальное регулирование (например, поддержание стабильной температуры в камере тепла и холода), разгрузив общую шину для выполнения других задач.

Распределенные системы строятся, как правило, из коммерчески доступных компонентов (ПЛК, модулей ввода-вывода, датчиков, исполнительных устройств). Однако для однотипных тиражируемых систем может быть выгодно строить специализированные системы, состоящие из полностью заказных (вновь спроектированных) аппаратных и программных средств [Garcia]. Граница целесообразности такого подхода определяется объемом выпуска изделий.

Программирование распределенных систем автоматизации выполняется стандартными средствами, рассмотренными в разделе "Программное обеспечение".

* Валидация - подтверждение соответствия системы требованиям ее назначения. Выполняется с участием потребителя. Не путать с верификацией - доказательством достоверности. Валидация - это верификация с участием потребителя (терминология стандарта ИСО 9001)

** Отображение - закон, по которому каждому элементу одного множества ставится в соответствие единственный элемент другого множества.