Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory3_1.docx
Скачиваний:
109
Добавлен:
18.03.2016
Размер:
1.39 Mб
Скачать

Протоколы наследования и увеличения приоритетов Протокол наследования приоритета

Допустим в системе существуют две задачи с низким (А) и высоким (Б) приоритетом:

В момент T2 задача (Б) вытесняет низкоприоритетную задачу (А) и затем в момент времени T3 пытается захватить заблокированный (А) ресурс.

Протокол наследования приоритета состоит в том, что приоритет задачи (А) повышается до приоритета задачи (Б) в момент времени T3, то есть когда (Б) пытается захватить заблокированный ресурс. Таким образом задачи с приоритетом больше (А) но меньше (Б) не могут реализовать неограниченную инверсию, и задача (Б) получит ресурс сразу после того как (А) его разблокирует.

После того как задача (А) разблокирует ресурс, ее приоритет понижается до исходного.

Протокол увеличения приоритета

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

Допустим в системе существуют три задачи с низким (А), средним (Б) и высоким (В) приоритетом, которые могут заблокировать один ресурс:

В момент времени T3, когда задача (Б) пытается захватить заблокированный (А) ресурс, приоритет (А) повышается до приоритета задачи (В), т.е. до максимального приоритета из всех задач, которые могут владеть ресурсом. Как только задача (А) освобождает ресурс в момент времени T4, ее приоритет понижается до исходного, а приоритет задачи (Б), ожидавшей ресурс повышается до (В).

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

Взаимная блокировка в осрв

Взаимная блокировка - это аварийное состояние системы, которое может возникать при вложенности блокировок ресурсов. Допустим в системе существуют две задачи с низким (А) и высоким (Б) приоритетом, которые используют два ресурса - X и Y:

В момент времени T1 задача (А) блокирует ресурс X. Затем в момент времени T2 задачу (А) вытесняет более приоритетная задача (Б), которая в момент времени T3 блокирует ресурс Y. Если задача (Б) попытается заблокировать ресурс X (T4) не освободив ресурс Y, то она будет переведена в состояние ожидания, а выполнение задачи (А) будет продолжено. Если в момент времени T5 задача (А) попытается заблокировать ресурс Y, не освободив X, возникнет состояние взаимной блокировки - ни одна из задач (А) и (Б) не сможет получить управление.

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

Архитектуры осрв

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

  • Уровневая (слоевая) архитектура. Прикладное ПО имеет возможность получить доступ к аппаратуре не только через ядро системы и её сервисы, но и напрямую. По сравнению с монолитной такая архитектура обеспечивает значительно большую степень предсказуемости реакций системы, а также позволяет осуществлять быстрый доступ прикладных приложений к аппаратуре. Главным недостатком таких систем является отсутствиемногозадачности.

  • Архитектура «клиент-сервер». Основной её принцип заключается в вынесении сервисов ОС в виде серверов на уровень пользователя и выполнении микроядром функций диспетчера сообщений между клиентскими пользовательскими программами и серверами — системными сервисами. Преимущества такой архитектуры:

  1. Повышенная надёжность, так как каждый сервис является, по сути, самостоятельным приложением и его легче отладить и отследить ошибки.

  2. Улучшенная масштабируемость, поскольку ненужные сервисы могут быть исключены из системы без ущерба к её работоспособности.

  3. Повышенная отказоустойчивость, так как «зависший» сервис может быть перезапущен без перезагрузки системы.

Архитектуры операционных систем реального времени

Классы ОСРВ

1-й класс: исполнительные ОСРВ. Это программы для программируемых микропроцессоров, встраиваемых в различные устройства, очень небольшие и обычно написаны на языке низкого уровня типа ассемблера. Признаки систем этого типа – различные платформы для систем разработки и исполнения. Приложение реального времени разрабатывается на hostкомпьютере (компьютере системы разработки), затем компонуется с ядром и загружается в целевую систему для исполнения. Системы этого типа обладают рядом достоинств, среди которых главное – скорость и реактивность системы. Главная причина высокой реактивности систем этого типа – наличие только нитей (потоков) и, следовательно, маленькое время переключения контекста между ними. Недостатки: зависание всей системы при зависании нити, проблемы с динамической подгрузкой новых приложений.

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

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

