Сосонкин В.Л. 2005 Системы числового программного управления (841803), страница 12
Текст из файла (страница 12)
34 представлены многоуровневая структура Windows NT с RTXи размещение основных потоков системы управления. Внизу находитсяуровень аппаратной абстракции реального времени (HAL), где реализованы быстродействующие часы и таймеры, механизм разграничения прерываний между RTX и Windows NT. Подсистема реального времени RTSSвыполнена в виде драйвера, работает на уровне ядра Windows NT и обеспечивает основные функции и управление ресурсами RTX.
Эта подсистемаиспользует сервисные возможности HAL реального времени и Windows NTдля работы с быстрыми часами и таймерами и для обслуживания механизма прерывания. Встроенный в RTSS менеджер потоков (thread manager) ипланировщик, основанные на фиксированной системе приоритетов, управляют прикладными задачами [26, 27].Подсистема RTSS обеспечивает интерфейс между процессами RTX иWindows NT в реальном времени с помощью специального сервисного механизма IPC (Inter Process Communication).Глава 2.
Общие принципы построения систем ЧПУ—1167.Win32 процессы | ' Win32 и RTAPI процессы'МашинноевремяМягкое реальноевремяRTAPI процессы I'Жесткоереальное времяWin32 _ J L . Win32 RTAPI±Ядро Windows NTRTAPIRTSS±±HAL реального времениРис. 34. Основные потоки системы управления с использованиемWindows NT и RTСледует отметить, что RTX полностью соответствует той концепции фирмы Microsoft, которая допускает изменение уровня HAL без изменения ядраоперационной системы. При этом расширение функциональностей уровняаппаратной абстракции осуществляется путем добавления драйверов.В системе работают обычный прикладной интерфейса Win32 дляWindows NT (предусмотренный для машинного времени), а также дополнительные прикладные интерфейсы реального времени RTAPI (Real TimeApplication Interface) и Win32 RT (Real Time).
Дополнительные прикладные интерфейсы обеспечивают два режима реального времени: «жесткий»и «мягкий». Это позволяет оптимизировать вычислительные ресурсы системы управления, разделив ее функциональные задачи на три группы:• в режиме жесткого реального времени решаются критические задачи (интерполяция кадров управляющей программы, ввод-вывод и т.д.), реализованные в процессе RT-сервер (рис. 34);• в режиме мягкого реального времени решаются задачи, непосредственно связанные с задачами реального времени (например, интерпретация кадра управляющей программы); они реализованы в процессе «терминал» (рис. 34).
В отличие от жесткого времени здесь допустимы задержки68В.Л. Сосонкин, Г.М. Мартинов. Системы числового программного управленияИнтерпретаторуправляющихпрограммПрикладнаяcall-backфункцияТаймерчАлгоритмпланирования(Диспетчер)ИнтерполяторВвод/вывод\Коммуникационная средаWindow NT и RTSSФоновый процессИнтерфейсоператора (MMI)Рис. 35. Стратегия диспетчеризации задач реального временив системе управленияпотока из-за свопинга (подкачка), обращения к жесткому диску, прерыванияи т.д.;• в режиме машинного времени работают остальные стандартные прикладные модули системы управления (редактор управляющих программ,встроенная САМ-система, система моделирования процесса обработки и т.д.).Стратегия диспетчеризации задач в системе управления отображена нарис.
35, где стрелками указана последовательность событий. Первоначальнов Windows NT с подсистемой реального времени (RTSS) создается таймер(timer). По истечении кванта времени стандартный механизм генерируетпрерывание, которое обрабатывается прикладной call-back функцией илитак называемой функцией обратного вызова.
Функция реализует алгоритмпланирования (диспетчеризации) задач интерпретаций, интерполяции, ввода-вывода, коммуникации и интерфейса оператора MMI. В соответствии собозначенными для системы управления режимами в жестком реальномвремени выполняются задачи диспетчеризации, интерполяции, ввода-вывода, коммуникации. В мягком реальном времени выполняются задачиинтерпретации и обновления экранов интерфейса с оператором, а в фоновом процессе - задачи интерфейса с оператором.2.2.6.
Принцип разбиения потоков (threads)в системе управления и схема их диспетчеризацииВ системах управления целесообразно придерживаться традиционнойдля систем реального времени схемы «один процесс - много потоковГлава 2. Общие принципы построения систем ЧПУgg(threads)». Схема имеет такие важные достоинства, как быстродействие ивысокая реактивность. Высокая реактивность потоков объясняется меньшим временем переключения их контекстов по сравнению с процессами.Потоки используют общее адресное пространство процесса, а процессынуждаются в разделяемой памяти.Согласно принятым представлениям о режимах времени в системе управления, выделим три группы потоков:• жесткого реального времени, работающие в процессе (или в процессах, в зависимости от архитектурного решения) реального времени это так называемые RTSS-процессы;• мягкого реального времени, функционирующие в Win32- и RTAPIпроцессах;• машинного времени, работающие в стандартных Win32-np04eccax.Обмен данными и синхронизация процессов машинного времени и мягкого реального времени традиционны, это осуществляется на базе общейплатформы Win32.
Обмен данными между процессами мягкого и жесткого реального времени осуществляется на базе разделяемой памяти (sharedmemory) - механизма, предоставляемого со стороны RTX.Процесс RTSS на рис. 36 включает в себя набор потоков, решающихкритические задачи в системе управления. Поток диспетчера по сути является call-back функцией таймера (см.
рис. 35), в которой реализован планировщик процессов. Планировщик с помощью мютексов или семафоровзапускает или останавливает тот или иной поток.Коммуникационную среду разделим на два потока, один из которыхфункционирует в режиме жесткого реального времени (поток коммуникационной среды реального времени), а другой работает в режиме мягкого реального времени (поток коммуникационной среды Win32).
Задачасостоит в передаче данных как между потоками внутри процесса, так имежду процессами. Передача данных между потоками коммуникационной среды реального времени и потоками коммуникационной средыWin32, как уже отмечалось, осуществляется посредством разделяемойпамяти.Задача интерполяции реализуется потоком Look Ahead, осуществляющим опережающий просмотр и коррекцию кадров управляющей программы, потоком грубой интерполяции, вызываемым обычно с частотой 50 Гц,и потоком тонкой интерполяции, вызываемым обычно с частотой 1-2 мс,осуществляющим сплайновую интерполяция между точками, рассчитанными в рамках грубой интерполяции.
Частота вызова интерполяторов параметрически настраивается в планировщике (в потоке диспетчера реального времени). Поток программируемого контроллера решает задачу управления электроавтоматикой и задачу ввода-вывода.70В.Л. Сосонкин, Г.М. Мартинов. Системы числового программного управленияо. соо mСооixжSZZсSоПотокиинтерполяцииПоток программируемогоконтроллера1с а.Тонкая интерполяцияXкГрубая интерполяцияФLook Aheadерпретатонтерф йса с опер атороменные отоки моделироуправг ющих прог заммПоток >едактора*О 5Xяо.Nr>ионной ср еды Win11Процессы реального времени (RTSS)Жесткое реальное времяПоток коммуникационнойсреды реального времениWin32 и RTAPI процессыМягкое реальное времяотоки групгювыхетаторовWin32 процессыМашинное времяПоток диспетчера реальноговремениРис.
36. Потоки системы управления: Look Ahead - просмотр опережающийкадров управляющей программыВ процессе мягкого реального времени, помимо потока коммуникационной среды Win32 и потока интерпретации кадров управляющей программы, работает поток интерфейса с оператором. Поток интерпретатора запускает групповые интерпретаторы как порожденные потоки.
В потоке интерфейса с оператором отображаются такие данные процесса реальноговремени, как текущие координаты, скорость подачи, состояние процесса,режимы системы управления. Отсюда же отправляются управляющие команды процессу реального времени: запуск строки ручного ввода, выборуправляющей программы, «стоп» и т.д.Процессы машинного времени-эпго классические Windows-процессы. Примером может послужить редактор управляющих программ,который запускаетв качестве порожденных потоки моделирования управляющих программ.ЗаключениеНаиболее перспективным подходом при разработке системы управления реального времени в архитектуре Windows NT является использование расширения реального времени. Сложное программное обеспечениесистемы управления оптимизируется путем разделения выполнения задачв режимах жесткого и мягкого реального времени, а также в фоновом процессе.
При этом возникает возможность организации простой и надежнойсистемы диспетчеризации.Глава 2. Общие принципы построения систем ЧПУ712.3. Проблемы управления электроавтоматикойРассмотрены варианты управления электроавтоматикой мехатронных систем с помощью программируемых контроллеров и программно-реализованных (виртуальных) контроллеров типаSoftPLC. Рассмотрена общая организация управления типаSoftPLC: система понятий в соответствии со стандартом IEC6133-3; альтернативные структуры клиентской части проектасистемы управления; работа серверной части программы управления; объектный подход при управлении электроавтоматикой;особенности управления электроавтоматикой станков с ЧПУ.Отмечены две особенности управления электроавтоматикойстанков с ЧПУ: задачи SoftPLC квазипараллелъны задачам ЧПУи выполняются в одной и той же исполнительной среде; циклыуправления инициируются управляющей программой ЧПУ.2.3.1.
Классификация систем управленияэлектроавтоматикойНа рис. 37 показаны варианты программируемых контроллеров. Тип 1представляет собой традиционное решение, в то время как типы 2-4 с различной степенью глубины используют персональный компьютер. Так, дляТип 1(Обычныйконтроллер)Тип 2ТипЗТип 4ПерсональныйкомпьютерВспомогательныйпроцессорКоммуникационный интерфейсИнтерфейс| Сканер вх.-вых.ВнешнийконтроллерОбъектОбъектОбъектОбъектРис.
37. Классификация программируемых контроллеров72В.Л. Сосонкин, Г.М. Мартинов. Системы числового программного управлениятипа 2 персональный компьютер служит только средством организацииинтерфейса пользователя. В типе 3 привлекается дополнительный процессор для выполнения программы управления электроавтоматикой. Тип4 использует вычислительную мощность персонального компьютера какдля построения интерфейса пользователя, так и для выполнения всехуправляющих функций. Этот тип относится к наиболее современному,перспективному и наиболее гибкому решению, которое получило наименование «программно-реализованный (виртуальный) контроллер»(SoftPLC).














