Главная Случайная страница


Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Автоматизированное проектирование управляющих программ

 

На современном этапе развития высоких технологий разработка подобных программ, т.е. программирование геометрических перемещений, например, инструмента, является частью более общей задачи: проектирования полного маршрутного технологического процесса. Разработка управляющих программ в коде ISO-7bit, т.е. на стандартном входном языке устройств ЧПУ, требует кропотливого отбора технологических решений, трудоемких геометрических расчетов, тщательного документирования отдельных этапов (рисунок 2.4). При этом необходима обширная справочная и вспомогательная информация, которая должна быть методически упорядочена. В центральной части рисунка показаны последовательные этапы разработки управляющей программы, в левой части – используемая информация, в правой части – система документирования отдельных этапов.

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

 

1:<управляющая программа>

 


2:<кадр>

 


3:<подготовительная функция>, <вспомогательная функция >

 

 

Рисунок 2.3 – Синтаксические диаграммы языка ISO-7bit

 

 

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

Таким образом, важнейшим компонентом структуры проектируемого технологического процесса обработки детали является операция, элементами которой, в свою очередь, служат установы, позиции, переходы и подходы. Дополнительная детализация технологического процесса (ходы, шаги) составляет уже чистую специфику ЧПУ. Так, выделение хода в составе прохода обусловлено ограничениями на способ интерполяции сложного контура, т.е. возможностями воспроизведения лишь определенных линий: прямых, окружностей, винтовых линий и др. Заметим, что каждый ход может быть построен только на основе самостоятельно интерполируемой линии.

Шаги выделяют (если это необходимо) в пределах хода: участки разгона, участки торможения, участки, принадлежащие разным квадрантам, и др.

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

На рисунке 2.4 приняты следующие обозначения: 1 – типовые технологические процессы, данные о станках ЧПУ; 2 – приспособления, инструменты; 3 – материалы, нормативы режимов резания; 4 – таблицы допусков и посадок, таблицы геометрических расчетов; 5 – инструкция по программированию; 6 – методика контроля и редактирования;
7 – маршрутная карта, чертеж детали и заготовки; 8 – операционная карта, операционный чертеж; 9 – карта наладки; 10 – технологическая карта, эскиз траектории; 11 – управляющая программа; 12 – график траектории.

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

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

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

В этой связи универсальные САП делят на две подсистемы: процессор, выполняющий расчет управляющих программ в фазовом пространстве технологического процесса, и постпроцессор, преобразующий управляющие программы в фазовое пространство конкретного станка. Каждый структурно самостоятельный станок с ЧПУ должен иметь свой постпроцессор. Разделяя процессор и постпроцессор, получаем возможность строить объектно-независимую часть САП, которая, однако, остаётся зависимой от представлений пользователя САП. Эти представления отражаются во входном языке процессора.

Стремление к стандартизации входного языка при одновременном учёте специфических представлений пользователей приводит к выделению в составе САП ещё одной подсистемы – препроцессора, который является транслятором с языка пользователя на входной язык процессора. Некоторый пакет препроцессоров может отразить любые пользовательские запросы (в том числе и в отношении диалога). Окончательная структура универсальной САП вырисовывается в виде, показанном на рисунке 2.5. Как следует из предыдущих пояснений, в специализированной САП препроцессор, процессор и постпроцессор не выделяются.

Уровень автоматизации САП определяется соотношением объемов ручного и автоматизированного решения задач из числа тех, которые были показаны ранее на рисунке 2.4. Условно различают три уровня автоматизации: низкий, средний, высокий (рисунок 2.6).

 

 

 


Рисунок 2.4 – Этапы разработки управляющей программы и используемая при этом
информация

 
 

 


Рисунок 2.4 – Этапы разработки управляющей программы и используемая
при этом информация

 

 

Для низкого уровня характерно решение на ЭВМ лишь геометрических задач по определению координат опорных точек траектории инструмента на основе заданных в исходной информации обобщенных геометрических характеристик участков траектории. При среднем уровне автоматизации на ЭВМ дополнительно решаются технологические задачи выбора последовательности переходов на основе заданных обобщенных технологических схем обработки отдельных участков заготовки.

