В эпоху торжества Internet, мультимедиа и пакета BackOffice как-то неловко обращать внимание публики на промышленность. Но нужно. С их помощью осуществляется распределение электроэнергии, управление полетом космических аппаратов и работой металлорежущих станков, регулирование микроклимата в зданиях. Полагаться на людей нельзя - и ответственность в критических приложениях перекладывается на автоматику.

Автоматическое управление начиналось с простых релейных схем, но теперь уровень сложности задач предполагает опору на цифровую обработку информации с использованием практически всех современных компьютерных технологий. Динамика развития индустрии промышленных систем отражена в отчете [1], данные которого основаны на опросах потребителей о закупаемых продуктах. Если в 1993 году было упомянуто 45 продуктов, то в 1996 году эта цифра выросла до 74 с основными закупками в трех крупных областях:

  • управление процессами и инструментами (33%);
  • интерфейс оператор - компьютер (37%);
  • двигатели, приводы и управление движением (30%).

В таблице 1 приведены данные о приложениях, которые наиболее интенсивно используются в промышленных системах. Первые три места занимают распределенные системы управления, приложения на основе ПК и электроника для авиационных моторов, суммарно составляя 30% всех затрат в этой области. Другой аспект раскрывается в таблице 2, показывающей процентное распределение покупок по отраслям промышленности. Можно отметить следующие тенденции: увеличивается присутствие ПК в промышленном управлении, а по отраслям растут темпы автоматизации машиностроения; в химическом производстве динамика сохраняется; в нефтепереработке заметно небольшое замедление.

Table_1

 

Таблица 1.
Наиболее популярные продукты для промышленных систем.

 

Table_2

 

Таблица 2.
Затраты на автоматизацию по отраслям промышленности.

 

1. Организация промышленных систем

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

На этом примере можно рассмотреть основные части промышленной системы.

  • Центральным элементом в ней служит вычислительный блок, который в зависимости от решаемой задачи может быть либо простейшей микроплатой, либо многопроцессорным комплексом с внешней памятью большого объема, базой данных и средствами сетевого взаимодействия. Вычислительный блок решает две задачи. Первая - это собственно программное управление на основе модели реального процесса. Вторая - организация интерфейса с обслуживающим персоналом. Здесь визуализируется состояние объекта управления путем вывода его параметров и статистических данных, а также содержатся средства для ручного управления.
  • Информация об объекте, как правило аналоговая, собирается датчиками. Некоторые из датчиков пассивны: управляющая система сама периодически их опрашивает. Другие датчики самостоятельно прерывают работу системы, передавая ей информацию.
  • Воздействие на регулируемый процесс осуществляется с помощью электрических или электромеханических исполнительных механизмов. Например, это может быть включение/выключение вентилятора с целью регулирования температуры.
  • Между датчиками и исполнительными устройствами, с одной стороны, и устройствами цифровой обработки - с другой ставятся алфавитно-цифровые (АЦП) и цифро-аналоговые (ЦАП) преобразователи. Кроме того, для управления исполнительными устройствами применяются программируемые логические контроллеры (ПЛК).

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

1. Промышленные системы функционируют в тяжелых для электронной техники условиях внешней среды, поэтому по сравнению с обычными компьютерами они должны иметь повышенную термо-, вибро-, ударопрочность.

2. Требуется подключать гораздо более широкую номенклатуру внешних устройств.

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

Традиционный подход выделяет в системах промышленной автоматизации пять уровней: ввод/вывод (В/В), управление В/В, диспетчерское управление и сбор данных (SCADA), управление производством (MES) и планирование ресурсов предприятия (MRP). Таким образом при разработке подобных систем решаются и аппаратные, и программные задачи: первый и частично второй уровень составляют аппаратную базу для программного обеспечения верхних слоев.

2. Аппаратная архитектура

Необходимость создания для каждой системы автоматизации уникальной конфигурации разнообразных периферийных устройств ставит на первое место вопрос о принципах их подключения и обеспечении возможности согласованного функционирования. Путь, по которому пошла эволюция систем автоматизации, - модульность с опорой на стандартизацию.

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

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

