logo
Лекции по АСОиУ

Проблематика систем реального времени

На основе данных, поступающих от датчиков, прикладная программа вырабатывает определенные команды для исполнительных механизмов. Время, прошедшее с момента измерения до начала работы исполнительного механизма после поступившей команды, должно быть так мало, чтобы величина его, измеряемая датчиком, значительно не менялась. Оно складывается из времени измерения датчиком требуемой величины, времени передачи и обработки данных по прикладной программе, времени передачи данных исполнительному механизму и времени его срабатывания (результатом обычно является механическое движение). Связь между измеряемыми величинами, выходными величинами и временем иллюстрирует Рис. 1-8. Если вышеупомянутое время меньше 2*At, то ошибка выдаваемой величины имеет максимальное приращение. Нужно учитывать то обстоятельство, чтс величина At не постоянна, а наоборот, обратно пропорциональна времени производной измеряемой величины. Таким образом, при быстром изменении измеряемой величины врем* между ее измерением и действием исполнительного механизма (ИМ) должно быть меньше чем в случае ее медленного изменения.

Если отдельные слагаемые общего времени (или само общее время) известны достаточной степенью точности, их можно учесть в прикладной программе и тем самым улучшить динамику системы. Более критическим, чем общее время, фактором являются фазовые флуктуации - непредсказуемое варьирование времени передачи, которое заметно мешает процессу управления. Чаще всего их причиной является прикладная программа и процесс передачи данных, реже — датчики и исполнительные механизмы. Фазовые флуктуации, возникающие в процессе передачи данных, могут иметь самую различную природу. Для маркерных методов доступа характерны фазовые флуктуации, зависящие от конкретного протокола и загруженности шины. Фазовые флуктуации, зависящие от нагрузки на шину10, возникают и при использовании метода CSMA/Cx. Задержки могут возникнуть при использовании множественного доступа (Carrier Sense multiple Access) или из-за появления коллизий (в обоих случаях причиной является высокая нагрузка на шину). Фазовые флуктуации, возникающие при высокой нагрузке, зависят от времени занятия шины отдельными устройствами, которое, в свою очередь, зависит от длины сообщения и скорости передачи данных. Практически все протокрлы, реализованные как аппаратно, так и программно, порождают зависящие от конкретики реализации фазовые флуктуации. Их можно избежать только централизованным управлением доступом к среде передачи данных, но тогда увеличивается среднее время задержки. Особенно заметно это при небольшой нагрузке на шину.

  1. Компоненты распределенной системы. Особенности распределенной системы управления. Типы сетевых узлов распределенной системы управления.

Основные концепции применения распределенных систем

Для обеспечения высокой производительности системы, состоящей из отдельных узлов с ограниченной производительностью, необходимы параллельные вычисления. Параллельная обработка предполагает относительную независимость узлов, при которой большие фрагменты программ могут выполняться без принудительной синхронизации, то есть без ожидания событий, «разрешающих» программам работать дальше. В результате общая вычислительная мощность системы уменьшается. Таким образом, задачи, выполняемые каким-либо узлом, должны быть максимально независимы от задач, решаемых другими узлами. Все узлы можно условно разделить на зависящие и не зависящие от конкретного применения. Узлы, не зависящие от конкретного применения, обычно отвечают за ввод, вывод и сбор данных. Функциями узлов, зависящих от конкретного применения, обычно являются управление и контроль. Все подводит нас к концепции типов узлов: датчики, исполнители, узлы ввода, наблюдения, контроля и управления.

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

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

Типы сетевых узлов

Технология LonWorks предоставляет возможность использовать различные типы узлов. Основные функции узлов:

- сбор данных;

- вывод данных;

- управление и контроль;

- обработка и визуализация.

Распределение функций узлов в реальной системе зависит от ряда критериев:

- разнообразия типов узлов, что может означать оптимальную адаптированность системы к решению конкретной задачи, однако при увеличении затрат на сопровождение;

- общих затрат на аппаратное обеспечение при большом количестве компонентов системы;

- особых требований к проговодительности системы;

- топологических предпосылок для совмещения функциональности.

  1. Обзор Fieldbus систем. Системы автоматизации технологических процессов: Profibus. P‑NET. Interbus-S. Системы автоматизации распределенных объектов: LonWorks. Can.

Обзор FIELDBUS-систем

