Инструкции обработки

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

Рассмотрим некоторые технологи­ческие инструкции, которые имеют по­стоянный формат второстепенной части.

Формат инструкции определения ско­рости подачи:

FEDRAT/CKQPOCTb,

Здесь FEDRAT — главное слово, определяющее тип инструкций; СКО­РОСТЬ — значение скорости подачи (она может быть задана величиной или идентификатором скалярной перемен­ной) ; МРТ и МРМ — модификаторы, уточняющие, в каких единицах задана скорость: в об/мин (МРТ) или в мм/мин (МРМ).

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

Инструкция включения и выключения оборотов шпинделя станка:

ON

SPINDL/

OFF

Здесь SPINDL — главное слово, опреде­ляющее тип инструкции: слово ON ука­зывает на включение шпинделя, OFF — на выключение.

Инструкция быстрого перемещения Определяется словом RAPID. Она указы­вает, что движение должно выполняться с максимально возможной скоростью.

Инструкция определения останова обработки определяется словом STOP. Если в определенном месте исходной программы в СПД указана инструкция STOP, то в соответствующем месте УП будет находиться кадр с командой тех­нологического останова М01 или Ml (в системах ЧПУ, где допускается опу­скание нулей перед значащей цифрой).

Для задания в УП других технологи­ческих команд в СПД используется ин­струкция определения вспомогательной функции: AUXFUN/НОМЕР, где пара­метр НОМЕР задает номер технологиче­ской команды. Например, если в исходной программе задана инструкция AUXFUN/8, в управляющей программе в определен­ном месте будет находиться кадр с коман­дой М08 или М8, задающий включение охлаждения.

Для задания в УП выдержки времени в исходной программе задается инструк­ция определения паузы: DELAY/BPEMH, где параметр ВРЕМЯ задает значение выдержки времени в секундах. Допустим, в исходной программе задано DELAY/2, тогда в управляющей программе будет
сформирован кадр: для системы НЗЗ — кадр N...G 04X + 000200F0560, для си­стемы Н55 —кадр N...G 04Х + 000020.

Для задания команды на перемотку перфоленты после выполнения всей управляющей программы в СПД при­меняют инструкцию управления перемот­кой, которая определяется словом REWIND.

Инструкция определения коррекции траектории позволяет задать необходи­мый вид коррекции траектории в зави­симости от возможностей СЧПУ.

Инструкция задания коррекции через устройство управления станка определя­ется главным словом CUTCOM, за ко­торым следуют символ / и параметры, указывающие тип коррекции. Пара­метры, стоящие за символом /, зависят от вида СЧПУ и вводимой коррекции. Строгих требований к параметрам нет, их задает пользователь в дополнениях к инструкции по программированию на СПД ЧПУ в зависимости от выбранного типа станка и СЧПУ, но обычно это ко­довые цифры подготовительной функции, определяющие вид коррекции и номер корректора.

Пусть, например, имеется инструкция задания коррекции:

PARTNO/..........................

CLPRNT

FROM/0,0,200

GOTO/ISO,150,200,2000

CUTC0M/4305

GODLTA/O,0,-200,500

Кадры управляющей программы, со­ответствующие данной исходной информации для станка с ЧПУ, оснащенного системой 2Р32, будут иметь вид:

% N1 G1 Х150000 Y150000 F2000 N2 G43 Z-200000 F500 D5

Отсюда видно, что с помощью инструк­ции CUTCOM/4305 в управляющую про­грамму введена линейная коррекция по коор­динате 2, работающая со знаком плюс (функ­ция G/43), непосредственное значение кор­рекции считывается с корректора № 5 (D5).

Ниже приведен пример применения САП СПД ЧПУ.

Инструкции обработки

Рис. 10.23. Пример обработки криволинейного контура

Пример. Обработка контура с введением коррекции. На рис. 10.23 изображен контур, исходной информацией обработки которого будет следующая:

1 PARTNO/PR1

2 CLPRNT

3 FROM/0,0,200

4 GOTO/I2O,-5,200,2000

5 CUTCOM/0405

6 GODLTA/O,0,-200, 500

7 P1=POINT/100,-5

8 P2=POINT/-3,80

9 P3=POINT/-3,94

10 L1=LINE/100,0,100 , 20

11 L2=LINE/100,15,75,80

12 L3=LINE/0,80,75,80

13 C1=CIRCLE/XSMALL, LI, YSMALL, L2, RADIOS,15

14 C2=CIRCLE/YSMALL, L3,YSMALL, L2, RADIUS,15

15 CONTl=CONTUR/Pl,LI,CCLW, CI,L2, CCLW, C2,L3,P2

16 CUTCOM/RIGHT,11

17 CUTCOM/8110

18 FEDRAT/100,MPM

19 ACT/CONT1

20 CUTCOM/9110

21 GOTO/P3

22 CUTCOM/4005

23 GODLTA/O,0,200,500

24 GOTO/O,0,200,2000

25 FINI

Для станка, оснащенного системой ЧПУ НЗЗ, управляющая программа, соответствую­щая указанной исходной информации, будет иметь вид:

% N001 G17

N002 GOl Х+012000 Y-000500 F4720 N003 Z-020000 F0650 L405 N004 Х-000900 F0610 L810 N005 Y+002200

N006 G03 Х-000200 Y+001000 1+002600 L010

N007 GOl X-002000 Y+004800

N008 G03 Х-002400 Y+001600 1+002400

J+001000 L010 N009 GOl Х-006800 N010 G50 Y+000300 L810 N011 GO4 F0560 L000 N012 G40 Z+020000 F4650 L405 N013 GOl Х+000300 Y-009400 F0720 N014 F0000 МО2

В полученной УП в кадре N003 вводится коррекция по координате г. Код 4 после ад­реса L указывает на коррекцию по оси г; 05— номер корректора. Эта коррекция задана в исходной информации (строка 5) инструкцией CUTCOM/0405. Кадром УП N004 фреза под­водится к заданному контуру с вводом коррек­ции на радиус фрезы (L810); коррекция за­дается в исходной информации (строка 17) инструкцией CUTCOM/8110 (8 — код коррек­ции; 10 — номер корректора). Предварительно в строке 16 инструкцией CUTCOM/RIGHT. l 1 задается автоматический сдвиг вправо всего описанного контура на 11 мм, что соответ­ствует выбранному радиусу фрезы. Таким об­разом, с помощью инструкции CUTCOM/ RIGHT,11 обеспечен автоматический расчет эквидистантной поверхности. Программируе­мыми перемещениями в УП являются пере­мещение центра фрезы. Сдвиг контура зада­ется модификатором RIGHT или LEFT в зависимости от направления движения инстру­мента и положения его центра по отношению к контуру.

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

Матрица переноса коор­динат. Формат инструкции:

МАТРИЦА=MATRIX/TRANSL,DX,DY,DZ

Идентификаторы dX, dY и dZ задают в виде скалярных констант или скаляр­ных переменных (три составляющие переноса по осям координат). Вспомога­тельное слово TRANSL указывает способ трансформации — перенос.

Например, инструкция

M1=MATRIX/TRANSL,20,25,30

Описывает матрицу параллельного переноса осей координат в положительном направле­нии по трем осям: на 20 мм по оси X, на 25 мм по оси У и на 30 мм по оси Z.

Инструкция

М2=MATRIX/TRANSL,0,0, -5

Описывает матрицу параллельного переноса системы координат в отрицательном направ­лении по оси Z на величину 5 мм.

Инструкция

M3=MATRIX/TRANSL,А, В,С

Указывает, что значения А, В, С должны быть определены заранее.

МАТРИЦА=МШ11Х

Матрица вращения. Формат инструкции:

"Xzrot]

XYROT > , УГОЛ

YzrotJ


Особые инструкции

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

Здесь УГОЛ — скалярное значение, определяющее угол вращения; XZROT, XYROT и YZROT — вспомогательные слова, указывающие способ вращения в плоскостях XOZ, XOY и YOZ соответ­ственно.

Например, инструкция

Ml=MATRIX/XYROT,30,5

Описывает матрицу поворота системы коорди­нат на угол 30°30' против часовой стрелки от положительного направления оси X.

Идентификатор матрицы может быть индексированным, например:

М(I)=MATRIX/XYROT,10*(1+5)

Здесь описан массив матриц, где каж­дому значению I соответствует матрица с определенным значением угла поворота координат.

Матрица совместного вра­щения и переноса. Возможен более общий случай описания матриц преобразования координат. Это матрица совместного вращения и переноса. Фор­мат инструкции:

/ F XYROT ^

МАТРИЦА=MATRIX / J XZROT 1.УГОЛ, / I YZROT )

TRANSL,DX,DY,DZ

Здесь идентификаторы УГОЛ, dX, dY и dZ задают соответственно угол вращения и три составляющие переноса.

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

MATPH4A=MATRIX, «,

МАТРИЦА1,МАТРИЦА2

Где МАТРИЦА 1 и МАТРИЦА 2 — иден­тификаторы предварительно определен­ных матриц вращения и переноса.

Матрица симметрии отно­сительно прямой. Формат инст­рукции:

MATPHI1A=MATRIX/ &

MIRROR,ПРЯМАЯ

Идентификатор ПРЯМАЯ задает предварительно определенную прямую, относительно которой осуществляется преобразование — симметрия, вспомога­тельное слово MIRROR указывает тип преобразования — зеркальное отобра­жение.

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

Инструкции обработки

Рис. 10.24. Пример обработки контура с ис­пользованием матрицы поворота координат

В действие необходимую матрицу. Фор­мат инструкции ввода матрицы:

TRACUT/MATPHliA

Здесь МАТРИЦА — идентификатор мат­рицы преобразования координат, описан­ной ранее.

Инструкция отмены матрицы. Если при последующих движениях необходимо вернуться к старой (непреобразован- ной) системе координат, в исходной ин­формации задают инструкцию отмены действия той или иной матрицы:

TRACUT/NOMORE

Все последующие движения будут происходить в старой системе координат.

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

Пример 1. Программирование обработки диска с использованием матрицы поворота. Фрезой диаметром 18 мм необходимо обра­ботать две одинаковые и профильные выемки на диске радиусом = 100 мм (рис. 10.24). Исходная информация для УП, на которой будет обрабатываться данная деталь:

1

PARTNO/PR2

2

CLPRNT

3

FROM/0,0,150

4

PQ=POINT/0,0

5

L1=LINE/P0,ATANGL,-60

6

C1--CIRCLE/0.0,113

7

Pl=POINT/XLARGE, INTOF, hi,CI

8

L2=LINE/P1,PERPTO,LI

9

L3=LINE/PARLEL, LI, YLARGE,14

10 P2=POINT/INTOF, L2,L3

11 P20=POINT/XGEOF(P2),YGEOF(P2),150

12 C2=CIRCLE/0,0,70

13 L4=LINE/P0,ATANGL,45

14 C3=CIRCLE/0,0,102

15 P4=POINT/YLARGE, INTOF, L4,C3

16 L5=LINE/PARLEL, L4,XLARGE,14

17 L6=LINE/P4,PERPTO, L5

18 P5=P0INT/INT0F, L5,L6

19 C4=CIRCLE/XLARGE, LI, YSMALL, OUT, C2,RADIUS,10

20 C5=CIRCLE/YSMALL, L4,YLARGE, OUT, C2,RADIUS,10

21 CONTl=CONTUR/Pl,LI,CLW, C4,CCLW, C2,CLW, C5,L4,P4

22 Ml=MATRIX/XYROT, 165

23 GOTO/P2O,1200

24 GODLTA/0,0, -150, 500

25 CUTCOM/RIGHT,9

Инструкции обработки

Рис. 10.25. Пример обработки контура с использованием матрицы симметрии относительно

Прямой

26 CUTCOM/8110

27

FEDRAT/80,MPM

28

ACT/CONTl

29

CUTCOM/9110

30

GOTO/P5

31

GODLTA/O,0,150, 500

32

TRACUT/Ml

33

GOT0/P20,1200

34

GODLTA/O,0,-150,500

35

CUTCOM/RIGHT,9

36

CUTCOM/8110

37

FEDRAT/80,MPM

38

ACT/CONTl

39

CUTCOM/9110

40

GOTO/P5

41

TRACUT/NOMORE

42

GODLTA/O,0,150,500

43

GOTO/O,0,150,1200

44

FINI

Из приведенных данных видно, что описа­ние второй профильной выемки не потребо­валось, так как она идентична первой, лишь повернута относительно нее на угол 165°. Поэтому в исходной программе в строке 22 описана матрица поворота Ml, а в строке 32 эта матрица введена в действие посредством инструкции TRACUT/M1. Все последующие перемещения выполняются в преобразованной системе координат.

Пример 2. Программирование обработки контура с использованием матрицы симметрии. Необходимо обработать замкнутый профиль (рис. 10.25). Характерная особенность про­
филя состоит в том, что обе его половины симметричны относительно оси X. Фреза имеет диаметр 18 мм. С помощью матрицы симмет­рии относительно прямой составляют про­грамму САП обработки данного профиля:

1 FARTNO/PR3

2 CLPRNT

3 FROM/0,0,150

4 PO^POINT/O,0,0

5 Pl=POINT/195,-5

6 P2=POINT/195,5

7 P3=POINT/-50,0

8 P30=POINT/210,-5

9 P4=P0INT/36,50

10 P5=POINT/105,50

11 P6=POINT/180,0

12 L1=LINE/195,0,195,20

13 L20=LINE/P6,ATANGL,-45

14 L2=LINE/PARLEL, L20,XLARGE,15

15 L3=LINE/0,50,40,50

16 L4=LINE/P5,ATANGL,45

17 L5=LINE/0,38,40,38

18 L6=LINE/P4,ATANGL,-45

19 L0=LINE/0,0,20,0

20 C1=CIRCLE/180,0,15

21 C2=CIRCLE/XSMALL, L2,YSMALL, L3,

21 RADIUS,5

22 C3=CIRCLE/XLARGE, L4,YSMALL, L3,

22 RADIUS,5

23 C4=CIRCLE/XSMALL, L4,YSMALL, L5,

23 RADIUS,10

24 C5=CIRCLE/XLARGE, L6,YLARGE, L5,

24 RADIUS,10

25 C6-CIRCLE/XSMALL, L6,YSMALL, L3,

25 RADIUS,5

26 C7=CIRCLE/0,0,50

27 CONTl=CONTUR/Pl,LI,CCLW, CI,L2, 27 CCLW, C2, L3, CCLW, C3, L4 , CLW, C4, L5,

27 CLW, C5,L6,CCLW, C6,L3,CCLW, C7,P3

28 CONT2=CONTUR/P3, CLW, C7, L3, CLW, C6, 28 L6,CCLW,C5,L5,CCLW,C4,L4,CLW, C3,

28 L3,CLW, C2,L2,CLW, CI,LI,PI

29 Ml=MATRX/MIRROR, L0

30 GOTO/207,-5,150,1200 -

31 GODLTA/O,0,-150,500

32 CUTCOM/RIGHT,9

33 CUTCOM/8110

34 FEDRAT/80,MPM

35 ACT/CONT1

36 TRACUT/M1

37 CUTCOM/LEFT,9

38 ACT/CONT2

39 CUTCOM/9110

40 GOTO/P3Q

41 TRACUT/NOMORE

42 GODLTA/O,0,150,500

43 GOTO/O,0,150,1200

44 FINI

В программе один и тот же контур описан дважды: в прямом направлении (CONT1) и в обратном (CONT2). Этот контур опреде­ляет верхнюю половину профиля детали. Стро­ка 36 программы вводит матрицу симметрии — TRACUT/M1, и по команде ACT/CONT2 строки 38 происходит обработка контура, сим­метричного описанному в программе.

Условные переходы. К особым инст­рукциям, упрощающим программирова­ние сложных деталей, относятся и услов­ные переходы. Формат инструкции: IF (арифметическое выражение), МЕТКА 1, МЕТКА 2, МЕТКА 3. Здесь МЕТКА — идентификатор, состоящий из символов (от одного до пяти). Метка отделяется от инструкции закрывающей скобкой «)». Инструкция определяет переход на одну из строк, помеченных указанными мет­ками, в зависимости от значения арифме­тического выражения. Если оно отрица­тельное, переходят на инструкцию с мет­кой МЕТКА 1; если значение арифмети­ческого выражения равно нулю, следует переходить на инструкцию МЕТКА 2; если значение арифметического выраже­ния положительное, надо переходить на инструкцию МЕТКА 3. С помощью услов­ных переходов можно в лаконичной фор­ме описать многократно повторяющийся циклический процесс или определить массив геометрических элементов. Сле­дует отметить, что инструкции с приме­нением геометрических идентификаторов могут находиться в цикле только в том случае, если идентификатор индексиро­ванный и значение индекса сменяется при каждом выполнении инструкции цикла.

Пример 3. Вариант использования инст­рукции условного перехода. Пусть необходимо в каких-то прикладных целях определить координаты точек пересечения двух заданных прямых с двадцатью концентрическими окруж-

Инструкции обработки

Инструкции обработки

PL21(20Y

Рис. 10.26. Пример определения координат

J7°J0'

65 18

Точек пересечения двух прямых с массивом окруж­ностей


Ностями, причем радиусы окружностей воз­растают по закону арифметической прогрес­сии:

/?,=/?; = R3 = R2 + D;...;

На рис. 10.26 изображены концентри­ческие окружности: 15,5 мм; Ri = Ri--- + 2,2 мм, т. е. d = 2,2 мм; t = 20 (г — количе­ство окружностей). Две прямые проходят че­рез центр окружностей под углами 37°30' и — 65° 18' (знак минус говорит об отрицатель­ном направлении угла по отношению к оси X). При расчете исходной информации на ЭВМ на печать должны быть выведены координаты всех точек пересечения прямых с окружно­стями. Вывод на печать канонических пара­метров геометрических элементов осуществля­ется на стадии работы процессора.

На рис. 10.26 приняты следующие обозна­чения: С (I) — массив концентрических окруж­ностей от С(1) до С(20); PL1 (I) —массив точек в IV квадранте — пересечение прямой

L1 с массивом C(I); PL11(I) —массив точек во II квадранте — пересечение прямой L1 с массивом C(I); PL2(1) — массив точек в 1 квадранте — пересечение прямой L2 с масси­вом С(1); PL21 (I) — массив точек в III квад­ранте — пересечение прямой L2 с массивом С(1).

Исходная информация для определения координат точек:

1 PARTN0/PR4

2 CLPRNT

3 RESERV/C,20,PL1,20,PL11,20,PL2,20,

3 PL21.20

4 PO^POINT/O,0

5 L1=LINE/P0,ATANGL,-65.3

6 L2=LINE/P0.ATANGL,37.5

7 DLT=0

9 C(I)=CIRCLE/0,0,15+DLT

10 PL1(I)=POINT/XLARGE, INTOF, LI,C(I)

11 PL11(I)=POINT/XSMALL,INTOF,LI,С(I)

12 PL2(I)=POINT/XLARGE, INTOF, L2,C(I)

13 PL21(I)=POINT/XSMALL, INTOF, L2,C(I)

14 DLT=DLT+2.2

15 1=1+1

16 IF(I-20)10,10,20

17 FEDRAT/1200.MPM

18 FINI

Обработка исходной информации на ЭВМ позволяет получить координаты массива то­чек.

В строке 3 используется рабочая инструк­ция RESERV, которая определяет массив переменных через идентификатор и макси­мальное число индекса. В рассматриваемом примере имеется пять массивов: С(I), PL1 (I), PL11 (I), PL2 (I), PL21 (I). Максимальное число индекса 1 = 20. В строках 7 и 8 началь­ные условия: DLT = 0; 1 = 1. В строке 9 при первом считывании геометрическая инструк­ция определения окружности имеет вид: C(l) =CIRCLE/0,015, так как 1 = 1 и DLT = 0. Аналогично при первом считывании определя­ются точки пересечения прямых L1 и L2 с окружностью С (1).

Далее в строке 14 происходит накопле­ние DLT(DLT = DLT + 2,2), а в строке 15 — увеличение индекса I на единицу (1 = 14-1). В строке 16 работает инструкция условного перехода, которая анализирует арифметиче­ское выражение (1 — 20). Если (I— 20) <0 или (I — 20) =0, происходит переход на мет­ку 10 и повторяется определение всех геомет­рических элементов с увеличением на 2,2 зна­чения DLT в инструкции определения окруж­ности. Такой циклический процесс выполня­ется последовательно при значениях I от 1 до 20. Как только I окажется больше 20, т. е. (/— 20) > 0, произойдет переход на метку 18, которой отмечена рабочая инструкция FINI — конец программы.

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

Комментарии закрыты.