Что дают стандарты? Для разработчиков систем автоматизации - это возможность создавать открытые модульные комплексы из готовых программных и аппаратных блоков разных производителей. Выигрывают и поставщики - во-первых, они могут действовать на всем рынке, а не только на своей частной делянке. Во-вторых, они получают доступ к профессионально разработанным спецификациям открытых стандартов, для которых не требуется приобретение патентов и которые не защищены авторским правом.

Успех стандарта не определяется постановлением правительства. Он будет продуктивен при условии, что его поддерживают поставщики, разработчики и потребители. И уж во всяком случае стандарт должен развиваться, отражая постоянно растущий потенциал базовых технологий. В этом плане в области систем управления жизнь кипит: при изобилии стандартов разного уровня идет жесткая конкурентная борьба альтернативных подходов.

3. Стандарты шин

По отмеченным причинам одним из основных архитектурных решений для систем промышленной автоматизации является магистрально-модульная архитектура, в которой различные внешние блоки - модули связываются между собой через общую магистраль. Первым из получивших широкое признание международных стандартов на магистрально-модульные системы стал принятый в 1968 году стандарт CAMAC. Сегодня уже очевидно, что большинство разработчиков систем промышленной автоматизации практически отказались от применения нестандартных технических решений (их доля снизилась до 12%), возможно даже в ущерб техническим характеристикам, ориентируясь на стандарты де-факто и де-юре.

На рис. 1 приведены данные результатов исследования корпорацией VDC (Venture Development Corp.) мирового рынка коммерческих компьютерных плат в приложениях реального времени и встроенных приложениях [2]. Общий объем продаж за 1996 год составил 2,426 млрд. долл. Из этой суммы на архитектуру VME пришлось 1,262 млрд.; на ПК архитектуры (включая ISA, EISA, Multibus I и II, PC/104) - 720,8 млн.; на платы PCI - 237,6 млн.; на встроенные материнские платы - 205,8 млн. долл.

Picture_1
Рисунок 1.
Распределение продаж на рынке компьютерных плат в 1996 году.

4. Технологии VME и PCI

Технология шины VMEbus зародилась в 1979 году как спецификация компании Motorola и в 1987-88 гг. была признана международным стандартом (IEEE 1014, IEC821). Эта магистрально-модульная архитектура выдержала конкуренцию с Multibus, FUTUREbus+ и, как следует из данных на рис. 1, несмотря на почтенный возраст, остается лидером для промышленной автоматизации. По-видимому, успех стандарта VME стал следствием множества факторов.

Технология VME позволяет создавать вычислительные системы в очень широком диапазоне производительности, от настольных компьютеров до многопроцессорных супер-ЭВМ, от простых и дешевых промышленных контроллеров до мощнейших многопроцессорных систем управления десятками тысяч аналоговых и цифровых каналов ввода/вывода. Не претендуя на достижение рекордных показателей, VMEbus обеспечивает наилучшее соотношение цена/производительность для системы в целом и предоставляет хорошие возможности для наращивания ресурсов.

Важным фактором стало то, что продвижением и развитием стандарта VME занимается организованная в 1984 году международная ассоциация VITA - VFEA International Trade Association. Ее основные спонсоры - крупнейшие американские компании Motorola и Sun Microsystems. Членами VITA являются около 100 европейских, американских, азиатских производителей совместимой продукции VMEbus: DEC, HP, Force Computer, Microware, IBM и др.

После официального принятия стандарта заботой комитета стало поддержание жизнеспособности VME в соответствии с быстро меняющимися технологическими условиями. Ввод в строй нескольких расширений и новой версии стандарта для 64-разрядной передачи данных VME64 показал, что потенциал шины VME далеко не исчерпан. Новейшие реализации VMEbus обеспечивают пропускную способность 320 Мбайт/с.

Архитектура VME выросла вокруг семейства Motorola 68xxx, но сейчас имеются VME-реализации для RISC-процессоров, рабочих станций Sun, DEC, HP, SGI, Intel и клона PowerPC. По данным [3], на сегодня существует 370 различных процессорных плат VME, которые выпускает 61 компания. Из общего числа 39% плат центральных процессоров поддерживают 64-разрядную передачу данных, 61% - 16- и 32-разрядную.

