13. Режим реального времени в системах управления (Лекции по дисциплине "Управляющие ЭВМ и комплексы")
Описание файла
PDF-файл из архива "Лекции по дисциплине "Управляющие ЭВМ и комплексы"", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
13. Режим реального времени (РВ) в системах управленияСистема реального времени (СРВ) - это система, связанная с реальным объектом или процессом, вкоторой процесс обработки данных происходит настолько быстро, что ее промежуточные результаты могут бытьиспользованы для управления этим объектом. Она включает в себя необходимые аппаратные средства, операционную систему (ОС) и прикладное программное обеспечение (ПО).Работа системы в режиме реального времени (РВ) означает гарантированную своевременность выполнения каких-либо действий. Такая гарантия нужна, когда задержка при получении результата вычислений можетпривести к катастрофическим последствиям.
Таким образом, СРВ – это не обязательно только быстрая система,гораздо важнее гарантировать время выполнения. Поэтому архитектура и все поведение СРВ нацелены надостижение таких основных целей:1) как можно быстрее отреагировать на событие;2) критичные вычисления всегда должны выполняться не дольше, чем это допустимо для корректногофункционирования ОУ.Главная особенность СРВ - необходимость использования специализированных алгоритмических, программных и аппаратных решений.Действительно, характерным для СРВ является применение:а) промышленных компьютеров, программируемых контроллеров, микроконтроллеров и другихинформа-ционновычислительных средств с архитектурой, оптимизированной для использования в сфереавтоматизации;б) операционных систем реального времени (ОС РВ), таких как QNX, OS-9, VxWorks и др.;в) SCADA-пакетов и инструментальных сред типа LabVIEW;г) «языков реального времени», к которым относят языки, обладающие встроенными возможностямимногозадачного программирования, например Modula-2 и Ada;д) оборудования УСО, обладающего предсказуемыми временными характеристиками (мультиплексоров,ЦАП и АЦП и пр.);е) «индустриальных СУБД»;ж) «промышленных» шин, интерфейсов и протоколов для построения распределенных автоматизированныхсистем (RS-485, RS-422, RS-232, Modbus, Profibus, CANBus, VMEbus, IndustrialEthernet и т.
п.);з) специальных алгоритмов (работающих в РВ).Как было отмечено выше, в СРВ в обязательном порядке учитываются ограничения на временны́ е характеристики ее функционирования. Если нарушение этих ограничений равнозначно отказу системы, то такойрежим работы системы называют жёстким реальным временем; если же это приводит только к снижениюкачества работы системы, то это мягкое реальное время.Как правило, СРВ должна:а) либо воздействовать на внешние процессы в заданные моменты времени;б) либо реагировать на них в течение заданных интервалов времени.Примеры систем жесткого времени:а) бортовые системы управления;б) системы аварийной защиты;в) регистраторы аварийных событий;г) системы безопасности, контроля и управления;и др.Правильная, но запоздалая реакция системы на внешнее событие может быть гибельной в системахбезопасности атомных станций, системах управления воздушными транспортными потоками и т.д.Системы мягкого реального времени могут не успевать решать задачу, но это не приводит к отказу системы в целом.
Отступление от заданных временных параметров не приводит к нарушению работы системы.Основными требованиями, предъявляемыми к СРВ, обычно являются:- требования по времени реакции (предсказуемость) - гарантировать время выполнения задач;- возможность параллельного выполнения нескольких задач, т.е. многозадачность;- предсказуемость или детерминированность поведения;- важно максимальное время отклика на событие, а не среднее;- особые требования в вопросах безопасности и надежности (безотказная работа длительное время).1Операционная система реального времени (ОС РВ)Важно помнить, что вычислитель (компьютер, программируемый контроллер и др.) вместе с управляющей им операционной системой (ОС) является одним из основных элементов СРВ.ОС РВ — системное программное обеспечение (ПО) особого типа, которое используется для создания иуправления СРВ.
Она должна:- предоставлять расширенные возможности по работе с прерываниями,- позволять выполнять все требуемые операции внутри обработчика прерывания;- устанавливать приоритет прерываний;- аппаратно блокировать неиспользуемые прерывания.Правильное программирование приоритетов прерываний позволяет свести к минимуму возможныепотери информации или исключить их полностью.Прикладное программное обеспечение (ПО)Особенности проектирования ПО для аппаратного обеспечения (в частности, УВВ/УСО) заключается в повышенных требованиях к быстродействию ПО и, в ряде случаев, в необходимости получения программы минимального размера. Для этого приходится выбирать подходящие языки программирования, а также использоватьспециальные методы и алгоритмы.
Наиболее очевидный выбор – ассемблер. Действительно, программа наассемблере самая быстрая, а код – самый короткий. Однако трудоемкость программирования на нем и требования к квалификации программиста несравненно выше, чем для языков высокого уровня. Ассемблер незаменимв тех случаях, когда важен каждый байт (резидентные программы; программы, записываемые в ПЗУ) и каждаямикросекунда (драйверы некоторых быстрых устройств).
В то же время некоторые реализации языков программирования высокого уровня (Бейсик, Си, Паскаль и др.) имеют достаточно эффективные средства программирования УСО. Однако, главное, чтобы обеспечивались такие возможности, как:- программный доступ к портам УВВ и к памяти;- обработка прерываний;- битовые логические операции;- управление системным таймером и др.Механизм прерыванийЭффективность систем управления значительно повышается, когда имеется механизм, позволяющийизменять ход программы на основании сигналов, поступающих в микропроцессор (МП) от внешних устройств(ВУ): датчиков, исполнительных механизмов и т.д., т.е.
когда в системе возможна организация прерыванийосновной (рабочей) программы. Этот механизм позволяет учитывать то обстоятельство, что процессы, протекающие в ОУ и связанные с изменением состояния ОУ во времени (с его динамикой), являются асинхронными ипараллельными по отношению к процессам в логико-вычислительных средствах. В конечном итоге это воплощается при организации процессов управления – их необходимо реализовать в реальном масштабе времени. Вэтом случае для сопряжения логико-вычислительных средств с ОУ необходимы соответствующие программноаппаратные средства.При организации ввода-вывода (ВВ) по прерываниям необходимо тщательно проанализировать временные соотношения, определяемые динамикой ОУ и обработкой прерываний, а также соблюдать специальныеправила проектирования систем с прерываниями:1. Выполнение прерванной программы должно возобновляться таким образом, как если бы прерываниявообще не было.
Поэтому в подпрограмме обработки прерываний (ПРОП) следует предусмотреть временноезапоминание содержимого всех внутренних регистров, привлекаемых для обмена данными.2. Для временного запоминания используется стек, под который следует выделить достаточную областьпамяти. Емкость стека играет важную роль в системах с многоуровневыми прерываниями.3.
Большое значение имеет правильное присвоение приоритетов ВУ. Наивысший присваивается критическим прерываниям типа аварийного выключения питания, достижения параметрами предельных значений и др.4. В режимах управления системой с пульта оператора пульт должен иметь достаточно высокий приоритет, чтобы оператор не терял связь с системой.5. При анализе системы на наиболее неблагоприятный режим предполагается, что запросы на прерыванияот ВУ поступают одновременно, а запросы на передачу управления следуют с максимальной частотой.6. Рекомендуется проверить последовательность обслуживания в соответствии с присвоенными приоритетами и убедиться, что запросы от ВУ с высоким приоритетом не блокируют ВУ с низким приоритетом.Каждый сигнал запроса прерывания представляет один уровень.Программируемые контроллеры прерываний (ПКП) могут обладать возможностями программногомаскирования и изменения дисциплины обслуживания прерываний.2Каскадное включение ПКП позволяет расширить систему прерываний.
При этом один ПКП являетсяведущим (основным), а другие - ведомыми (вспомогательными).При реализации одноуровневых прерываний начатое обслуживание любого ВУ не может быть прерванозапросами других ВУ, независимо от приоритета, а при многоуровневых прерываниях - запрос от ВУ с большимприоритетом может прервать ПРОП устройства с меньшим приоритетом.Алгоритм задания приоритетов устанавливается программным путем. Приоритеты, закрепленные за ВУ,могут быть изменены в процессе выполнения программы.ПКП имеет несколько уровней (линий) для подключения внешних устройств (ВУ).
В случаях, когда ПКПпредставляют собой отдельные микросхемы, возможноих каскадное подключение (на один из входов ПКПподключается еще одни ПКП).Может возникнуть одновременно несколько прерываний. Выбор одного из них для обработки осуществляется на основе приоритетов, приписанных каждому типу прерывания. Система прерываний отдает предпочтение самому высокоприоритетному, откладывая на время обработку остальных прерываний.В случае прерывания самой программы обработки прерывания говорят о вложенном прерывании.Режим специальной маски - это специальное маскирование приоритетов, которое позволяет отменитьприоритетное упорядочение обработки запросов и обработать их по мере поступления.