Сравнивать LAN друг с другом, когда обычно известны все начальные условия, гораздо проще, чем Fieldbus-системы. С Fieldbus-системами ситуация обстоит иначе. Таблицы, подобные приведенным в [B6tt95], в которых сравнивается такой параметр различных Fieldbus-систем, как скорость передачи данных, абсолютно бессмысленны: в них сравниваются «яблоки с грушами»13. Вызывает недовольство то обстоятельство, что автор не отметил решающих преимуществ и недостатков соответствующих Fieldbus-систем, информация представлена не полностью и т. д. Объем требований, предъявляемых к Fieldbus-системам, значительно больше объема требований, предъявляемых к LAN. Поэтому в ближайшем будущем будут иметь большое значение множество различных Fieldbus-систем. Попытка оценить, сравнить и классифицировать Fieldbus-системы была предпринята [Schm96]. Из этого источника видно, насколько сложна тематика и какие конкретные проблемы возникают в ее рамках.

Цель этого раздела - выделить те особенности, которые являются решающими для той или иной системы, в частности LON.

Обзор Lon Works

Исходная цель: создать Fieldbus-систему, которая, с точки зрения корпорации Echelon, покрывала бы до 80% возможных применений Fieldbus. Для быстрого распространения система должна была концептуально поддерживать децентрализованное функционирование и предлагать пользователю универсальную поддержку. Эти требования воплотились в Fieldbus-системе, которая значительно выделяется среди других, хотя при детальном сравнении с Fieldbus-системами обнаруживает некоторые общие черты. Сравнение коммуникационных уровней модели ISO/OSI приводит к следующим выводам:

- LON благодаря Neuron Chip осуществляет дифференциальное манчестерское кодирование (Differential Manchester Coding), которое применяется и в других системах, например в Fieldbus-системах стандарта ШС. Его преимущество заключается в том, что питание устройств осуществляется прямо через шину, а трансформаторы можно изолировать от остальных устройств. На физическом уровне LON поддерживает различные скорости передачи и передающие среды, в то время как другие Fieldbus-системы не так универсальны. Это - серьезное преимущество LON (например в плане совместимости и взаимодействия). Наиболее распространенная скорость передачи данных в LON - 78 Кбит/с получена при трансформаторном сопряжении и так называемом трансивере с произвольной топологией. Топология сети может быть произвольной в рамках максимальной общей длины шины (500 метров);

- LON использует метод доступа к шине CSMA, который другими Fieldbus-системами не используется, допускающий обусловленные коллизиями сбои при передаче сообщений, но ограничивающий вероятность их возникновения. Для предотвращения сбоев используется принцип «основное устройство-подчиненное устройство» (Master-Slave, иногда с меняющимися основными устройствами), маркерная передача или CSMA/CA, при котором осуществляется побитовый арбитраж;

- схема адресации, используемая в LON, предусматривает разделение сетей на подсети, то есть сегментацию сети с помощью маршрутизаторов. Поскольку во многих Fieldbus-системах определены только коммуникационные уровни 1, 2 и 7, для них логически существует только одна сеть, что делает невозможной изоляцию коммуникационной нагрузки;

- транспортный уровень в LON реализован ограниченно. Он предоставляет в распоряжение пользователя службу подтверждения, но не фрагментирует длинные блоки данных на несколько коротких;

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

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

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

В настоящее время ситуация в области реализации LON такова:

- существует два вида нейронных чипов (Neuron Chip), которые выпускаются двумя различными производителями. Протокол обмена данными не только стандартизирован, но и реализован для некоторых других Fieldbus-систем, таких как INTERBUS-S или CAN. На этих чипах выполняются пользовательские приложения, которые связываются с протоколом инструментарием разработчика;

- компилятор и компоновщик (редактор связей), а также коммуникационное программное обеспечение (в инструментарии разработчика) поставляются только корпорацией Echelon. Однако в ближайшем будущем ситуация может измениться благодаря открытой публикации LON-протокола в 1996 году;

- вопрос совместимости играет особую роль во всех Fieldbus-системах, поскольку один производитель не в состоянии охватить весь спектр Fieldbus-систем и поставить все их компоненты. Благодаря реализации коммуникационного протокола в одном чипе и разработке пользовательских программ единым инструментарием, некоторые препятствия совместимости устраняются уже в самом начале. Другие Fieldbus-системы, такие как INTERBUS-S или ЕЮ, имеют схожую основу. То, что этого для достижения полной совместимости недостаточно, было обнаружено довольно быстро. В LON были введены так называемые стандартные типы сетевых переменных, которые, как минимум, обеспечивают полную совместимость типов данных. Кроме того, была основана Ассоциация по совместимости LonMark (LonMark Interoperability Association), которая вырабатывает руководства по разработке прикладных объектов и их функциональных профилей, что означает следующий шаг в направлении совместимости. Другие работающие в области Fieldbus-технологий организации получили профили для всех классов приложений, а также подвели к необходимости использования тестов на совместимость и сертификации продуктов на базе Fieldbus-систем. Вероятно, в будущем продукты LON будут также подвергаться тестированию и сертификации.