Высокий уровень автоматизации означает решение на ЭВМ задач по оптимизации технологического процесса. В зависимости от уровня автоматизации САП исходная информация, представленная на входном языке, будет большей или меньшей по объёму.

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

Входную информацию оформляют в виде программы – последовательности операторов (предложений, инструкций). Оператор состоит из набора слов и знаков. Структура оператора построена по принципу:<Главное слово>/<Вспомогательная часть>. Если оператору сопоставлен идентификатор, то оператор приобретает вид:

<Идентификатор>=<Главное слово>/<Вспомогательная часть>.

 

 


Управляющая программа

 

Рисунок 2.5 – Структура универсальной САП

 

Теперь дадим необходимые определения. Главное слово указывает на смысл оператора или предписывает некие действия. Вспомогательная часть, записываемая справа от наклонной черты, состоит из модификаторов, идентификаторов и чисел, разделяемых запятой. Модификаторами задают типы параметров или признаки для выбора одного из нескольких возможных решений. Главные слова и модификаторы образуют словарь понятий языка. Идентификатором называют уникальное имя, используемое для обозначения части пакета с целью последующих ссылок на эту часть.

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

 

 


Рисунок 2.6 – Уровни автоматизации САП

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

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

– контур, образованный прямыми и окружностями;

– точечно-заданный контур;

– аналитически заданный контур.

Преобразование контуров состоит в зеркальном отображении, смещении контура с повторением, вращении контура с повторением, задании обратного контура, задании эквидистантного контура, сопряжении контуров, перечислении контуров.

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

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

Составляя программный пакет на входном языке САП, следуют правилам организации его горизонтальной и вертикальной структур. Под горизонтальной структурой понимают синтаксис отдельных операторов, который в общих чертах был охарактеризован. Под вертикальной структурой понимают синтаксическое построение всей программы в целом.

Вертикальная структура программного пакета на входном языке показана на рисун-
ке 2.7. В структуре можно выделить заголовок и тело программы. В теле программы узловыми являются точки A-D. Вслед за точкой D отдельные участки (A-D, B-D, C-D) могут повторяться, в том числе и многократно. Участок A-D, следующий после узловой точки D, указывает на то, что выполняется другая технологическая операция в рамках обработки данной детали (технологии). Участок B-D в теле программы, присоединенной к узловой точке D, обозначает, что выполняется другой технологический установ данной операции в рамках обработки данной детали. Повторение за узловой точкой D участка C-D свидетельствует о том, что при описании обработки используются другие геометрические объекты, технологические зоны и указания, предписания постпроцессору.

Завершив анализ принципов построения входного языка процессора, перейдём к рассмотрению языковых представлений на стыке процессора и постпроцессора. Объектная независимость процессора позволяет стандартизировать эти языковые представления в виде промежуточного языка «процессор-постпроцессор», получившего наименование CLDATA (Cutter Location Data - данные о положении инструмента). Использование стандартного языка даёт возможность унифицировать разработку постпроцессоров, обеспечить сопряжение некоторого постпроцессора с различными процессорами и некоторого процессора с различными постпроцессорами.

Подытожим функции препроцессора, процессора, постпроцессора. Препроцессор транслирует описание разрабатываемого технологического процесса обработки детали с языка пользователя на входной язык процессора. Процессор обычно содержит технологический блок, геометрический блок и блок формирования текста CLDATA. Технологический блок наиболее зависим от области применения САП, так как различные классы деталей и различные виды обработки требуют своей технологии. Например, в системе EXAPT-2 технологический блок осуществляет автоматическое разделение зоны обработки.

 


Рисунок 2.7 – Вертикальная структура программного пакета на входном языке

на последовательные переходы, расчёт оптимальных режимов резания и др.

 

Геометрический блок предназначен для построения траекторий инструментов, используемых при обработке. В круг задач блока входят: преобразование исходных описаний всех геометрических элементов в каноническую форму, расчёт всех точек и линий пересечения геометрических элементов, аппроксимация кривых для таблично заданных функций, диагностика геометрических ошибок, определение эквидистант.