4.1 Технические характеристики VMEbus

Конструктивно в основу VMEbus положен самый популярный механический стандарт - Евромеханика. Конечная система компонуется из функциональных модулей VME, устанавливаемых в крейты, число которых не ограничено. Крейт представляет собой каркас с объединительной магистралью VME, источником питания и вентиляцией. В каждый крейт можно поместить до 21 модуля VME. Модули соединяются через объединительную плату с нормированным волновым сопротивлением и терминаторами на каждой сигнальной линии. В качестве соединителей используются надежные 96-штырьковые разъемы DIN602-3, причем 8- и 16-разрядные модули имеют один разъем, 32/64-разрядные - два.

Сегодня технология VME, кроме основного стандарта VMEbus/VME64, включает несколько расширений.

Технология оперативной замены Live Insertion представляет собой минимальное аппаратное дополнение к стандартным модулям VMEbus, позволяющее беспрепятственно вставлять/вынимать модули из работающей системы. Для реализации горячей замены предложен специальный механизм изоляции модуля от шины.

Широкое распространение получил стандарт измерительных систем VXIbus, который поддерживают более 200 зарубежных фирм, выпускающих свыше 500 типов модулей.

В 1995 году был принят стандарт мезонинных технологий ANSI/VITA 4 на модули IP (Industry Pack).

Для телекоммуникаций предложен стандарт SCSA подшины для обработки цифровой аудио- и видеоинформации в телефонии. VMEbus используется как основная управляющая шина системы, а SCSA P2 - для интерфейса с телефонными цепями.

Работа над спецификацией VME64 уже завершена, хотя отделение VITA по стандартам продолжает уточнять расширения к стандарту VME64, но, по всей вероятности, массовое производство VME-изделий, включающих эти расширения, начнется не раньше 1998-99 г. Сейчас же VME-системы ощущают сильное давление дешевых систем на базе ПК. Однако можно рассчитывать, что после того, как новые расширения VME64 будут освоены на рынке высокопроизводительной аппаратуры, высокая рентабельность VME-систем восстановится. Это подтверждается и тем, что за последний год самые высокие темпы развития в VME-сообществе имели три компании, специализирующиеся на быстрых вычислениях: Mercury, Sky Computers и CSPI.

4.2 Шина PCI и ее производные

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

За основу была взята 32/64-разрядная высокопроизводительная шина PCI, локальный интерфейс подсистемы В/В для надплатных расширений активной материнской платы, ставшая стандартом де-факто для современных ПК. Эта шина имеет массу достоинств: она не зависит от типа микропроцессора, может работать с самыми быстрыми из них, имеет большую пропускную способность и аппарат автоконфигурирования устройств В/В. Сейчас PCI активно применяется в VME-компьютерах для подключения периферии.

После доработки, в 1995 году, был выпущен стандарт CompactPCI, основанный на общепринятой технологии создания надежных промышленных модульных систем - пассивной объединительной магистрали [4]. Большое практическое значение имеет тот факт, что любое ПО, работающее на настольных ПК, может быть без изменений перенесено в систему CompactPCI, а программисты, работающие на ПК, но не имеющие дела с аппаратурой, могут быстро скомпоновать систему CompactPCI, установить ОС и сконфигурировать систему в соответствии с реальными потребностями.

CompactPCI стал достойным конкурентом технологии VME. Однако CompactPCI - относительно новый стандарт, и некоторые необходимые функции в нем либо отсутствуют (горячая замена), либо не доведены до кондиций. Кроме того, номенклатура продуктов CompactPCI пока небольшая, особенно в сравнении с рынком VME/ISA-оборудования. Поэтому сейчас следует ориентироваться на связку двух стандартов, используя CompactPCI как недорогую объединительную панель с высокой скоростью передачи данных.

5. Мезонинные технологии