Концептуальное развитие LON проходило не так, как других Fieldbus-систем, большинство которых было рассчитано на узкий спектр применения. Позже начались работы по их универсализации. LON же предназначалась для широкого использования, и этот принцип отразился в ее конструктивных особенностях. Например, поддержка устройств ввода/вывода встроенным программным обеспечением включает не только обмен аналоговыми и двоичными данными, но и протоколы передачи для магнитных карт, устройств инфракрасного управления, дифференциальных кодеров, UART и последовательного обмена UART и устройств последовательного обмена данными со специальными запоминающими устройствами (Touch Memories).

Другой концептуальной особенностью является четкая поддержка децентрализованной структуры систем. Поэтому:

- разделения абонентов шины (узлов) на основные и подчиненные устройства не происходит;

- инициатором передачи данных по умолчанию выступает отправитель, опрос является исключением;

- программы в Neuron Chip активизируются событиями, например получение данных.

PROFIBUS

PROFIBUS (Process Fieldbus) [Bend90] принят CENELEC (EN50170) как европейский стандарт. Но процесс стандартизации еще не завершен. Многие фирмы и организации (группы пользователей) стараются распространить PROFIBUS во всем мире, прежде всего в США.

Основная цель, которая преследовалась при разработке PROFIBUS, - построение универсальной Fieldbus-системы. Однако через несколько лет выяснилось, что такой подход не оправдывает себя экономически. PROFIBUS существует в трех вариантах: PROFIBUS FMS (Fieldbus Messaging Specification), PROFIBUS DP (Decentralized Peripherals) и PROFTBUS PA (Process Automation). PROFIBUS PMS представляет собой сложную и мощную multimaster-систему. Как правило, ее применяют в различных приложениях в качестве магистрали, а на уровне датчиков и исполнительных механизмов используют другие Fieldbus-системы. PROFIBUS DP является усеченным вариантом PROFIBUS FMS, оптимизированным по времени реакции. Это в чистом виде система типа master-slave с одним устройством типа master. PROFIBUS PA применяется для автоматизации технологических процессов; уровень 1-й модели ISO/OSI в этой системе реализован в соответствии со стандартом IEC 1158-2 (защищенная система, которая может эксплуатироваться в отраслях, связанных с взрывоопасными работами).

PROFIBUS был разработан для систем промышленной автоматизации, но сегодш он применяется во многих областях, где количество узлов ограничено (i противоположность, например, Fieldbus-системам, применяющимся при автоматизации зданий) по причинам надежности и безопасности. Поэтому в PROFIBUS ограничиваются топологической структурой типа «линия» (физическая среда), которая может разделяться на несколько сегментов, соединенных повторителями (Рис. 1-15). Поскольку в качестве передающей среды, как правило, используется стандарт EIA RS485 допускающий максимум 32 узла, то общее количество их в одном сегменте ограничивается 32 (основные устройства, подчиненные устройства, повторители). Более того, стандарт не позволяет устанавливать более трех повторителей на одну линию, противном случае время задержки становится слишком большим. Общее количество узлов во всей системе ограничено 127 (Рис. 1-16). Адрес 128 используется для широковещательных запросов всем или нескольким абонентам сети. Теоретически можно спроектировать систему с 31 повторителем. Другие электрические характеристики, соответствующие EN50170: длина сегмента - 200-1200 м, в зависимость от скорости передачи; при использовании повторителей возможно ее увеличение до 4800м; длина ответвления до абонента- 30 см; скорость передачи- 9,6Кбит/с 500 Кбит/с (PROFIBUS DP: 12 Мбит/с).

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

Логически сквозная линия позволяет отказаться от третьего и четвертого уровней модели ISO/OSI14. Поскольку при разработке данной Fieldbus-системы решили, что пароли, «телеконференции» и т. д. не имеют никакого отношения к промышленной автоматизации, а набор символов на уровне 6 всегда постоянен, в PROFIBUS полностью отказались от уровней 3-6, что увеличило быстродействие системы (за счет небольшого числа внутренних интерфейсов между уровнями).

