Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 5 АУ ГАП.doc
Скачиваний:
5
Добавлен:
15.08.2019
Размер:
349.18 Кб
Скачать

Проблемы выбора операционной системы реального времени для управления технологическими процессами

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

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

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

Для задач вводится понятие уровня приоритета. Задачи ЧПУ разбиваются на ряд прикладных процессов. Во время работы ОСРВ процесс с более высоким приоритетом способен прервать выполнение текущего процесса. Интуитивно понятно, что процесс, возникший, к примеру, во время аварийной ситуации во время обработки, должен иметь более высокий приоритет, нежели обычно выполняющийся процесс.

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

Должно быть известно поведение ОСРВ.

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

К используемым системам для вышеупомянутых целей относится ОС QNX. Это полнофункциональная ОС эффективно использующая ресурсы компьютера. Данная система обладает всеми преимуществами Unix-подобных систем, кроме того, положительно решается вопрос со стандартизацией. Дело в том, что сейчас применимым в отношении ОСРВ стандартом является POSIX(Portable Operating System Interface of Computing Enviroment), в частности его расширение POSIX.1b. Основаный на Unix, POSIX обеспечивает переносимость приложений из одной ОС в другую, не тратя огромных усилий. Кроме всего прочего немаловажным фактором при выборе ОС является ее низкая стоимость.

Выбор архитектуры базы данных

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

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

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

Интерфейс серверной части определен и фиксирован. Поэтому возможно создание новых клиентских частей существующей системы.

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

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

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

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

Если система реализована на основе стандартного пакета RPC, она может быть легко перенесена в любую открытую среду.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]