Блок формирования текста CLDATA подбирает необходимые действия для работы постпроцессора. К типовым функциям постпроцессора относятся: преобразования в координатную систему станка, проверка по ограничениям станка, формирование команд с учетом дискретности станка, формирование команд, обеспечивающих автоматическую смену инструмента, назначение подачи с учетом ограничений, особенностей реализации разгонов – торможений, допустимого множества значений, назначение вспомогательных команд, назначение допустимых частот вращения шпинделя.

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

Универсальные САП построены на базе инструментальных кросс-средств, т.е. установлены на внешних по отношению к устройству ЧПУ вычислительных машинах. Наиболее перспективно использование доступных ЭВМ класса мини и микро. Подобные машины, оснащенные необходимой периферией и соответствующим математическим обеспечением, называют автоматизированными рабочими местами (АРМ) технолога.

Сегодня достаточно популярный в производстве вариант состоит в использовании САП на базе персонального компьютера, который может быть связан с устройством ЧПУ стандартным каналом связи. В этом случае разработанная управляющая программа передается в память устройства ЧПУ для окончательной отладки непосредственно на станке.

 

 


Рисунок 2.8 – Классификация автоматизированной подготовки управляющих

программ и используемых системами вычислительных средств

 

 

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

Программирование контроллеров

 

Процедура программирования программируемого контроллера (ПК) состоит в следующем. В процессе программирования используют как сам контроллер, так и внешнее программирующее устройство (программатор). В дальнейшем в режиме эксплуатации надобность в программаторе отпадает.

Программу электроавтоматики записывают в кассетное запоминающее устройство (ЗУ) типа RAM, установленное в предусмотренное для неё в ПК гнездо. Эту программу получают с помощью упомянутой специализированной инструментальной машины – программатора. Обычно программатор допускает несколько языков программирования электроавтоматики, и выбор языка осуществляется путём установки в программатор соответствующей кассеты с программным обеспечением желаемого языка.

После установки такой кассеты программатор готов к работе, и его дополнительно снаряжают кассетами ЗУ пользователя для записи программ после их отладки.

Программатор может работать в режиме «on-line» прямого подключения к ПК или в автономном режиме «off-line».

Работа в режиме прямого подключения протекает в три этапа. На первом, используя принятый язык программирования, записывают программу электроавтоматики в кассету RAM контроллера. На втором этапе контроллер подключают к объекту и отлаживают программу, вводя в неё необходимые изменения и уточнения. На третьем этапе перезаписывают скорректированную программу из памяти RAM контроллера в память EPROM программатора. После перестановки кассеты EPROM в гнездо контроллера он считается готовым к эксплуатации.

Работа программатора в автономном режиме также осуществляется в три этапа. На первом этапе программу электроавтоматики записывают в кассету RAM, установленную в самом программаторе. Далее эту кассету переносят в ПК и отлаживают. Затем отлаженную кассету возвращают в программатор и там переписывают программу электроавтоматики в память EPROM.

На заключительном этапе программирования кассету EPROM извлекают из программатора, закрепляют в контроллере, передают ПК в производство.

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

Исторически первым и до сих пор достаточно популярным языком программирования является язык релейно-контактных символов (РКC).

Язык основан на применявшейся методике создания схем электроавтоматики с жёсткими структурами (реле, контакторами, бесконтактными логическими элементами). В качестве исходного документа для программирования принимают принципиальные релейные электрические схемы как документы, привычные для электриков-конструкторов и электриков-ремонтников. Другими видами исходных документов могут быть словесное описание, тактограммы, циклограммы и т. д.

Помимо языка РКС получили признание следующие языки:

- языки ассемблерного типа;

- графические языки логических схем;

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

- языки мнемонического задания многоситуационных процессов управления с естественным логическим описанием управления (ЕСЛИ … ТО … ИНАЧЕ …), не имеющие РКС-эквивалентов;

- оригинальные проблемно-ориентированные мнемонические языки высокого уровня с элементами организации работы в реальном времени;

- процедурные языки высокого уровня общего назначения (Бейсик, Паскаль), адаптированные для программирования электроавтоматики;

- языки графического отображения текущего состояния и взаимодействия процессов программ управления (например, GRACET).

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

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

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

