Программное обеспечение систем управления

Автор работы: Пользователь скрыл имя, 18 Января 2011 в 17:57, лекция

Краткое описание

В типовой архитектуре SCADA-системы явно просматриваются два уровня:
* уровень локальных контроллеров, взаимодействующих с объектом управления посредством датчиков и исполнительных устройств;
* уровень оперативного управления технологическим процессом, основными компонентами которого являются серверы, рабочие станции операторов/диспетчеров, АРМ специалистов.

Вложенные файлы: 1 файл

Лекция3.doc

— 492.50 Кб (Скачать файл)

    Лекция  №4

Программное обеспечение систем управления

    1. Классификация программных  средств систем  управления

                    технологическими  процессами

    В типовой архитектуре SCADA-системы явно просматриваются два уровня:

  • уровень локальных контроллеров, взаимодействующих с объектом управления посредством  датчиков и исполнительных устройств;
  • уровень оперативного управления технологическим процессом, основными компонентами которого являются серверы, рабочие станции операторов/диспетчеров, АРМ специалистов. 

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

     Различают базовое и прикладное программное обеспечение (рис.1).

    Рис. 1. Классификация программных средств  системы управления.

  • Базовое ПО включает в себя различные компоненты, но основным из них является операционная система (ОС) программно-технических средств АСУТП. Каждый уровень АСУТП представлен «своими» программно-техническими средствами: на нижнем уровне речь идет о контроллерах, тогда как основным техническим средством верхнего уровня является компьютер. В соответствии с этим в кругу специалистов появилась и такая классификация: встраиваемое и настольное программное обеспечение.

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

    Для решения подобных задач рекомендуется применение ОС реального времени (ОСРВ). Такие операционные системы иногда называют детерминированными, подразумевая под этим гарантированный отклик за заданный промежуток времени. Большинство микропроцессорных устройств (в том числе контроллеры и компьютеры) используют механизм прерываний работы процессора. В ОС реального времени, в отличие от ОС общего назначения (не гарантирующих времени исполнения), прерываниям присвоены приоритеты, а сами прерывания обрабатываются за гарантированное время.

    Выбор ОС зависит от жесткости требований реального времени. Для задач, критичных к реакции системы управления, в настоящее время применяются такие операционные системы реального времени, как OS-9, QNX, VxWorks. В системах с менее жесткими требованиями к реальному времени возможно применение версий Windows NT/CE, точнее их расширений реального времени.

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

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

    Операционная  система QNX разработки канадской фирмы QNX Software Systems Ltd. является одной из наиболее широко используемых систем реального времени. QNX гарантирует время реакции в пределах от нескольких десятков микросекунд до нескольких миллисекунд (в зависимости от быстродействия ПЭВМ и версии QNX). Кроме того, высокая эффективность QNX в задачах управления в реальном времени обеспечивается такими свойствами, как многозадачность (до 250 задач на одном узле), встроенные в ядро системы сетевые возможности, гибкое управление прерываниями и приоритетами, возможность выполнения задач в защищенном и фоновом режимах.

    Операционная  система QNX нашла применение как на нижнем уровне АСУТП (ОС для контроллеров), так и на верхнем уровне (ОС для программного обеспечения SCADA).

    Операционная  система реального времени VxWorks предназначена для разработки ПО встроенных компьютеров, работающих в системах «жесткого» реального времени. К операционной системе VxWorks прилагается и инструментальная среда Tornado фирмы Wind River Systems со средствами разработки прикладного программного обеспечения. Его разработка ведется на инструментальном компьютере в среде Tornado для последующего исполнения на целевом компьютере (контроллере) под управлением VxWorks.

    ОС VxWorks поддерживает целый ряд компьютерных платформ,  в том числе Intel 386/486/Pentium, PowerPC, DEC Alpha. К платформам, поддерживаемым инструментальной средой Tornado, относятся Sun (Solaris), HP 9000/400,700, DEC Alpha, PC (Windows 95 и NT) и другие.

    Операционная  система Windows знакома всем как настольная система. Но это, прежде всего, относится к платформам Windows 3.хх/95, в которых действительно отсутствует поддержка реального времени. Ситуация резко изменилась с появлением Windows NT. Сама по себе Windows NT не является операционной системой реального времени в силу ряда ее особенностей. Система поддерживает аппаратные (а не программные) прерывания, отсутствует приоритетная обработка отложенных процедур и др. Но в конце ХХ века ряд фирм предприняли серьезные попытки превратить Windows NT в ОС жесткого реального времени. И эти попытки увенчались успехом. Компания VenturCom разработала модуль Real Time Extension (RTX) - подсистему реального времени (РВ) для Windows NT. Эта подсистема имеет собственный планировщик со 128 приоритетами прерываний, который не зависит от NT. Максимальное время реакции на прерывание составляет 20-80 мкс вне зависимости от загрузки процессора. Теперь при каждом прерывании от таймера приоритет передается критичным по времени задачам. А в оставшееся от их работы время могут выполняться «медленные» процессы: ввод/вывод, работа с диском, сетью, графическим интерфейсом и т. п.

    32-разрядная Windows CE была создана компанией Microsoft для малых компьютеров (калькуляторов), но в силу ряда достоинств стала претендовать на роль стандартной ОС реального времени. К числу этих достоинств относятся:

  • открытость и простота стыковки с другими ОС семейства Windows;
  • время реакции порядка 500 мкс;
  • значительно меньшие по сравнению с другими ОС Windows требования к ресурсам памяти и возможность построения бездисковых систем.

    А в 1999 году компанией Direct by Koyo ОС Windows CE была впервые установлена на платформу микроPLC.

    Выбор операционной системы программно-технических  средств верхнего уровня АСУТП определяется прикладной задачей (ОС общего пользования или ОСРВ). Но наибольшую популярность и распространение получили различные варианты ОС Windows (Windows NT/2000). Ими оснащены программно-технические средства верхнего уровня АСУТП, представленные персональными компьютерами (ПК) разной мощности и конфигурации - рабочие станции операторов/диспетчеров и специалистов, серверы баз данных (БД) и т. д.

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

    Вот  несколько основных аргументов в пользу Windows:

  • Windows имеет очень широкое распространение в мире, в том числе и в России, в связи с чем легко найти специалиста, который мог бы сопровождать системы на базе этой ОС;
  • эта ОС имеет множество приложений, обеспечивающих решение различных задач обработки и представления информации;
  • ОС Windows и Windows-приложения просты в освоении и обладают типовым интуитивно понятным интерфейсом;
  • приложения, работающие под управлением Windows, поддерживают общедоступные стандарты обмена данными;
  • системы на базе ОС Windows просты в эксплуатации и развитии, что делает их экономичными как с точки зрения поддержки, так и при  поэтапном росте;
  • Microsoft развивает информационные технологии (ИТ) для Windows высокими темпами, что позволяет компаниям, использующим эту платформу «идти в ногу со временем».

    Также следует учитывать и то, что  неотъемлемой частью верхнего уровня АСУ ТП является человек, время реакции которого на события недетерминировано и зачастую достаточно велико. Да и сама проблема реального времени на верхнем уровне не столь актуальна.

    В 90-х годах широкое распространение  получила ОС реального времени QNX. Имеется множество примеров использования QNX на всех уровня иерархической структуры АСУТП (от контроллеров до серверов и рабочих станций). Но в последние годы активность компании на рынке SCADA-систем значительно снизилась, что привело и к снижению числа продаж этого программного продукта. Объясняется это тем, что еще в 1995 году компания QNX Software Systems Ltd. объявила об «уходе» во встроенные системы.

    С точки зрения разработки системы  управления предпочтительна такая  программная архитектура, в которой ПО всех уровней управления реализовано в единой операционной системе. В этом случае «автоматически» снимаются все вопросы, связанные с вертикальным взаимодействием различных программных компонент системы управления. Но на практике это далеко не так. Достаточно часто в разрабатываемых системах контроля и управления нижний и верхний уровни реализуются в разных ОС. И наиболее характерна ситуация, когда на уровне контроллера используется ОС реального времени, а на уровне оператора/диспетчера SCADA-система функционирует под Windows NT. Без специализированных решений по организации взаимодействия между подсистемами здесь не обойтись.

  • Для функционирования системы управления необходим и еще один тип ПО - прикладное программное обеспечение (ППО).

    Известны два пути разработки прикладного программного обеспечения систем управления:

  • создание собственного прикладного ПО с использованием средств

    традиционного программирования (стандартные  языки 

    программирования, средства отладки  и т.д.);

  • использование для разработки прикладного ПО существующих

    (готовых) инструментальных средств.

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

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

    С точки зрения области применения готовые инструментальные средства можно разделить на два класса:

  • средства, ориентированные на разработку программ управления внешними устройствами, контроллерами - CASE-системы (Computer Aided Software Engineering);
  • средства, ориентированные на обеспечение интерфейса оператора/ диспетчера с системой управления – SCADA-системы (Supervisory Control And Data Acquisition - диспетчерское управление и сбор данных).
  • Контроллеру требуется программа, в соответствии с которой он взаимодействует с объектом. В одних случаях речь идет только о сборе данных с объекта, в других - о логическом  управлении (например, выполнении блокировок). Наконец, одно из основных применений контроллера - реализация функций непрерывного управления отдельными параметрами или технологическим аппаратом (процессом) в целом. 

Информация о работе Программное обеспечение систем управления