Мезонинные технологии применяются достаточно давно: в середине 80-х не было способа запаивать на основной плате кристаллы памяти емкостью более 64 Кбайт, и для увеличения ее объема использовались мезонинные модули. Сейчас, когда степень интеграции микросхем гораздо выше, на одной плате размещается простой компьютер со всеми соответствующими электронными атрибутами, и еще остается место. Мезонинные технологии приобрели новый смысл - сегодня это средство модульного наращивания функциональных возможностей. Взяв за основу типовую плату, разработчик может добавить к ней специальные пользовательские функции, реализованные в готовом мезонинном модуле.

Таким образом, мезонинные платы представляют еще один, более низкий по сравнению, например, с модулями VMEbus уровень модульности. Типичный размер мезонинных плат 50х80 мм. Они являются функционально законченными изделиями и устанавливаются на плату-носитель (в стандарте VMEbus, ISAbus или каком-либо другом). Стандартные установочные габариты платы при этом не меняются - мезонины устанавливаются поверх нее. Носитель может быть пассивным или содержать собственный процессор. Так самый, пожалуй, популярный в мире одноплатный компьютер/контроллер MVME162 кроме обычных аксессуаров (CPU MC68040, Ethernet, SCSI, DRAM, RTC, 2xRS232, Flash-диск, EPROM, VME64) имеет порты для установки 4 мезонинных плат. Это позволяет дополнить плату компьютера, например, 192 каналами цифрового ввода/вывода, спецпроцессорами TMS32040, графикой, любой сетью.