Пусть далее вводим (виртуальной клавишей) замыкающий контакт. Этому контакту необходимо придать адрес. Далее следует подтвердить правильность набора функциональной клавишей программатора «Ввод в память». Перемещение курсора происходит автоматически вслед за каждой очередной процедурой ввода. Выбору варианта конечного элемента предшествует смена меню виртуальных клавишей.

Широкое распространение при программировании электроавтоматики получил у нас в стране проблемно-ориентированный язык высокого уровня «ЯРУС-2». Язык позволяет программировать параллельные асинхронные процессы, развивающиеся в реальном времени.

Описание алгоритма управления на языке «ЯРУС-2» строят по блочному принципу, причем под блоками (пунктами и подпрограммами) понимают такие части алгоритма, которые по функциональным, технологическим или конструктивным соображениям удобно описывать отдельно и независимо. Каждый такой блок содержит собственные описания, а кроме того, может содержать описание связей с другими частями общего алгоритма.

Язык построен по трехуровневой схеме. На верхнем уровне находится специальный управляющий пункт, который выполняется постоянно. Второй уровень занят другими (всеми остальными) пунктами алгоритма. К третьему уровню относятся подпрограммы.

Каждый пункт имеет имя. Имя управляющего пункта П0, имена пунктов второго уровня имеет структуру П (номер, отличный от нуля).

В структуре пункта можно выделить две части. Первую часть составляют блокировки, т.е. условия, без проверки которых не может быть начато выполнение алгоритма, описанного в пункте. Блокировки имеют вид: ЕСЛИ (условие) ТО (действия). Вторая часть представляет собой описание ситуаций. Каждый фрагмент описания начинается с метки СИТ (номер), за которой следует список условных предложений вида:

 

ЕСЛИ (условие) ТО (действия) НА СИТ (номер);

ИНАЧЕ (действие) НА СИТ (номер).

 

В целом общая схема описания пункта выглядит следующим образом:

 

Пі

БП; начало описания блокировок пункта

ЕСЛИ (условие) ТО (действия)/

ЕСЛИ (условие) ТО (действие)/

КОНЕЦ

СИТ1

ЕСЛИ (условие) ТО (действия) НА СИТj/

…………………………………

ИНАЧЕ (действия) НА СИТj/

СИТj

ЕСЛИ (условие) ТО (действия) НА СИТk/

…………………………………

ИНАЧЕ (действия) НА СИТ1

 

Условие помимо логического выражения может содержать временной оператор
В ТЕЧЕНИЕ:

 

ЕСЛИ В ТЕЧ (время) (логическое выражение)

ИНАЧЕ…

 

Подобная запись означает, что в случае истинности логического выражения в любой момент в установленном интервале времени условие полагается выполненным. В противном случае события развиваются по ветви ИНАЧЕ…

Теперь представим процесс квазипараллельного выполнения всех пунктов полного алгоритма электроавтоматики (рисунок 2.9). Главный пункт (осуществляющий общую координацию электроавтоматики) выполняется циклически с начала и до конца с частотой порядка 100 Гц. Остальные пункты работают на более низкой частоте – около 10 Гц.

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

Рассмотрим ещё одну популярную систему программирования GRAFCET (она упоминалась в общем перечне вариантов в начале раздела). Система даёт графическое представление основной (базовой) структуры управления, выделяя блоки и параллельные ветви. Программы конкретных действий и условий переходов относятся к более низкому иерархическому уровню и могут быть сформированы на любом доступном контроллеру языке, в частности РКС. Графическое представление основной структуры является модификацией сети Петри.

 

 

 

 


 

 

 

Рисунок 2.9 – Квазипараллельное выполнение полного алгоритма электроавтоматики

 

Базовая структура электроавтоматики представлена графом из этапов (обозначенных квадратами), связей между этапами и переходов (обозначенных чертой, перпендикулярной к ориентированной связи). Активность этапа указывают точкой в поле квадрата. (Понятие этапа соответствует понятию позиции в сетях Петри). Каждому этапу сопоставлено некоторое действие, выполняемое, если этап активен. Действие записывают на этикетке, придаваемой этапу.

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

Каждый этап связан только с переходом (переходами), а каждый переход связан только с этапом (этапами).

Последнее изменение этой страницы: 2016-08-11

lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда...