Промежуточный язык процессор — постпроцессор
В целом ряде САП технологические указания в исходной программе формируются и задаются на промежуточном языке. Эти указания процессором передаются на постпроцессор.
Унификация разработки постпроцессоров и их стыка с различными САП требует принятия единого промежуточного языка процессор — постпроцессор. Наибольшее распространение получил промежуточный язык, рекомендованный комитетом ИСО. Руководящие технические материалы РТМ 2-Н00-11—79 устанавливают для отечественных САП базовое подмножество этого языка, в котором исключено большинство дублирующих друг друга понятий, а единицы физических величин приведены в соответствии с системой СИ.
Записанный на промежуточном языке текст передаваемой из процессора на постпроцессор информации (CLDATA) состоит из отдельных записей, обозначающих законченные по смыслу определения или указания.
Таблица 10.5. Словарь главных слов CLDATA
|
В общем случае запись состоит из главной и вспомогательной частей. Главная часть определяет название записи, а во вспомогательной части задаются параметры. Некоторые записи содержат только главную часть.
Запись представляет собой последовательность от 1 до 245 логических слов, разделенных знаками. Логические слова,
Таблица 10.6. Словарь вспомогательных слов
|
Обозначающие названия записей (главные слова) и параметров (вспомогательные слова), образованы сокращениями слов и аббревиатурами понятий на английском языке, включающими до шести
Рис. 10.11. Вертикальная структура промежуточного языка процессор — постпроцессор |
Буквенно-цифровых символов. Словари главных и вспомогательных слов базового подмножества промежуточного языка приведены в табл. 10.5 и 10.6. В ЭВМ эти слова распознаются по их кодам.
К логическим словам кроме указанных относятся целые и дробные десятичные числа для записи значений параметров и произвольные сочетания буквенно - цифровых символов, с помощью которых задаются наименования детали и станка с ЧПУ, режимы работы постпроцессора, идентификаторы геометрических элементов и участки текста сопроводительной документации.
Возможную последовательность записей в тексте CLDATA определяет вертикальная структура, а порядок следования логических слов в записях — горизонтальная структура промежуточного языка.
В тексте CLDATA можно выделить участки, описывающие самостоятельные по значению группы данных. Их последовательность показана на рис. 10.11. Границы участков на этом рисунке обозначены буквами от А до G.
Текст CLDATA начинается записью (PARTNO), присваивающей название УП. Записи группы данных А — В определяют постпроцессор (MACHIN), режим его работы (MODE) и требования к точности отработки перемещений (MCHTOL). Записи группы данных В — С задают параметры установки заготовки на станке (CLAMP или ORIGIN), связывающие системы координат детали и станка. Записи группы данных С — D определяют шпиндельную головку (HEAD), исходную точку инструмента (FROM), место его смены (SAFPOS) и плоскость (CLEARP), в которой безопасно быстрое перемещение инструмента. Записи группы данных D — Е связаны с выбором (SELCTL), описанием и установом инструмента в рабочую позицию (LOADTL), а также его коррекцией (CUTCOM). Записи группы данных Е — F содержат команды рабочим органам станка (COOLNT, DRESS, ROTABL) и режимы их работы (SPINDL, FEDRAT, RAPID, STOP, OPSTOP, OPSKIP, DELAY, PITCH, COUPLE). Наконец, записи группы данных F — G определяют траекторию инструмента (GOTO, CIRCLE, MULTAX, CYCLE, THREAD, GOHOME, RETRCT). Кроме перечисленных записей в тексте CLDATA используются записи для обозначения конца участка обработки (END), вставки кадров программы (INSERT), перемотки перфоленты (REWIND), печати выходных документов (PPRINT), идентификации текста исходных данных с записями CLDATA (GARDNO) и конца текста CLDATA (FINI).
Если после границы, обозначенной на рис. 10.11 буквой G, следует участок А — G, то изготовление детали будет продолжено на другом станке. Повторение участка В — G вызывается пере - установом заготовки. Появление нового участка С — G означает обработку с
использованием другой шпиндельной головки или другого суппорта, станка. Участок D — G повторяется при смене инструмента, а участок Е — G — при изменении режима резания. Каждый из участков F — G описывает отдельный элемент траектории инструмента.
Горизонтальная структура промежуточного языка представлена ниже перечнем записей е указанием их назначения и синтаксиса. Синтаксис промежуточного языка отвечает тем же правилам, что и синтаксис входного языка САП.
/I |
PARTNO |
PARTNO * (номер детали). Запись задает наименование и номер детали для идентификации УП:
[ символ ] Координат станка путем задания расстояния между базовой плоскостью патрона и началом системы координат детали (а) и прямую или обратную (INVERS) ориентацию детали по отношению к ее положению на чертеже:
CLAMP/a[INVERS]
ORIGIN* (начало). Запись задает координаты х, у (а, Ь) и другие координаты (с) начала системы координат станка в системе координат детали:
ORIGIN/a, b [,с]
HEAD* (головка). Запись задает номер требуемой головки (а) или одновременную работу двух головок (BOTH):
,символ, слово ,ъ |
MACHIN (станок). Запись задает наименование (имя) и номер (а) постпроцессора для конкретного станка с ЧПУ, а также предусматривает задание символов, слов или параметров (Ь) для его вызова:
MACHINI имя [, а]
А, Ъ, с |
HEAD
BOTH
FROM* (исходное положение). Запись определяет координаты х, у и Z (а, Ь, с) исходного положения вершины инструмента в системе координат детали как частный случай записи параметров линейного перемещения:
FROM/
MODE* (режим). Запись задает символы слова или параметры (а) режима работы постпроцессора:
SAFPOS * (безопасная позиция). Запись определяет координаты х, у и г (Ь, с, а) точки (в системе координат детали), в которую приводится вершина инструмента для его смены:
/Символ Слово А |
,символ ,слово , а |
SAFPOS |
B, с[,а] |
Й V |
MCHTOL * (точность обработки). При программировании позиционных систем управления запись определяет режим позиционирования, а при контурном управлении задает наибольшее отклонение от траектории при резком изменении направления движения инструмента
(a) или допустимые ошибки перебега
(b) и недохода (с):
/а ^ ГЛЬ'Г---
MCHTOL /
/ Ь, с
CLAMP* (зажим). Запись определяет расположение детали в системе
CLEARP |
CLEARP * (безопасная плоскость). Запись определяет плоскость, по которой безопасно быстрое перемещение вершины инструмента. Плоскость задается координатами х, у и Z (b, с, d) нормального единичного вектора и расстоянием (е) до этой плоскости от начала системы координат детали или как плоскость XY (XYPLAN) с координатой Z (f):
'b, c,d, e [XYPLAN,]f
SELCTL (выбор инструмента). Запись задает идентификационный номер
инструмента или его позицию в инструментальном магазине (Ь):
SELCTL/b
LOADTL (загрузка инструмента). Запись задает смену инструмента, определяет его символику (TOOL, символ, а), идентификационный номер или позицию в магазине (Ь), длину (LENGTH, с), координаты х, у, г настроечной точки в системе координат инструмента {SETOOL, d, е, f), диаметр (DIAMETR, j), номер корректора (OSETNO, к) или номера корректоров для двух координат (OSETNO, k, 1) и указывает, устанавливается ли инструмент вручную (MANUAL) или автоматически:
' LOADTL/[TOOL,символ, а,b,[,LENGTH, c]{],SETOOL,d,e,f][,DIAMETR,Л [,k[,l][MANUAL]}
CUTCOM * (компенсация инструмента). Запись определяет номера корректоров для компенсации длины (LENGTH, а) или радиуса инструмента (RADIUS, f), плоскость компенсации XY (XYPLAN), YZ (YZPLAN) или ZX (ZXPLAN) и номер корректора (е), но - 'мера корректоров по осям X (XCOORD, Ь), У (YCOORD, с) и Z (ZCOORD, d), задает включение (ON) или выключение (OFF) корректора, а также определяет положение инструмента справа (RIGHT) или слева (LEFT) относительно направления его движения вдоль контура:
COOLNT (охлаждение). Запись задает включение (ON) или выключение (OFF) подачи охлаждения и определяет номер трубопровода (а):
ON
COOLNT
OFF
DRESS (правка). Запись задает команду на автоматическую правку шлифовального круга:
DRESS
ROTABL (поворот стола). Запись задает угол поворота стола в градусах (а) или приращение этого угла (INCR, Ь) и направление вращения (CLW—по часовой стрелке; CCLW — против часовой стрелки):
А
INCR.b
SPINDL (шпиндель). Запись определяет номер диапазона частот вращения шпинделя (RANGE, с), частоту его вращения в об/мин (а) или скорость резания в м/мин (SMM, Ь), направление вращения (CLW — по часовой стрелке;' CCLW — против часовой стрелки), а также задает выключение (OFF), включение с восстановлением предыдущей частоты вращения (ON) или поворот шпинделя до фиксированного положения (ORIENT, 0) и его зажим: : 5
Производятся на быстром ходу:
RAPID
STOP (останов). Запись задает команду на останов станка и считывающего устройства:
STOP
OPSTOP (дополнительный останов). Запись задает команду на останов станка. Действие этой команды может быть отменено оператором станка путем переключения соответствующего тумблера на пульте управления:
OPSTOP
ON OFF |
OPSKIP (условный пропуск). Запись задает начало (ON) или конец (OFF) участка программы, который может быть пропущен оператором станка путем переключения соответствующего тумблера на пульте управления:
OPSKIP
DELAY (выдержка). Запись задает время выстоя в с (а) или число оборотов шпинделя (REV, b): обработки отверстия, а также отменяет цикл (OFF) или восстанавливает ранее отмененный цикл (ON) либо указывает, что элементы цикла предусмотрено выполнить вручную (MANUAL). Операция характеризует вид обработки: сверление в цикле типа G81 (DRILL), цекование в цикле типа G82 (FACE), глубокое сверление в цикле типа G83 с отводами сверла для ломки стружки (BRKCHP) или с полным выводом сверла из отверстия для ее удаления (DEEP), нарезание резьбы метчиком в цикле типа G84 (ТАР), расточку в циклах типов G85 — G89 (BORE5 — BORE9) и сверление в разных станках (THRU). Глубина прохода в мм (а) задается вдоль оси отверстия от его центра на плоскости. Подача задается в мм/мин (ММРМ, d) или в мм/об (MMPR, е). Недоход определяет расстояние в мм (f), на которое не доходит инструмент до плоскости на быстром ходу. Модификаторы задают величину дополнительного быстрого ввода инструмента в предварительно обработанное отверстие (RAPTO, g) выстой инструмента в с (DWELL, с) и останов шпинделя в фиксированном угловом положении (ORIENT, 0):
DELAY |
REV. b
PITCH (шаг). Запись задает шаг (а) и число ниток многозаходной резьбы (MULTRD, d):
PITCH I a[MULTRD,d] '
CYCLE CYCLE |
COUPLE* (связь). Запись задает начало (ON) или конец (OFF) синхронизации вращения шпинделя и подачи для обработки винтовых поверхностей:
CYCLE |
ON
COUPLE;
OFF
MULTAX * (многокоординатная обработка). Запись задает начало (ON) или конец (OFF) участка траектории инструмента при многокоординатной обработке:
1 ON
MULTAX ,
OFF
ON
OFF
MANUAL
|DRILL FACE TAP
BORE5 MMPM. d
,a, ,f[RAPTO, g]
BORE6 MMPR, e
BORE 7
[ |
BORE8
[,DWELL[,c][,ORIENT[,0]
BORE 9
DEEP
N MMPM, d . [a,] 1 MMPR, e
BRKCHP 1 [,f],h][,RAPTO, g][,DWELL[,c]]
CYCLE (цикл). Запись определяет операцию, глубину прохода, подачу, недоход и модификатор типовой схемы
, n MMPM, d
CYCLE / THRU, [a] [,f][
/ 1 MMPR. e
' ,PARTO,g][,DWELL[,С]]
THREAD (резьба). Запись задает параметры режима нарезания резьбы резцом, определяющим подачу в мм/об (MMPR, d), число ниток многозаходной резьбы (MULTRD, е), общую глубину резьбы (DEPTH, f), общее число проходов (CUTS, g) или число проходов (h) с заданной глубиной резания (1), число зачистных проходов (FINCUT, j), угол врезания (CUTANG, к) и номера двух корректоров (OSENTO, 1, т), которые включаются попеременно в каждом проходе резьбы:
THREAD/{[MMPR, d][MULTRD,Е,][ CUTS. g,
DEPTH, f,] [FINCUT, j,]
CUTS, h,l
[CUTANG, K][OSENTO, h,m]>
GOHOME (возврат). Запись задает команду на возврат рабочих органов станка в исходное положение:
GOHOME
RETRCT (отвод). Запись задает команду на отвод инструмента в безопасную плоскость:
RETRCT
END (конец). Запись означает конец участка обработки:
END
INSERT (вставка). Запись задает вывод символов, образующих команды для ЧПУ, непосредственно на программоноситель:
INSERT / [символ]
REWIND (перемотка). Запись задает команду на перемотку программоносителя до начала программы:
REWIND
PPRINT (печать постпроцессора). Запись задает символы для печати сопроводительной документации:
PPRINT j "[символ]
CARDNO (номер указания). Запись задает порядковый номер (а) и текст указания исходных данных, являющийся источником последующих записей:
/ п
CARDNO/а ^[,символ]
FINI (конечная запись). Запись завершает текст CLDATA:
FINI
Записи, отмеченные звездочкой (*), являются модальными, т. е. они действуют до отмены или появления новой записи.
В соответствии с общим форматом каждая запись содержит: нулевое слово, определяющее число слов в записи; первое слово, указывающее порядковый номер записи в тексте CLDATA; последовательность логических слов, оговоренную синтаксисом данной записи.
Набор записей из базового подмножества промежуточного языка, используемый в конкретной САП, выбирают исходя из ее назначения и технических характеристик.
Напомним, что форма представления информации, характерная для промежуточного языка процессор — постпроцессор, в ряде САП используется для задания исходных технологических параметров обработки наряду с основным языком САП. Естественно, это относится к тем САП, которые преимущественно решают геометрические задачи, а условия обработки назначает технолог-про - граммист в процессе разработки и записи исходных данных.