Одна из особенностей систем этого класса – высокая степень масштабируемости. На базе этих ОС можно построить как компактные системы реального времени, так и большие системы серверного класса.

3-й класс: ядро системы реального времени и инструментальная среда. Этот класс систем обладает многими чертами ОС с полным сервисом. Разработка ведётся в инструментальной среде, а исполнение – на целевых системах. Этот тип систем обеспечивает гораздо более высокий уровень сервиса для разработчика прикладной программы. Часто доступно параллельное выполнение программ.

4-й класс: ОС с полным сервисом. Такие ОС могут быть применены для любых приложений реального времени. Разработка и исполнение прикладных программ ведутся в рамках одной и той же системы.

SCADA-системы. Функции требования

SCADA(Supervisory Control And Data Acquisition,Диспетчерское управление и сбор данных) — программный пакет, предназначенный для разработки или обеспечения работы в реальном времени систем сбора, обработки, отображения и архивирования информации об объекте мониторинга или управления.

SCADA-системы используются во всех отраслях хозяйства, где требуется обеспечивать операторский контроль за технологическими процессами в реальном времени. Данное программное обеспечение устанавливается на компьютеры и, для связи с объектом, использует драйверы ввода-вывода или OРС/DDE серверы. Программный код может быть как написан на языке программирования (например наC++), так и сгенерирован в среде проектирования.

Иногда SCADA-системы комплектуются дополнительным ПО для программирования промышленных контроллеров. Такие SCADA-системы называются интегрированными и к ним добавляют термин SoftLogic.

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

Значение термина SCADA претерпело изменения вместе с развитием технологий автоматизации и управления технологическими процессами. В 80-е годы под SCADA-системами чаще понимали программно-аппаратные комплексы сбора данных реального времени. С 90-х годов термин SCADA больше используется для обозначения только программной части человеко-машинного интерфейсаАСУ ТП.

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

К SCADA-системам предъявляются особые требования [30, 35]:

- соответствие нормативам "реального времени" (в т.ч. и "жесткого реального времени");

- способность адаптироваться как к изменениям параметров среды в темпе с этими изменениями, так и к условиям работы информационно-управляющего комплекса;

- способность работать в течение всего гарантийного срока без обслуживания (бесперебойная работа годами);

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

SCADA-системы решают следующие задачи

Обмен данными с  промышленными контроллерами и платами ввода/вывода в реальном времени через драйверы.

  • Обработка информации в реальном времени.

  • Логическое управление.

  • Отображение информации на экране монитора в удобной и понятной для человека форме.

  • Ведение базы данных реального времени с технологической информацией.

  • Аварийная сигнализация и управление тревожными сообщениями.

  • Подготовка и генерирование отчетов о ходе технологического процесса.

  • Осуществление сетевого взаимодействия между SCADA ПК.

  • Обеспечение связи с внешними приложениями (СУБД, электронные таблицы, текстовые процессоры и т. д.).

Для решения этих задач SCADA-система комплектуется следующими подсистемами:

  • Драйверы или серверы ввода-вывода– программы, обеспечивающие связь SCADA с промышленными контроллерами, счётчиками, АЦП и другими устройствами ввода-вывода информации.

  • Система реального времени– программа, обеспечивающая обработку данных в пределах заданного временного цикла с учетом приоритетов.

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

  • Система логического управления– программа, обеспечивающая исполнение пользовательских программ логического управления в SCADA-системе. Набор редакторов для их разработки.

  • База данных реального времени– программа, обеспечивающая сохранение истории процесса в режиме реального времени.

  • Система управления тревогами– программа, обеспечивающая автоматический контроль технологических событий, отнесение их к категории нормальных, предупреждающих или аварийных, а также обработку событий оператором или компьютером.

  • Генератор отчетов– программа, обеспечивающая создание пользовательских отчетов о технологических событиях. Набор редакторов для их разработки.

  • Внешние интерфейсы– стандартные интерфейсы обмена данными между SCADA и другими приложениями. Обычно OPC, DDE, ODBC, DLL и т. д.