Метод доступа к шине, используемый в PROFTBUS, часто называют «гибридным» [Bonf92], так как в нем интегрированы одновременно два принципа. В системах, построенных по принципу master-slave (Рис. 1-16), правом доступа к шине обладает только основное устройство (master). Подчиненное устройство (slave) может только отвечать на запросы, посылаемые master. Какое из slave-устройств станет активным, определяет master-устройство. При ошибке в программе до определенных slave-устройств очередь может и не дойти. В системах типа master-master все устройства типа master связаны в логическое кольцо. Это означает, что все master-устройства пронумерованы в порядке возрастания, и высший адрес следует за низшим в точке замыкания. Логическая очередность доступа к шине определяется маркером (Token Passing), который с программно-технической точки зрения по сравнению с методом доступа CSMA/CD более ресурсоемок (проверяет, не существует ли нескольких маркеров, не потерян ли маркер и т. д.). С другой стороны, маркерный механизм передачи гарантирует детерминированное поведение системы.

В PROFIBUS определены два уровня приоритетов, и master-устройство, имеющее первый уровень приоритета, всегда имеет преимущество доступа относительно узлов с более низким уровнем приоритета. Высокоприоритетный доступ осуществляется только после освобождения шины другим master-устройством. При замене или добавлении узлов нет необходимости заново инициализировать систему, можно подключать узлы в процессе работы. Доступ к шине осуществляется на конкурентной основе. Время цикла шины постоянно, оно не изменяется даже при добавлении или удалении узлов. Нехватку времени на обработку «новых» узлов компенсируют «старые». Временные интервалы задаются не жестко. Master не обязан полностью использовать отведенное ему время, он

может заранее передать свой маркер следующему узлу. [Borst92] писал, что «PROFIBUS можно рассматривать как систему реального времени только с оговорками» .

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

Сравнивая PROFIBUS и LonWorks, можно констатировать, что PROFIBUS FMS нужно рассматривать скорее как магистраль для систем, в которых существует требование реального времени. PROFIBUS DP-это высокоскоростная система с ограниченным числом узлов. Поскольку протоколы master-узлов не могут быть полностью реализованы аппаратно, вопрос совместимости не является тривиальным. Именно по этой причине повсеместно организуются центры сертификации PROFIBUS.

P-NET

P-NET представляет собой часть введенного в 1996 году стандарта CENELEC EN50170. Это - multimaster-система (до 32 master-устройств на шину), в которой узлы подразделяются на master и slave. Однако, в противоположность PROFIBUS, master-узел может использоваться и как slave, благодаря чему другой master может относительно легко установить с ним связь.

В основе P-NET лежит стандарт RS485, но в несколько видоизмененной форме. Для уменьшения влияния отраженных волн [B6tt94] кабель витой экранированной пары замыкается в кольцо (Рис. 1-17), хотя с физической (и тем самым с топологической) точки зрения по-прежнему представляет из себя линию. Доступ к шине осуществляется при помощи передачи виртуального маркера: master-устройства получают доступ к шине циклически, в порядке возрастания их адресов (данная схема была специально разработана для P-NET). Каждое master-устройство может передать slave-устройству только одно сообщение (один кадр); каждое slave-устройство также может ответить только одним сообщением. Если запрос посылается одновременно всем slave-устройствам (широковещательный запрос), то ни одно из них не имеет права отвечать на него. Время цикла передачи маркера зависит от длины сообщения, а оно ограничено. Следовательно, P-NET является детерминированной системой, поскольку имеется возможность точно просчитать «наихудший случай».

Наибольший интерес в P-NET представляет сегментация сети. Для построения относительно независимых сегментов реализован третий уровень модели ISO/OSI (Рис. 1-18), сегменты соединяются друг с другом через так называемый шлюз (в обычной терминологии - маршрутизатор), преимущество которого заключается в простоте. Он предоставляет разработчику возможность организовать статическую или динамическую маршрутизацию в соответствии с программой. Для этого контроллер сохраняет информацию о прохождении через него сообщений master-устройства, а при ответе slave-устройства обратный маршрут ему уже известен.

Скорость передачи данных определена жестко - 76,8 Кбит/с, что характерно для всей P-NET. С одной стороны, предлагаются интересные функции и возможности для получения простой, полностью обозримой системы, с другой - ограничены важные аспекты, параметры и т. д. При сопоставлении P-NET с LonWorks обращаем внимание на то, что протокол P-NET, как и протокол PROFIBUS, интегрирован в стандартный контроллер, что порождает вопросы совместимости16.