Сфера промышленного применения компьютеров в той или иной мере отражает тенденции компьютерного рынка, одним из проявлений которых является постоянно растущая популярность архитектуры IBM PC. Этой теме и посвящена данная статья. Слово "архитектура" в нашем случае означает общие принципы построения и функционирования вычислительной системы или ее составной части. С известной степенью упрощения можно считать, что архитектура определяется набором команд процессора и типом системной шины, используемой для подключения дополнительных внешних устройств.
Немного истории
После того как в СССР было принято решение не разрабатывать свои компьютеры, а копировать западные, нашу страну заполонили аналоги мэйнфреймов IBM (EC ЭВМ), а также клоны мини- и микрокомпьютеров фирмы DEC (СМ ЭВМ, "Электроника-60", ДВК). Эти же компьютеры составили костяк автоматизированных систем управления (АСУ) и промышленных систем автоматизации первой волны. В настоящее время мэйнфреймы, повсеместно теснимые распределенными вычислительными системами на базе локальных сетей, ввиду глубокого экономического кризиса в стране практически вымерли. Архитектура фирмы DEC оказалась более живучей. Однако несмотря на то что целое поколение специалистов, кому сейчас за 30, было воспитано на этой архитектуре, компьютеры линий LSI-11, PDP-11 и VAX неумолимо сдают свои последние позиции. В качестве основы для систем самого низкого уровня, как правило, использовались освоенные нашей промышленностью микроконтроллеры, совместимые с изделиями MCS80, MCS48 и MCS51 фирмы Intel.
В остальном мире развитие мини-компьютеров шло различными путями. В результате повышения степени интеграции элементной базы появились так называемые рабочие станции. Повальное увлечение процессорами с сокращенным набором команд (RISC) привело к появлению архитектур SPARC (Sun Microsystems), Alpha (DEC), MIPS (Silicon Graphics), PA-RISC (Hewlett-Packard) и некоторых других. Упомянутые архитектуры продвигаются на рынок достаточно мощными компаниями и в той или иной степени находят применение в системах промышленной автоматизации и управления.
Каждый изготовитель мини-компьютеров, как правило, использовал системную шину самостоятельной разработки. Поэтому неудивительно, что в этой области были предприняты попытки стандартизации. В качестве универсальных системных шин для промышленных мини-компьютеров фирма Intel предложила шину Multibus II, а фирма Motorola - шину VME. В результате конкурентной борьбы шина VME получила более широкое признание независимых изготовителей, а Intel недавно объявила о прекращении производства изделий с шиной Multibus.
Конкуренция между этими же компаниями определяла и развитие рынка микропроцессоров и микроконтроллеров. Хотя сейчас свои однокристальные контроллеры выпускает практически каждая крупная электронная компания, именно разработки Intel и Motorola легли в основу большинства систем автоматизации нижнего уровня. Такие системы, конструктивно оформленные в виде законченных устройств, получили название программируемых логических контроллеров (PLC). Для связи с объектом управления PLC оборудованы некоторым количеством аналоговых и/или цифровых входов-выходов, зачастую в них есть встроенные интерпретаторы специализированных языков (например, языка релейной автоматики) и, как правило, возможность подключения устройств для связи с оператором (Man Machine Interface). Специалисты знакомы с PLC таких фирм, как Siemens, GE-Fanuc, ABB, и ряда других.
Компьютерная революция
Думаю, что когда Стивен Джобс колдовал в своем гараже над первой моделью компьютера Apple, он не предполагал, насколько значительное влияние окажут ПК на нашу жизнь.
Важнейшей вехой компьютерной эры стало создание IBM своего персонального компьютера на базе нового тогда микропроцессора 8088 фирмы Intel. Но еще важнее было решение сделать архитектуру нового компьютера совершенно открытой, что позволило сотням компаний всего мира производить полностью совместимые изделия. Кроме того, по условиям соглашения между IBM и Microsoft последняя имела право свободно продавать третьим фирмам ОС, разработанную для IBM PC. Сейчас архитектура IBM PC занимает все более значительное место в области автоматизации промышленности, тесня мини-компьютеры и находя применение там, где раньше господствовали PLC-контроллеры. Каковы же причины такого успеха?
Во-первых, наличие большого количества независимых поставщиков аппаратных средств и специализированных микросхем, ожесточенная конкуренция между которыми ведет к постоянному снижению цен и повышению технико-экономических показателей. Как следствие, вы имеете дешевую платформу для разработки, а ПК сейчас есть практически в любой фирме на каждом столе.
Во-вторых, создан огромный задел ПО, в том числе в области систем реального времени.
И в-третьих, имеется большое количество высококвалифицированных специалистов по архитектуре и программированию IBM PC.
В целом все это является отражением того факта, что сейчас на рынке совместимых с IBM PC изделий сосредоточены огромные финансовые и интеллектуальные ресурсы.
Парад шин
Восьми-, а затем шестнадцатиразрядная шина ISA, используемая в персональных компьютерах фирмы IBM, стала стандартом де-факто в отрасли. Однако по мере увеличения быстродействия микропроцессоров эта шина стала "узким местом" для приложений, требующих быстрого обмена по системной магистрали.
Тогда IBM попыталась оторваться от наступающих на пятки конкурентов, предложив запатентованную архитектуру на базе шины Micro Channel (MC). Однако при всей экономической мощи корпорации второго чуда не произошло: из-за несовместимости с уже существующими периферийными платами, а также из-за требования лицензионных отчислений от фирм - изготовителей совместимого оборудования MC не получила поддержки независимых производителей. Разумеется, она не нашла широкого распространения и в индустриальных приложениях, хотя и используется в промышленных компьютерах, выпускаемых самой IBM.
Более счастливая судьба оказалась у шины EISA, разработанной по инициативе корпорации Compaq. Сочетающая 32-разрядную архитектуру и совместимость с традиционными 16- и 8-разрядными платами, она получила достаточно широкое распространение в требующих высокого быстродействия индустриальных приложениях. Но сейчас число компаний, выпускающих изделия с шиной EISA, быстро уменьшается.
Еще совсем недавно мы были свидетелями взрывного роста популярности систем на базе 32-разрядной шины VL Bus (VESA). Системы на ее базе появились даже в каталогах достаточно консервативных изготовителей индустриальных компьютеров. Однако ориентация этой шины на быстро устаревший микропроцессор i486 фирмы Intel и недостаточная буферизация стали тормозом на пути ее развития.
В настоящее время с большим отрывом от конкурентов на компьютерном рынке утвердилась шина PCI, разработанная в 1992 году фирмой Intel. Растущее признание этой шины независимыми изготовителями обусловлено несколькими причинами.
1 Пропускная способность до 132 Мб/с отвечает возросшим возможностям современных микропроцессоров.
1 Независимость шины от типа используемого процессора дает возможность уравнять шансы конкурентам фирмы Intel, таким, как Digital с процессором Alpha или альянс Apple/IBM/ Motorola с процессором Power PC.
1 Благодаря унификации используемой шины изготовители периферийных плат могут не распылять свои силы на разработку различных вариантов одного и того же изделия для разных шин.
Все это, по-видимому, предопределит широкое распространение шины PCI в будущем. Уже появились промышленные компьютеры на ее основе. Несколько фирм совместно работают над индустриальной версией шины PCI, которая позволит увеличить количество слотов расширения по сравнению с действующим стандартом.
Тем не менее в силу консервативности рынка индустриальных компьютеров шина ISA будет преобладать здесь еще довольно долгое время.
Компьютеры большие...
На верхнем уровне иерархии PC-совместимых промышленных систем находятся мощные компьютеры, предназначенные для управления производственными и технологическими процессами в масштабах производственного участка, цеха или завода. Это машины повышенной надежности, способные круглосуточно работать в условиях запыленности, больших перепадов температуры, вибрации и воздействия других неблагоприятных факторов, к которым можно отнести и невысокий уровень подготовки персонала.
Первые энтузиасты промышленного применения персональных компьютеров брали за основу системные платы обычных офисных ПК и помещали их в специальные корпуса. С течением времени, однако, выработались вполне определенные черты, которыми отличаются современные промышленные ПК.
Как правило, вместо стандартной системной платы применяется пассивная объединительная панель, в один из разъемов которой вставляется процессорная плата. Для связи с различными датчиками, исполнительными устройствами и каналами коммуникации может понадобиться большое количество плат расширения, поэтому их допустимое число в промышленных ПК достигает 12 - 14 в отличие от 6 - 8 в офисных моделях. Иногда применяются секционные панели, позволяющие компоновать несколько независимых компьютеров в одном корпусе. Применение пассивной панели способствует существенному сокращению времени ремонта, а соответственно и времени простоя технологического оборудования. Замена любой платы, в том числе процессорной, не превышает 5 - 10 минут. Кто хотя бы один раз менял системную плату в стандартном ПК, согласится, что это хорошее время.
Промышленные компьютеры имеют упрочненные металлические корпуса, как правило, монтируемые в стандартные стойки шириной 19 дюймов (48,26 см). Во многих системах применяются специальные средства, обеспечивающие повышенную виброустойчивость. Для предохранения от загрязнений и несанкционированного доступа НГМД часто запирается специальной дверцей с замком. Получили распространение так называемые индустриальные рабочие станции (Industrial Workstation), у которых системный блок и дисплей размещены в одном защищенном корпусе, а клавиатура, выполненная по мембранной технологии, встроена непосредственно в переднюю панель.
Обычно промышленные компьютеры снабжены источником питания большой мощности и имеют развитую систему воздушного охлаждения со сменными пылеулавливающими фильтрами и положительным внутренним давлением очищенного воздуха.
Некоторые фирмы для особо ответственных приложений выпускают отказоустойчивые компьютеры с возможностью дублирования важнейших узлов и их замены во время работы.
На наш рынок промышленные компьютеры поставляют фирмы Advantech, Intecolor, Texas Micro и др. (рис. 1 - 3).
Рис. 1. Типовой системный блок индустриального компьютера
Рис. 2. Монитор в защитном корпусе с приспособлениями
для обеспечения вибростойкости
Рис. 3. Типичная индустриальная рабочая станция
...и маленькие
Сегодня мы можем смело утверждать, что архитектура IBM PC распространяется все ниже в иерархии автоматизированных систем управления. В автомобильной промышленности США, которая потребляет 35% рынка PLC-контроллеров, уже принято решение о переходе на IBM PC-совместимые компьютеры и контроллеры. Более того, разработка и начало производства однокристальных IBM PC такими компаниями, как Intel, AMD, C&T, привели к тому, что сейчас эта архитектура вторгается на рынок недорогих контроллеров, где раньше безраздельно господствовали микроконтроллеры типа 8051 или 68HC11.
Системы автоматизации нижнего уровня отличаются тем, что их можно встраивать непосредственно в промышленное или бортовое оборудование. Они располагаются на самом объекте управления и часто должны работать в необорудованных и неотапливаемых помещениях, а то и просто на улице. Во многих случаях управляющие компьютеры и контроллеры являются неотъемлемой частью какого-либо прибора, станка или агрегата, поэтому их часто называют встраиваемыми. Но хотя мы и относим такие компьютеры к нижнему уровню систем управления, это не означает, что их возможности или быстродействие ограничены. В то же время особенности их применения накладывают ряд специфических требований.
Наряду с ужесточением требований к вибростойкости, ударопрочности, рабочему диапазону температур добавляются такие, как малые габариты и низкий уровень потребляемой мощности. Кроме того, к ним могут предъявляться достаточно экзотические требования по взрывобезопасности, радиационной стойкости, стойкости к химически агрессивным средам или сильным электромагнитным полям. С функциональной точки зрения здесь можно найти средства, не характерные для офисных компьютеров, например сторожевой таймер, автоматически перезапускающий систему в случае зависания программы, или хранение параметров Setup в энергонезависимой памяти, что позволяет обходиться без специальных батареек. Часто операционная система загружается из ПЗУ, а в качестве накопителей используются электронные диски, в том числе на базе флэш-памяти.
Разработчики встраиваемых систем, желающие использовать архитектуру IBM PC, стоят перед выбором: либо разрабатывать систему "с нуля", используя тот или иной набор микросхем, либо применять в качестве основы готовые изделия специализированных компаний. Можно констатировать, что второй подход все чаще берет верх, и тому есть несколько причин.
1 Разработка вычислительной системы, например класса 386 или 486, является дорогим удовольствием. Для этого необходим штат высококвалифицированных схемотехников и программистов. Высокие тактовые частоты используемых микропроцессоров требуют особо тщательного проектирования печатных плат, а современная элементная база даже для изготовления прототипа нуждается в высококлассном технологическом оборудовании, обеспечивающем монтаж на поверхность. Хотя кажется, что устройство, разработанное с учетом конкретных нужд и не включающее в себя ничего лишнего, должно обойтись дешевле, чем универсальные, а значит, избыточные изделия специализированных компаний, но это впечатление может оказаться обманчивым, так как существует множество процессов, несущих скрытые затраты, таких, как организация и поддержка разработки и производства, входной и выходной контроль, испытания и тестирование, отладка программного обеспечения, выполнение гарантийных обязательств и т. п. Кроме того, изготовители стандартных плат закупают комплектующие большими партиями по более дешевым ценам. Вот почему самостоятельная разработка может быть экономически выгодна только при достаточно большой тиражности изделия.
- В условиях жесткой конкуренции очень важно минимизировать время от идеи до готового изделия (Time-to-Market). Поэтому многие даже крупные компании предпочитают сосредоточить свои ресурсы на том, что они умеют делать лучше других, а не изобретать колесо, особенно если стоимость системы управления составляет лишь малую долю стоимости всего изделия.
- Время жизни наборов микросхем, используемых в ПК, часто не превышает одного года. Закончив разработку, вы можете неожиданно обнаружить, что микросхемы, использованные в проекте, сняты с производства. Время же жизненного цикла систем автоматизации достигает 10 лет. В этой ситуации фирмы, специализирующиеся на изготовлении плат, как правило, заключают соглашения с ведущими изготовителями компонентов, в соответствии с которыми те заблаговременно информируют их как о планах снятия тех или иных компонентов с производства, так и о планах выпуска новых. Это позволяет фирмам закупить необходимое количество критических важных компонентов для обеспечения жизненного цикла своей продукции. Кроме того, они способны обеспечить полную совместимость снизу вверх последующих поколений своих изделий.
- При приемлемом тираже вашей продукции специализированные фирмы могут внести необходимые изменения в свои стандартные изделия, чтобы удовлетворить ваши требования.
У нас известны такие производители встраиваемых ПК, как Octagon Systems, Ampro, Advantech, PEP, Radisys и др.
Условно встраиваемые компьютеры можно разделить на две группы. К первой относятся машины, которые собираются из нескольких плат, объединяемых системной шиной, а ко второй - одноплатные компьютеры, где все необходимые функции интегрированы на одной плате небольшого размера. Стандартный подход с системной шиной позволяет создавать более функционально мощные системы управления, обладающие гибкостью в плане переконфигурации и настройки на конкретное приложение. Компьютеры на одной плате, не имеющие средств поддержки общей системной шины, могут оказаться более дешевым решением в тех случаях, когда особая гибкость не нужна. Тем не менее одноплатные компьютеры, как правило, снабжаются шиной расширения, или, как ее иногда называют, мезонинной шиной (mezzanine bus), для подключения дополнительных плат, выполняющих специфические функции, требуемые в конкретных приложениях. Необходимо отметить, что и в области шин расширения уже чувствуется влияние PCI и даже разработан стандарт на ее использование в качестве мезонинной шины.
Какие только шины не используют изготовители, чтобы разместить IBM PC на платах, размер которых меньше стандартного. Это и ESP, и PC/104, и AT96, и VME, и многие другие.
Пожалуй, только фирма Octagon Systems при размере платы 114х124 мм сохранила полную совместимость с IBM PC по разъему. Кроме того, эта компания является крупнейшим поставщиком компьютеров для расширенного температурного диапазона ( - 40...+85С°). Предложенная фирмой Ampro шина PC/104 получила широкое распространение взамен iSBX в качестве мезонинной шины для одноплатных компьютеров. В то же время ряд фирм выпускает и процессорные платы, имеющие стандартный для PC/104 размер 90х96 мм. Однако ограниченная нагрузочная способность PC/104, препятствующая в большинстве случаев подключению к ней более чем трех плат, остается ахиллесовой пятой этого стандарта. Да и победное шествие процессоров Pentium и 586 обходит его стороной: размеры PC/104 оказались действительно очень малыми.
Процессорный модуль фирмы Advantech (рис. 4) объединяет на небольшой плате все возможности системной платы IBM PC/386 - 4 Мб ОЗУ, электронный диск емкостью до 1 Мб, а также последовательный и параллельный порты.
Рис. 4. Процессорный модуль фирмы Advantech
Процессорная плата фирмы Octagon Systems (рис. 5), включающая все функции системной платы IBM PC/586-133, до 24 Мб ОЗУ, два электронных диска общей емкостью до 1,5 Мб, два последовательных и один двунаправленный параллельный порт, контроллер клавиатуры, сторожевой таймер, а также программатор флэш-памяти. На одном из электронных дисков предварительно установлена DOS V6. Плата универсальна и может использоваться как в машинах с пассивной системной шиной, так и в качестве одноплатного компьютера.
Рис. 5. Процессорная плата фирмы Octagon Systems
На рис. 6 показан одноплатный компьютер фирмы Octagon Systems размером 150х200 мм. Он имеет вычислительную мощность до 486DX4-100, объем ОЗУ до 32 Мб, три электронных диска общей емкостью до 2,5 Мб, четыре последовательных порта RS-232/485, параллельный порт принтера, порт клавиатуры, программатор флэш-памяти, IDE-контроллер гибких и жестких дисков; к локальной шине с тактовой частотой 33 МГц подключены контроллеры SCSI, Ethernet и SVGA (1 Мб) с поддержкой ЭЛТ-дисплеев и плоских панелей; шина расширения - PC/104.
Рис. 6. Одноплатный компьютер фирмы Octagon Systems
Отдельного разговора заслуживают специальные защищенные и упрочненные компьютеры для мобильных пользователей. Так, компьютер фирмы Getac (рис. 7) может работать как в условиях пыльной бури, так и во время морского шторма. Несмотря на внешнее сходство с обыкновенным блокнотным ПК, он имеет ряд уникальных характеристик, таких, как наличие пыле- и водонепроницаемого металлического корпуса, вибро- и ударопрочность в соответствии с военными стандартами, рабочий диапазон температур от - 20 до +50С° и др. Такие защищенные компьютеры находят применение как в военной, так и в промышленной сфере, например для съема данных с необслуживаемых станций, в передвижных диагностических лабораториях и т. д.
Рис. 7. Защищенный мобильный компьютер фирмы Getac
Внешние устройства
Наиболее популярными устройствами хранения информации являются накопители на гибких и жестких дисках. Среди наработанных решений в области защиты накопителей от вредных воздействий можно назвать те, что используются в системном блоке фирмы Advantech (см. рис. 1): противоударное крепление блока накопителей, защитную дверцу, предохраняющую от попадания загрязнений, пылеулавливающий фильтр и систему вентиляции, обеспечивающую положительное внутреннее давление очищенного воздуха. Если необходима более высокая ударопрочность, применяются специальные накопители на жестких дисках. Так, накопители в виде карт стандарта PCMCIA представляют собой высоконадежное устройство большой емкости и повышенной прочности, позволяющее к тому же отказаться от гибких дисков как сменных носителей информации. Фирма Integral выпускает PCMCIA-накопители емкостью до 340 Мб, выдерживающие перегрузки до 2 g при вибрации и до 200 g при ударе в рабочем состоянии. Внутреннее пространство накопителя заполнено инертным газом, а время безотказной работы достигает 300 000 часов. В том же случае, когда требуется еще большая надежность, более широкий диапазон рабочих температур или повышенная ударопрочность (например, в бортовых системах), как правило, используются накопители на полупроводниковой флэш-памяти. Одной из ведущих фирм в области разработки аппаратных и программных средств для линейных накопителей на флэш-памяти является компания M-Systems, которая выпускает ряд изделий емкостью до 900 Мб для работы с ISA, PC/104, PCMCIA, SCSI и т. д. Фирма SanDisk лидирует в области флэш-дисков ATA с интерфейсом PCMCIA или IDE. Хотя число циклов перезаписи во флэш-память ограничено, его типовое значение для современных систем достигает миллиона.
Существенным элементом интерфейса с оператором является дисплей. Кожух, показанный на рис. 2, обеспечивает как вибростойкость встраиваемого дисплея, так и защиту его от пыли и влаги со стороны экрана. Однако встраиваемый дисплей, конечно, не рассчитан на эксплуатацию в тяжелых условиях, поэтому такой метод защиты можно рассматривать как компромиссный. Некоторые компании разрабатывают дисплеи для систем автоматизации "с нуля". Например, фирма Intecolor изготавливает мониторы с диагональю 20 дюймов, в том числе для морского применения, которые выдерживают удар в 20g и имеют повышенную степень защиты от внешних воздействий. В тех случаях, когда важную роль играют малые габариты изделия, предпочтительны плоские панели на базе жидкокристаллических индикаторов. Для низких температур, где, как правило, не годятся ни ЖКИ-дисплеи, ни ЭЛТ, применяют электролюминесцентные или плазменные дисплеи. При этом рабочий диапазон температур может составлять 55 ...+70оС при отличных показателях по вибростойкости.
Еще одной особенностью индустриальных приложений является широкое применение сенсорных экранов. С одной стороны, это позволяет обходиться без клавиатуры, с другой стороны, обеспечивает определенные удобства для обслуживающего персонала, который зачастую привык к простым функциональным клавиатурам, в то время как 101 клавиша в стандартной клавиатуре IBM PC вызывает страх. На сенсорном экране можно программно рисовать функциональную клавиатуру, например как часть мнемосхемы управляемого объекта. Более того, можно выводить на экран несколько разных функциональных клавиатур в зависимости от выполняемой операции, а для изменения их состава или местоположения достаточно внести соответствующие коррективы в программное обеспечение.
Тем не менее клавиатуры используются, и используются широко. Для обеспечения пыле- и брызгозащиты применяются накладки из прозрачного пластика, наклеиваемые поверх клавиш, либо клавиатуры, выполненные по мембранной технологии (см. рис. 3). Существуют клавиатуры, которые могут работать в агрессивных средах, - пролитые на них нефтепродукты смываются водой с порошком. С такой же степенью защиты выпускаются манипуляторы мышь (Durapoint Mouse), не содержащие движущихся частей.
Специфичными для промышленного применения являются аппаратные средства, предназначенные для непосредственной связи вычислительной системы и объекта управления. Эти средства ответственны за нормирование и/или линеаризацию входных сигналов с датчиков или усиление выходных сигналов для исполнительных устройств. При этом весьма часто предъявляются требования полной гальванической развязки вычислительной системы от каждого из входных или выходных каналов, а также между самими каналами. Ряд фирм, таких, как Analog Devices, Grayhill, Opto22 и др., выпускает специальные модули (Data Acquisition Modules), реализующие эти требования. В последнее время получают распространение удаленные модули, имеющие непосредственный выход на одну из шин класса Fieldbus, что позволяет легко интегрировать датчики и исполнительные устройства в распределенных системах управления. Типичным примером могут служить модули серии ADAM-4000, производимые фирмой Advantech (рис. 8).
Рис. 8. Модуль сбора данных фирмы Advantech
Сети
Ни у кого не вызывает сомнения, что наиболее распространенным сетевым решением в настоящее время является Ethernet, а повышение скорости ее работы до 100 Мбит/с еще более увеличивает привлекательность этого стандарта. Ethernet широко используется в системах промышленной автоматизации, однако применение этой сети ограничено там, где требуется принятие решений в реальном времени. Это связано с недетерминированной природой самого протокола Ethernet. Иными словами, при большой загрузке сети существует маленькая, но отличная от нуля вероятность того, что сообщение, посланное одним из узлов, никогда не достигнет адресата. Теперь представим, что этим сообщением является информация об аварии в оборудовании ядерного реактора, а адресатом - подсистема управления реактором, от которой ждут немедленных действий. Вот почему в приложениях, где необходима гарантированная доставка информации в течение заданного интервала времени, более подходящими оказываются протоколы Token-Ring (4/16 Мбит/с) или Arcnet (2,5 Мбит/с). В настоящее время существует стандарт Arcnet II со скоростью до 20 Мбит/с, однако его применение тормозится ограниченной поддержкой со стороны изготовителей специализированных сетевых микросхем. Поклонники ATM предсказывают, что вскоре Asynchronous Transfer Mode вытеснит всех, даже Ethernet, и не исключено, что они окажутся правы при условии поддержки ATM со стороны изготовителей микросхем. Важное значение для повсеместного внедрения ATM может сыграть инициатива IBM по созданию дешевого варианта этого протокола со скоростью 25 Мбит/с.
Существуют также сетевые протоколы, специфичные для промышленных систем автоматизации низкого уровня, такие, например, как среднескоростные CAN, FIP, Profibus, BIT-bus и т. п. Их часто называют общим словом Fieldbus. Стандарт CAN пользуется возрастающим признанием и имеет две основные конкурирующие реализации протоколов верхнего уровня: DeviceNet фирмы Allen-Bradley и SDS фирмы Honeywell. В США специальный комитет работает над стандартом Fieldbus, призванным объединить все положительные стороны существующих подходов. В качестве дешевой низкоскоростной магистрали широко применяется интерфейс RS-485, который обеспечивает связь по витой паре сегментами длиной до 1,2 км и позволяет подключать до 32 узлов на сегмент. В качестве логических протоколов работы по RS-485 получили распространение Optomux и другие, совместимые с ним.
Наличие сильных электромагнитных полей на объектах управления приводит к тому, что в качестве физической линии связи часто применяется оптоволокно, а невозможность или дороговизна прокладки кабелей может привести к необходимости использования в качестве линии связи радиоканала.
Программное обеспечение
Естественно, специфика промышленного применения наложила свой отпечаток на используемое ПО. Конечно, это тема для отдельной большой статьи, поэтому здесь я приведу основные, на мой взгляд, требования к программному обеспечению и дам небольшой обзор основных продуктов в этой области.
Первым требованием является надежность программного обеспечения. Действительно, одно дело, когда у вас зависает редактор текста в офисе, и совсем другое, когда неправильно работает программа, управляющая ядерным реактором или космическим кораблем. В конечном счете многие новации последнего времени типа структурного программирования, объектно-ориентированных языков, CASE-технологий появились в результате стремления писать все более сложные программы с меньшим количеством ошибок.
Второе требование - быстрое реагирование на какие-либо внешние события или изменения в параметрах управляемых процессов. Системы, реализующие это требование, часто называют системами реального времени. Разумеется, понятие "быстрый" весьма относительно. Типовое время реагирования на внешние воздействия, необходимое современным индустриальным системам, составляет десятки микросекунд. В то же время существует много задач, где инерционность протекающих процессов позволяет реагировать с задержкой в десятки, а то и в сотни миллисекунд. В этом случае применяется понятие "мягкое реальное время". Строго говоря, отождествление понятий "реальное время" и "быстрый" не является верным. Например, если ваша система регистрирует уровень грунтовых вод, то и одно измерение в час соответствует требованиям реального времени для этого процесса.
И третьим требованием, предъявляемым к программному обеспечению систем управления, можно назвать многозадачность. Это требование проистекает из подчас чрезвычайно сложной и многоуровневой природы управляемых процессов, когда необходимо одновременно реализовать сложные алгоритмы управления различными аспектами или частями реального объекта. Каждая задача выполняет свою долю работы по управлению объектом, и все они делят между собой ресурсы вычислительной системы в зависимости от своего приоритета и от внешних и внутренних событий. Существует целый ряд алгоритмов распределения ресурсов между задачами. Другое тесно связанное с многозадачностью понятие - многопоточность. Хотя терминология здесь не совсем устоялась, под многопоточностью, как правило, понимают возможность выполнения в рамках одной задачи нескольких независимых процессов (потоков команд), пользующихся, в отличие от задач, общими участками кода и данных.
Перечисленным требованиям должны удовлетворять все уровни ПО системы. Условно ПО можно разделить на три уровня:
- базовая система ввода-вывода (BIOS);
- операционная система (ОС) и драйверы;
- собственно прикладные программы.
BIOS представляет собой непосредственный интерфейс между аппаратурой и программным обеспечением верхних уровней. Ведущие фирмы - поставщики BIOS ориентируются в основном на рынок офисных компьютеров и не применяют специальных мер для обеспечения требований индустриальных приложений. Основная опасность при обращении к BIOS - это возможность запрета прерываний на достаточно долгое время, в результате чего может быть пропущена важная информация от быстродействующих датчиков или телекоммуникационных устройств. Вот почему, с одной стороны, есть фирмы, предлагающие BIOS, ориентированные на приложения "жесткого" реального времени, а с другой стороны, многие операционные системы минимизируют взаимодействие с BIOS или не обращаются к ней вообще.
ОС выполняет базовые функции по интерфейсу с оператором, запуску программ, распределению памяти, поддержке файловой системы и т. п. Наиболее распространенной операционной системой, конечно, является MS-DOS фирмы Microsoft и совместимые с ней. Последние версии обладают приемлемой надежностью, однако в них нет поддержки многозадачности, а попытки реализовать ее в виде надстройки наталкиваются на проблему нереентерабельности DOS. Создатель системы автоматизации, как правило, встает перед выбором: или взять за основу многозадачное ядро реального времени, работающее над DOS, или перейти на другую операционную систему. В первом случае используются самодельные или коммерчески распространяемые библиотеки программ, реализующие функции многозадачной ОС, например C-TASK или RT-Kernel. Во втором - открывается богатый выбор операционных систем, разработанных специально для применения в системах "жесткого" реального времени. Эти ОС часто так и называют операционными системами реального времени. На рынке существует несколько десятков операционных систем реального времени. У нас известны такие, как QNX, OS-9000, VxWorks, iRMX, VRTX, Nucleu, и др.
Существует два подхода к переносимости программного обеспечения: поддержка сразу нескольких аппаратных платформ одной ОС и обеспечение стандартного интерфейса между прикладными программами и ОС. В качестве такого стандарта часто используют программный интерфейс, разработанный для UNIX-подобных операционных систем и получивший название POSIX (Portable Operating System Interface for UNIX). Программу, написанную в соответствии со стандартом POSIX, можно скомпилировать и запустить на любой аппаратной платформе при условии применения POSIX-совместимой операционной системы.
При проектировании ОС реального времени все чаще используется идеология микроядра, которая увеличивает надежность программного обеспечения и позволяет задействовать только те компоненты операционной системы, которые необходимы в каждом конкретном случае. Так, например, микроядро одной из самых распространенных операционных систем QNX имеет размер менее 10 Кб. Модуль, ответственный за файловую систему, например, запускается как одна из задач и может быть легко удален. Все драйверы также функционируют как независимые задачи. Таким образом, если в вашей встроенной системе не используются файловые операции или отсутствуют интерфейсы с какими-либо внешними устройствами, вы можете просто не включать в состав операционной системы, функционирующей в вашем изделии, соответствующие модули, высвобождая тем самым память для более эффективного выполнения приложений.
"А как же многозадачные и многопоточные Windows NT и OS/2?" - резонно спросит читатель. Да, эти новейшие операционные системы оказывают определенное давление на рынок ОС реального времени. Тем не менее обе они ориентированы на офисное применение и не могут обеспечить скорость отклика на внешние воздействия, сравнимую со специализированными OC реального времени. Кроме общей неразвитости механизмов управления приоритетами, могут возникать проблемы некоторой непредсказуемости поведения этих ОС. Например, совершенно неожиданно система может инициировать массированную подкачку на диск, забирая для этого практически все ресурсы. Вот почему чувствительные к задержкам задачи типа обмена данных в мультимедиа-приложениях оформляются в виде драйверов. Так что пока Windows NT и OS/2 можно использовать только в задачах "мягкого" реального времени, а тот факт, что количество их дистрибутивных дискет превосходит число пальцев на обеих руках, не внушает оптимизма разработчикам встраиваемых систем, где каждый мегабайт на счету.
Проникновение Windows 95 и следующих версий OS/2 и Windows NT на рынок систем реального времени будет возрастать, и, по-видимому, скоро мы станем свидетелями конкуренции в этой области между ОС, совместимыми с POSIX и Win32. Более того, совсем недавно объявлено о создании альянса между IBM и DEC для разработки ОС реального времени следующего поколения на базе микроядра IBM. Конкурентная борьба между крупнейшими мировыми компаниями обещает быть очень интересной, и, возможно, вскоре появятся новые ОС, пригодные для применения в промышленных системах автоматизации. Хотя некоторые горячие головы предсказывают доминирование какой-то одной операционной суперсистемы на всех аппаратных платформах и для любых приложений, 25-летняя история UNIX не позволяет надеяться, что уже нынешнее поколение будет жить при таком "коммунизме".
Немного особняком стоит программное обеспечение, предназначенное для эксплуатации на верхнем уровне систем автоматизации, например, в диспетчерских электростанций, пультах управления сложными агрегатами и т. д. Главными функциями таких SCADA-программ (Supervisor Control And Data Acquisition) являются отображение технологического процесса в виде мнемосхем, сигнализация об аварийных ситуациях, ведение системного журнала, обеспечение общего управления процессом со стороны оператора. Многие системные интеграторы или подразделения АСУ крупных предприятий имеют свои наработки в этой области. В то же время есть фирмы, специализирующиеся на разработке универсальных SCADA-программ, таких, как Genesis (Iconics), FixDmacs (Intellution), InTouch (Wonderware). Из отечественных разработок хотелось бы отметить программу Trace Mode (Adastra Research Group). На рис. 9 показан экран с мнемосхемами объектов, реализованными в системе Genesis.
Рис. 9. Программа Genesis фирмы Iconics
Граница между программным обеспечением класса SCADA и MMI весьма условна, поэтому многие системы SCADA могут работать в качестве интерфейса MMI для систем нижнего уровня. В последнее время получает распространение программное обеспечение класса MES (Manufacturing Execution Systems), основной задачей которого является оптимизация управления производством в целом, включая планирование запасов комплектующих, расписание технологических процессов и т. д. Системы MES, с одной стороны, взаимодействуют со SCADA, образуя единую систему управления производством, а с другой стороны, они часто интегрируются в систему планирования и управления предприятием в целом.
В заключение хотелось бы поблагодарить фирмы Advantech, Getac, Iconics, Interlink и Octagon Systems, с любезного разрешения которых напечатаны иллюстрации к этой статье, и выразить надежду, что Россия, пойдя по пути интеграции в мировую экономику, быстро восстановит свой экономический потенциал, и не в последнюю очередь благодаря внедрению современных средств автоматизации в промышленности.
Сергей Сорокин
Сергей Сорокин - генеральный директор фирмы ProSoft, тел.: (095) 234-0636,
E-mail: root@prosoftmpc.msk.su.Z.