Системное программное обеспечение
Системное программное обеспечениесостоит из операционной системы реального времени и модулей тестовой самодиагностики. Операционная система (ОС) реального времени обеспечивает взаимодействие аппаратуры и функциональных программ ЧПУ, а также определяет стандартные способы взаимодействия между программами, выполняемыми в реальном масштабе времени. Программный комплекс строится по модульному типу. Основные модули системы: - Программа управления загрузкой УП, в которую входят подпрограммы ввода и расшифровки кадра; - Программа управления исполнительными механизмами станка, в которую входят подпрограмма управления координатными перемещениями и подпрограмма выполнения технологических команд; - Программа – диспетчер, организующая совместную согласованную работу модулей системы; Программа управления координатными перемещениями состоит из блоков интерполяции, задания скорости, управления быстрым ходом, а эти блоки, в свою очередь, включают следующие модули: программу подготовки данных; организующую программу-диспетчер - Драйверы – стандартные операторы для работы с внешними устройствами электроавтоматики. Оперативная система ЭВМ из отдельных подпрограмм, в зависимости от характера обработки, строит программу, которая воспроизводится при обработке заготовки. По отношению к реальному времени задачи, включенные в программное обеспечение, можно разделить на три группы. - задачи реального времени. - фоновые задачи. - задачи, не зависящие от времени. К задачам реального времени относятся: - управление электроприводами станка - обслуживание электроавтоматики станка (“стоп подачи”, “стоп шпинделя”, “охлаждение включить“ и пр.); - обеспечение работы в ручном режиме; - расчет кодовых приращений управления приводами и анализ информации поступающей с датчиков обратной связи. Поскольку основная задача УЧПУ – управление электроприводами станка, которые работают в реальном масштабе времени, необходимо согласование выполнения программ с текущим временем. Во времени организует работу программного обеспечения и всего УЧПУ таймер – внутренние часы системы управления. По его временным интервалам работают все блоки УЧПУ и микроЭВМ. Конструктивно таймер представляет собой генератор, модулирующий импульсы с большой точностью по частоте. Через каждые 10-15мкс (в зависимости от типа УЧПУ) генерируется импульс большей амплитуды – таймерная отметка (рис.8). По времени to, между двумя таймерными отметками, определенному как такт работы микроЭВМ, соотносится выполнение всех программных алгоритмов ЭВМ и УЧПУ в целом. Рисунок 8 - Импульсы генератора с таймерными отметками Особенность ЭВМ – высокое быстродействие. Это приводит к тому, что при решении одной задачи управления (например, обслуживания привода по одной координате), временные ресурсы ЭВМ не будут целиком использоваться (т. е. имеется возможность организовать управление по двум и более координатам). Поэтому возникает проблема приоритетности задач управления и работы программных модулей программного обеспечения, обслуживающих эти задачи. Механизм взаимодействия программ во времени и между собой определяется с помощью специальной программы программного обеспечения – “диспетчера”, в которой управление задачами рассматривается с точки зрения приоритетов и отношению к реальному времени. Диспетчер передает процессорное время активному прерыванию в соответствии и приоритетом задачи (программы). Эта программа выполняется либо до полного окончания, либо появления прерывания задачей с более высоким приоритетом, которое отбирает у предыдущей задачи право управлять системой. Задержанная программа возобновляется только после окончания отработки задачи с более высоким приоритетом. Все программы обеспечивающие решение задач реального времени, выполняются за один такт работы микро-ЭВМ to. На время выполнения этих задач вводится приоритет процессора, что приводит к игнорированию всех прерываний, за исключением аварийно–блокирующих ситуаций. Рисунок 9 - Распределение времени работы программ программного обеспечения К фоновым задачам относятся: - Расчет величин необходимых для перемещения рабочих органов по заданной в УП траектории. Это основная задача. - Организация режимов “Ввод УП”, “Коррекция”, “Редактирование УП”, «Диалог с оператором». Программы фоновых задач, выполняются в оставшуюся часть такта микроЭВМ, после завершения работы программ реального времени. Если фоновая задача не успевает закончится до прихода таймерной отметки (т.е. до окончания такта), она снимается с выполнения, а полученные данные записываются в стек (stec). Вычисления по этой задаче возобновятся в следующем такте работы микроЭВМ. Следует отметить особенность работы систем ЧПУ. Например, электропривод станка обрабатывает информацию кадра №50 УП, а программа фоновых задач в это время обрабатывает данные кадра №60. Если в кадре №60 допущена ошибка (например, неправильно подсчитаны орты векторов кругового перемещения), то произойдет останов станка, а на дисплее появится стандартное сообщение: “Ошибка в УП”. Следовательно, поиск ошибки необходимо проводить не только в кадре УП, который в данный момент был в работе, но и во всей остальной части программы. К группе задач, не зависящих от реального времени относятся программытестов самодиагностики. Э то пакет программ, предназначенных для контроля состояния системы ЧПУ и всех узлов станка. Тест-программа отрабатывается при каждом включении станка и в случае исправности даёт сигнал готовности к работе. Задача начального запуска сводится к подготовке к работе УЧПУ, суть которой состоит в подготовке внешних устройств, проверке их работоспособности, очистка памяти – ОЗУ и запись в ее определенные области с ПЗУ специальных данных, запуск синхрогенератора – таймера. При работе станка тест-программа продолжает отрабатываться в фоновом режиме, не мешая выполнению основной управляющей программы. В случае обнаружения неисправности на табло индикации высвечивается её код, по которому определяется место и причина неисправности. Механизм взаимодействия программ можно проиллюстрировать следующим примером. Программа реального времени (РВ), обеспечивающая работу команды “инструмент №1 поставить в рабочую позицию”, кадра УП №10 заняла 5 мкс – 1/3 такта микроЭВМ (рис.9). Оставшуюся часть такта – 10мкс, ЭВМ занимается фоновой программой (ФП) расчета величин необходимых для кругового перемещения, запрограммированного в кадре УП №15. Расчет не успевает закончится до окончания такта, поэтому промежуточные данные записываются в стек (stec). Приход таймерной отметки, опять вызывает инициализацию программы реального времени в течение 5 мкс. Следующие 5 мкс продолжается расчет фоновой программы с учетом данных, взятых со стека. Оставшуюся часть такта выполняется программа, не зависящая от реального времени – тестирование (test) системы ЧПУ.
|