Компоненты, подсистемы и общая структура SCADA-системы.

Т.о. SCADA –пакет включает в себя три компонента:

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

  2. Среда исполнения– среда, в которой выполняется разработанное программное обеспечение.

  3. Сервера ввода/выводаобеспечивают взаимодействие с различными промышленными контроллерами (PLC).

Иногда SCADA-системы комплектуются дополнительным ПО для программирования промышленных контроллеров. Такие SCADA-системы называются интегрированными, и к ним добавляют термин SoftLogiс.

Все современные SCADA-системы включают три основных структурных компонента (см. рис. 2):

  1. Remote Terminal Unit (RTU)– удаленный терминал, осуществляющий обработку задачи (управление) в режиме реального времени. Спектр его воплощений широк от примитивных датчиков, осуществляющих съем информации с объекта, до специализированных многопроцессорных отказоустойчивых вычислительных комплексов, осуществляющих обработку информации и управление в режиме жесткого реального времени. Конкретная его реализация определяется конкретным применением. Использование устройств низкоуровневой обработки информации позволяет снизить требования к пропускной способности каналов связи с центральным диспетчерским пунктом.

  2. Master Terminal Unit (MTU),Master Station (MS)– диспетчерский пункт управления (главный терминал). Осуществляет обработку данных и управление высокого уровня, как правило, в режиме мягкого реального времени. Одной из основных функцийMTUявляется обеспечение интерфейса между человеком-оператором и системой (HMI, MMI). В зависимости от конкретной системыMTUможет быть реализован в самом разнообразном виде от одиночного компьютера с дополнительными устройствами подключения к каналам связи до больших вычислительных систем (мэйнфреймов) и/или объединенных в локальную сеть рабочих станций и серверов. Как правило, и при построенииMTUиспользуются различные методы повышения надежности и безопасности работы системы.

  3. Communication System (CS)коммуникационная система (каналы связи), необходима для передачи данных с удаленных точек (объектов, терминалов) на центральный интерфейс оператора-диспетчера и передачи сигналов управления наRTU(или удаленный объект в зависимости от конкретного исполнения системы).

Схема интеграции SCADA –системы в комплексные системы управления.

Одной из основных особенностей современных систем автоматизации является высокая степень интеграции этих систем. В любой из них могут быть задействованы объекты управления, исполнительные механизмы, аппаратура, регистрирующая и обрабатывающая информацию, рабочие места операторов, серверы баз данных и т.д. Очевидно, что для эффективного функционирования в этой разнородной среде SCADA-система должна обеспечивать высокий уровень сетевого сервиса. Желательно, чтобы она поддерживала работу в стандартных сетевых средах (ARCNET, ETHERNET и т.д.) с использованием стандартных протоколов (NETBIOS, TCP/IP и др.), а также обеспечивала поддержку наиболее популярных сетевых стандартов из класса промышленных интерфейсов (PROFIBUS, CANBUS, LON, MODBUS и т.д.) Обобщенная схема подобной системы приведена на рис.2

Рис. 1. Схема интеграции SCADA-приложений в комплексные системы управления

Устройства счета осей

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

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

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

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

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

В рассматриваемой конструкции индукционного электромагнитного путевого датчика переменное магнитное поле, создаваемое передающей катушкой W1 (рисунок 1.3), пересекает витки приемной катушки W2, расположенной на другой стороне рельса, и генерирует в ней ЭДС выходного сигнала [2].

Форма и расположение обеих катушек и их ферритовых сердечников образуют два магнитных потока Ф1 и Ф2, проходящих через первичный преобразователь (обмотку W2) в противоположных направлениях. При отсутствии колеса преобладает поток Ф1, который и индуктирует выходной сигнал в виде переменного напряжения Uвых.

Если между катушками датчика проходит колесо, то его металлическая масса изменяет направление и действует как экран для потока Ф1, который уменьшается в катушке W2. Разность эдс в приемной катушке, индуктируемых потоками Ф1 и Ф2, снижается до нуля, это и является сигналом счета оси, выдаваемого точечным путевым датчиком.