Существует широкая номенклатура (http://www.groupipc.com) мезонинных плат: многоканальные ЦАП, АЦП, цифровой ввод/вывод, EEPROM/FLASH, SRAM, графические контроллеры, различные типы сетей, интерфейс PCMCIA и т. д. Хотя до сих пор довольно активно применяются частные мезонинные интерфейсы, особенно широко распространено несколько стандартов: PCI Mezzanine Card (PMC), IndustryPack (IP) и ModPack.

Как показывает опыт, модульность на уровне мезонинов обеспечивает поразительную гибкость при интегрировании системы, резко повышает ремонтопригодность и снижает стоимость ЗИПа.

6. Полевые системы

Рассмотренные архитектурные решения относятся к локальному (центральный процессор и локальная шина) и региональному (VMEbus) уровню организации систем промышленной автоматизации. В условиях реального производства необходимо еще наладить взаимодействие центрального управляющего блока с пространственно распределенным оборудованием системы автоматизации - датчиками, исполнительными механизмами, передаточными устройствами, приводами и программируемыми контроллерами.

Такую связь можно было бы реализовать, например, с помощью сети Ethernet, но к промышленным сетям предъявляются особые требования по надежности и помехоустойчивости. Для связи с удаленными цифровыми устройствами промышленного назначения принято использовать бит-последовательные промышленные или полевые шины (bit serial Fieldbus). К этой группе относятся несколько европейских (PROFIBUS (DIN 19245), FIP (UTE-C46-6xx), Bitbus (IEEE 1118), CAN (ISO/DIS 11898), Interbus-S (DIN 9258)) и американских (Foundation, HART) конкурирующих стандартов. Ведется разработка общеевропейского стандарта EN 50170, объединяющего PROFIBUS и FIP.

На рис. 2 показано распределение европейского рынка полевых систем в 1996 году. Сравнение с 1994 годом показывает, что произошли резкие перемены, самая важная из которых - увеличение доли PROFIBUS c 30 до 42%, причем это достигнуто за счет частных архитектур.

Рисунок 2.
Распределение рынка полевых стандартов в Европе (по количеству пользователей).

Каковы основные возможности лидера - PROFIBUS? Это открытый стандарт, определяющий обмен информацией с компонентами автоматизации любых разновидностей - ПЛК, ПК, панелями оператора, датчиками и силовыми приводами. Существует три основных варианта PROFIBUS: FMS, DP и ISP.

PROFIBUS-FMS представляет собой решение для задач взаимодействия на цеховом и полевом (field) уровне иерархии промышленных связей: с его помощью организуется обмен между интеллектуальными field-устройствами и контроллерами, а также между контроллерами. Как правило, на этом уровне обмен информацией осуществляется по запросу прикладного процесса и не является циклическим. Поэтому время реакции здесь не очень существенно, гораздо важнее функциональные возможности.

Модель PROFIBUS позволяет определить коммуникационные связи, объединяющие распределенные прикладные процессы в один общий. Та часть прикладного процесса field-устройства, которая отвечает за взаимодействие, называется виртуальным field-устройством (VFD). Все объекты реального устройства, с которыми можно взаимодействовать (переменные, программы, диапазоны данных), называются объектами коммуникации. Отображение функций VFD на реальное устройство обеспечивается в коммуникационной модели PROFIBUS интерфейсом прикладного уровня. Для этого объекты коммуникации PROFIBUS-станции вводятся в ее локальный словарь объектов - OD. Конфигурация OD может определяться и загружаться в устройство либо его производителем, либо разработчиком -- или может формироваться динамически. OD содержит структуру и типы всех объектов, а также их внутренние адреса в устройстве и представление на шине (индекс/имя). Доступ к объектам при функционировании происходит через сервисные функции протокола PROFIBUS-FMS, которые позволяют, например, опросить/установить значения переменных и массивов, запустить/остановить программу.

Что касается двух других вариантов стандарта, то PROFIBUS-DP - это оптимизированная по производительности версия PROFIBUS, предназначенная специально для взаимодействий, критичных по времени. PROFIBUS-ISP - проект взаимодействующих частей, базируется на технологии PROFIBUS и дополняет ее возможностями управления процессами, включая внутреннюю защиту.

7. Программное обеспечение промышленных систем

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

Чем располагает разработчик промышленной системы? В первую очередь это операционные системы, поддерживающие функционирование разрабатываемого приложения. В сфере промышленной автоматизации свой мир операционных систем - ОС реального времени (ОС РВ). Для VME-процессоров, например, существует 17 ОС (OS-9/OS-9000, VRTX/Spectra, VxWorks, PDOS, pSOS+, LynxOS, VMEexec, iRMX, C-Exec, QNX и т. д.), самая распространенная из которых - OS-9. Поскольку крупные компании-производители обеспечивают для своих процессоров и устройств ввода/вывода полную поддержку сразу нескольких ОС РВ, можно найти версии систем из приведенного списка для многих платформ: 68000, PowerPC, ix86, Pentium.

ОС РВ характеризуется прежде всего малым временем реакции на внешние события. Так, гарантированное время реакции системы на процессоре MC68040/25 МГц под управлением операционной системы OS-9 v3.0/Atomic составляет 3 мкс. Как правило, это многопользовательские многозадачные ОС, выполненные по технологии микроядра. Последние версии ОС имеют прерываемое микроядро, что гарантирует быструю реакцию на внешнее событие при любом состоянии системы. Особенность большинства ОС - возможность стопроцентного размещения в памяти ядра, сетевого и графического обеспечения, драйверов и прикладных программ. Для встроенных бездисковых систем это чрезвычайно важно.

Традиционно ОС РВ делятся на "жесткие" и "мягкие". Система "жесткого" РВ должна без сбоев отвечать на внешние события в рамках заранее определенного интервала времени. Время ответа должно быть предсказуемым и не зависеть от текущего состояния системы. "Мягкая" ОС РВ тоже должна отвечать очень быстро, но гарантированное время ответа в ней не обеспечивается. Здесь нужно отметить, что временные характеристики последних версий промышленных ОС практически стерли ранее существовавшую грань между двумя этими разновидностями. Сейчас OS-9, ранее считавшаяся "мягкой" ОС, практически не уступает классическим "жестким" ОС - pSOS+ и VxWorks.

Все большее распространение в сфере промышленной автоматизации получают ОС общего назначения: Unix в разных реализациях, NT, OS/2, VMS. Для этого есть несколько причин. В различные реализации Unix стали включаться ядра реального времени, и это движение поддержано открытыми стандартами. В POSIX стандартизованы, например, диспетчеризация и синхронизация процессов, нити, тайм-ауты, управление прерываниями. Во-вторых, трудно устоять перед мощной экспансией ПК, особенно после выхода Windows NT [5], и рабочих станций. Третья причина состоит в наличии на платформах общего назначения широкого разнообразия инструментальных средств.

Действительно, кроме базовой поддержки, предоставляемой ОС РВ, для создания приложений разработчику требуется развитый инструментарий, которого, конечно, больше в общецелевых системах. Нельзя сказать, что ОС РВ в этом отношении бедны - в них обычно поддерживаются сетевые протоколы, X Window, Motif, но конкурировать на равных им все же тяжело, особенно с новейшими инструментальными технологиями. С другой стороны, все ОС РВ имеют собственные среды разработки (FasTrack, Microtec, MasterWorks), чьи возможности в определенных аспектах превосходят аналогичные общецелевые средства, которые, например, не могут помочь разработчику систем РВ на финальных стадиях отладки, когда нужно измерять время выполнения программ и время реакции системы. Поэтому можно выбрать подход, при котором ОС общего назначения используются в качестве среды для разработки ПО целевого приложения реального времени, а в качестве среды исполнения применяется та или иная ОС РВ. В этом варианте загрузка и отладка целевого ПО производится с инструментального компьютера по сети.

Конечно, можно создать ПО системы автоматизации, опираясь только на общецелевые средства, однако цена такой разработки будет очень высока. Системы автоматизации - это такая же прикладная область, как, например, графика или САПР, и кроме универсального здесь нужен специализированный инструментарий.

7.1 Специализированные средства разработки

Реакцией на неблагополучное состояние дел в этой сфере явилось то, что в мае 1995 года VITA инициировала проектирование стандарта на унифицированную программную среду встраиваемых систем (ESSE). Необходимость в таком стандарте назрела давно, поскольку его отсутствие привело к кризису в разработке встраиваемых систем: и пользователи и производители много времени тратят на инсталляцию драйверов, переписывание программ и разработку новых инструментальных интерфейсов для каждой встраиваемой системы. Первоначально исследования намечались по трем направлениям: инструментальные средства, прикладные пользовательские интерфейсы ОС (OSAPI) и драйверы В/В. В апреле 1996 года была образована еще и новая группа по двоичному интерфейсу встраиваемых приложений (EABI). Что же имеется на сегодняшний день кроме проектов?

7.2 Стандарт программирования контроллеров

Использование даже простых, но полномасштабных компьютерных конфигураций на нижних уровнях промышленных систем для непосредственного управления оборудованием невыгодно как по экономическим соображениям, так и по причине избыточной сложности. В системах автоматизации для этого традиционно применяются более простые и дешевые устройства - программируемые логические контроллеры. В первом поколении ПЛК представляли собой релейные схемы, вырабатывающие сигналы для оборудования по правилам булевой логики. Сегодня они стали более интеллектуальными: например, устройства типа Smart I/O имеют конфигурацию, в которой центральный процессор на базе дешевого микропроцессора MC68302, последовательные порты и DC/DC-преобразователь собраны в одном компактном промышленном кожухе. Модульная структура Smart I/O позволяет гибко изменять конфигурацию, сокращать и наращивать число каналов ввода/вывода за счет широкой номенклатуры производимых модулей.

Программирование ПЛК может осуществляться двумя способами. В качестве инструментальной системы можно использовать мощные системы разработки типа Dev Pak для OS-9 или кросс-системы, имеющиеся практически на любых современных компьютерных платформах: Unibridge (Unix), PCbridge (PC), FasTrack (Unix, DOS, Windows). В составе этих систем поставляется большое количество драйверов ввода/вывода, и прикладное ПО для ПЛК становится мобильным. Все вроде бы хорошо, однако, во-первых, мобильность ограничена рамками одной инструментальной системы, и, во-вторых, программирование ПЛК таким способом нетрадиционно и в общем неадекватно: требуется знание ОС и языков программирования.

Радикально изменить ситуацию мог стандарт на языки программирования ПЛК, процесс разработки которого начался в 1979 году, и только к 1992 году он был утвержден как IEC 1131-3. При его разработке было обнаружено так много вариаций языков контроллеров, что оказалось невозможно выбрать какой-то один как базовый. Поэтому был предложен совершенно новый язык с применением современных принципов структурного программирования, абстрактных типов данных, выделения данных и процедур в блок. Однако был сохранен и графический стиль классических языков для программируемых контроллеров. В обоих вариантах стандарта введена абстракция управления, и это можно считать главным достижением. Разработчик имеет дело с переменными состояния и не зависящими от типа контроллера способами их обработки, а реальный В/В вынесен на уровень драйверов.

Стандарт IEC 1131-3 [6] описывает два графических языка, "Диаграмма цепей" (LD) и "Диаграмма функциональных блоков" (FBD). В этих языках стандартные символы обеспечивают прямое соответствие между графическим представлением задачи и способом ее решения. В LD используется стандартизированный набор символов для ступенчатого программирования. По существу, здесь разработчик просто составляет релейные схемы. FBD - это тоже графический язык, но его элементами являются функциональные блоки, соединяемые проводами в электрическую цепь, а сами функциональные блоки - это программные объекты, реализующие функции управления.

В дополнение к графическим языкам LD и FBD стандарт IEC 1131-3 определяет язык "Схем последовательных функций" (SFC). Этот язык уже ближе к традиционному программированию и предназначен для записи алгоритмов последовательного управления. Элементы этого языка - шаги, переходы и блоки - используются для определения порядка операций, написанных на любом языке стандарта.

В IEC 1131-3 определяются также два текстовых языка: "Список команд" (IL) и "Структурированный текст" (ST). IL - это язык низкого уровня, в то время как ST поддерживает структурное программирование.

В стандарте специфицированы механизмы, посредством которых производители и пользователи могут определять новые типы данных, функции и функциональные блоки. Таким образом, данный стандарт является саморасширяющимся, и можно надеяться, что он будет в состоянии обслуживать много поколений новых технологий управления. В IEC 1131-3 тщательно описываются механизмы инкапсуляции данных и операций. Например, если пользователь хочет многократно применять одну и ту же последовательность функций управления, он может выделить ее в функциональный блок, поместить его в библиотеку, а затем устанавливать копии этого блока там, где он требуется.

Все языки, включенные в стандарт IEC 1131-3, можно комбинировать , а также включать в программу фрагменты на традиционных языках. Полная реализация IEC 1131-3 доступна как коммерческий продукт: например, это ISaGRAF для Windows производства фирмы CJ International. При использовании в сочетании с OS-9 ядро ISaGRAF выполняется как пользовательская задача и принимает управление загруженным в ПЛК приложением. Среди последних продуктов - пакет IOWorks (VMIC), получивший самую высокую оценку на Национальной выставке промышленной автоматизации (Чикаго) в 1997 году.

Будущее стандарта IEC 1131-3 связывается со стандартизацией форматов программных файлов, что обеспечит возможность обмена пакетами функциональных блоков между различными платформами и позволит реально перейти к модульному программированию - созданию больших систем из готовых пакетов. Второе направление развития - использование в распределенных управляющих системах функциональных блоков за пределами программируемых контроллеров. С этой целью был создан стандарт IEC TC65/WG6, в котором концепции IEC 1131-3 применены к стандарту Fieldbus и который определяет, каким образом средства связи могут объединяться с прикладным ПО.

7.3 Инструментарий ПО для мониторинга и управления

На уровне ПО мониторинга и управления (SCADA) существенное место занимает интерфейс человек - компьютер (MMI). Процесс разработки приложений SCADA обычно делится на две части. Первая включает проектирование и реализацию аппаратуры и ее логики, обычно генерируемой с помощью языка программирования ПЛК. Вторая часть - создание пользовательского интерфейса. Очень часто эти два этапа выполняются последовательно разными специалистами, имеющими соответствующую подготовку. Поскольку решаемые ими задачи перекрываются, трудоемкость разработки возрастает многократно.

Между тем абстракции управления, которые вводит стандарт IEC 1131, позволяют скомбинировать обе части в единый процесс, если переменные из программ логического управления сделать доступными из ПО SCADA и наоборот. Примерами интеграции редакторов программ ПЛК в стандарте IEC 1131 с ПО разработки интерфейса пользователя могут служить система WizPLC (PC Soft Int. + Smart Software Solutions) и надстройка компании Ci Technologies над пакетом логического программирования IEC 1131-3 ISaGRAF.

Рассмотрим более подробно пакет InTouch (Wonderware, США) [7], который был признан лучшим инструментальным средством для разработки SCADA-систем на выставке-ярмарке в Ганновере. InTouch реализован для среды Windows 95 и NT: управление окнами, работа со шрифтами, механизм межзадачного интерфейса (DDE) - все это базируется на штатных средствах API Windows, что создает привычную для пользователей ПК обстановку.

Основная задача, которую решает InTouch, - разработка графического интерфейса к переменным (текстовым, дискретным, действительным и целым). Переменные определяет разработчик, и они могут быть двух категорий: DDE (для связи с внешними объектами) либо Memory (внутренние). Кроме значения, переменная имеет набор атрибутов: наличие предупредительного сообщения, вызванного выходом значения за границы установок, признак квитированности этого сообщения, групповая принадлежность переменной, комментарий и т. д. Переменную типа DDE можно связать с данными, поступающими от внешних устройств, либо с объектами других пакетов, например ячейкой Excel.

При создании интерфейса переменной ставится в соответствие графический образ, который размещается в рабочем окне и визуализирует значение переменной, ее атрибуты, например предупредительное сообщение. Графический образ может быть составным, и в него могут входить элементы для изменения значений переменной. В этом плане графический образ соответствует диалоговым панелям Windows. Между переменной и графическим образом устанавливаются анимационные связи, изменяющие внешний вид образа в зависимости от значения переменной. Может происходить изменение размера, цвета, положения на экране, мигание, вращение. В составе InTouch поставляется постоянно расширяемая библиотека графических образов: панели, лампочки, тренды, измерительные линейки, часы, переключатели, клавиши. Благодаря разнообразию типов графических образов визуализация данных возможна либо в числовой форме, либо в виде графика (тренда), изменяющегося в реальном времени.

Поскольку InTouch - инструментальная система, все вводимые разработчиком переменные заносятся в базу данных, которая в целевой системе начинает работать как БД РВ. Установив связи через DDE-интерфейс между переменной InTouch и переменной любого программного пакета, можно сохранять и обрабатывать данные InTouch в стандартной БД или электронной таблице.

Фирмой Wonderware разработан специальный протокол (NetDDE) для сетевого расширения DDE, который позволяет взаимодействовать любым прикладным программам (не обязательно InTouch) в разных узлах сети. Использовать этот механизм в InTouch очень просто: к собственному имени DDE-переменной добавляется имя узла, в котором она определена.

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

Кроме того, InTouch содержит много полезных вспомогательных функций: систему контроля доступа пользователей, генератор отчетов, драйверы для ПЛК и промышленных сетей, статистическую обработку информации, поддержку SQL-доступа, загрузку в устройства нижнего уровня.

8. Управление производством

Верхний уровень в комплексе FactorySuite занимает пакет InTrack - инструментарий для разработки систем управления производством. Продолжая линию, заложенную в пакете InTouch, он поддерживает объектно-ориентированный стиль разработки и имеет архитектуру клиент/сервер. Назначение InTrack - создание интерактивных приложений, способных контролировать и управлять всеми стадиями производственных процессов - от загрузки сырья до выпуска готовой продукции.

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


 

Литература

1. Blickley G. J. DCSs, PCs, AC Motors Lead in CE Spending Survey. - Control Engineering, February 1997, p. 16

2. VDC Releases 'Merchant Computer Board' Study. - Vita Journal, June 1997, p. 23.

3. Alderman R. Technology on VME: Processor Cards. - Vita Journal, March 1997.

4. Рыбаков А. Эволюция стандарта PCI для жестких встраиваемых приложений. - Открытые Системы, 1997, #5.

5. Babb M. PC-based control falls on 'hard' times. - Control Engineering, January 1997.

6. Христенсен Д. Знакомство со стандартом на языки программирования PLC: IEC 1131-3. - Мир компьютерной автоматизации, 1995, #1.

7. Кабаев С. InTouch восходит на вершину. - Мир компьютерной автоматизации, 1997, #2.

Виктор Коваленко (kvn@keldysh.ru) -- ИПМ им.М. В. Келдыша РАН, (Москва).