- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
- •230400 Информационные системы и технологии
- •Содержание
- •Введение
- •Основные понятия
- •1.1 Понятие операционной системы реального времени
- •1.2 Классификация осрв
- •2. Языковые средства для создания приложений
- •2.1 Языки программирования плк
- •2.2 Языки реального времени
- •3. Пример проектирования и реализации на базе микрокомпьютера
- •3.1 Постановка задачи
- •3.2 Общее описание системы
- •3.3 Выбор частоты опроса датчика биений
- •3.4 Алгоритмы и методы обработки данных
- •3.5 Классификация сигналов
- •3.6 Первичная обработка данных
- •3.7 Оптимизация циклических расчетных алгоритмов
- •3.8 Алгоритмы сбора данных и управления
- •4. Примеры ос реального времени
- •4.2 TnKernel
- •4.3 ChorusOs
- •Заключение
- •Список использованных источников
1.2 Классификация осрв
Принято различать системы мягкого (Soft) и жесткого (Hard) реального времени. В системах жесткого реального времени неспособность обеспечить реакцию на какие-либо события в заданное время ведет к отказам и невозможности выполнения поставленной задачи. В большинстве русскоязычной литературы такие системы называют системами с детерминированным временем. При практическом применении время реакции должно быть минимальным. Системами мягкого реального времени называются системы, не попадающие под определение «жесткие». Системы мягкого реального времени могут не успевать решать задачу, но это не приводит к отказу системы в целом.
В системах реального времени необходимо введение некоторого директивного срока (в англоязычной литературе – Deadline), до истечения которого задача должна обязательно (для систем мягкого реального времени – желательно) выполниться. Этот директивный срок используется планировщиком задач как для назначения приоритета задачи при ее запуске, так и при выборе задачи на выполнение.
2. Языковые средства для создания приложений
Задачи РВ решаются при помощи разбиения на сравнительно небольшое множество типовых подзадач, таких как: опрос источников данных, обработка данных средствами типовых алгоритмов, накопление собранных данных и результатов обработки, визуализация собранных данных и результатов обработки, передача собранных данных и результатов обработки, диалоговое взаимодействие с оператором и т. п. Все эти задачи целесообразно решать на основе стандартизации и унификации языков программирования, алгоритмов и т. п. Рассмотрим ряд типовых решений, в которых нам помогут языки программирования ПЛК и языки реального времени.
2.1 Языки программирования плк
ПЛК — программируемый логический контроллер — электронная составляющая промышленного контроллера, специализированного (компьютеризированного) устройства, используемого для автоматизации технологических процессов. В качестве основного режима работы ПЛК выступает его длительное автономное использование, зачастую в неблагоприятных условиях окружающей среды, без серьёзного обслуживания и практически без вмешательства человека.
Международный стандарт IEC 1131-3 описывает семантику и синтаксис пяти специализированных языков программирования ПЛК: SFC, LD, FBD, ST и IL. Применением этих языков обеспечивается легкая переносимость реализационных решений с одной платформы на другую.
SFC (Sequential Function Chart) – высокоуровневый графический язык, используемый для написания алгоритма в виде набора связанных пар шагов и переходов (см. рис. 1).
Рисунок 1 – Язык SFC
LD (Ladder Diagram) – графический язык программирования для описания алгоритмов в виде множества релейных схем, в которых логические и вычислительные операции представлены в виде множества «шин», «контактов» и «катушек» (см. рис. 2).
Рисунок 2 – Язык LD
FBD (Functional Block Diagram) – в этом графическом языке используются функциональные блоки – элементы типа " логическое И", "логическое ИЛИ", блоки сравнения, сложения и вычитания, и прочие элементы, соединенные линиями (см. рис. 3).
Рисунок 3 – Язык FBD
ST (Structured Text) – текстовый высокоуровневый язык общего назначения, по синтаксису сходный с языков Pascal (см. рис. 4).
Рисунок 4 – Язык ST
IL (Instruction List) – текстовый язык низкого уровня, похожий на язык Ассемблера (см. рис. 5).
Рисунок 5 – Язык IL
Написание, отладка и сборка программ производится на ПЭВМ в операционной системе, имеющей развитые графические средства (например, Windows или QNX), а затем результат (подготовленный к работе программный модуль) передается на ПЛК, не имеющий ни клавиатуры, ни монитора, через один из стандартных интерфейсов, например, через RS-232. Подобная технология называется кросс-платформенной технологией (или просто «кросс-технологией»).
