Подпрограммы ЧПУ

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

Подпрограмма — набор инструкций, в которых некоторые параметры, назы­ваемые аргументами, могут не уточняться при определении подпрограммы. Выпол­нение вызывается особой инструкцией, которая устанавливает значение аргу­ментов. Подпрограмма выделяется двумя специальными инструкциями, из которых одна находится в начале, а другая — в конце подпрограммы:

Идентификатор = МАСИО/СПИСОК АРГУМЕНТОВ

: тело подпрограммы

: (различная информация, включаю­щая

: геометрические инструкции, инст­рукции движения,

: арифметические операции и т. д.) : TERMAC

Инструкции, входящие в подпро­грамму, кроме инструкции MACRO, мо­гут иметь метку.

СПИСОК АРГУМЕНТОВ состоит из набора элементов, отделенных запя­тыми. Каждый элемент может быть иден­тификатором (неиндексированным), пе­ременной или инструкцией присваивания. Идентификаторы, определяемые в списке аргументов в инструкции MACRO, при­нимаются во внимание только при выпол­нении подпрограммы и не зависят от основной программы, например:

MACl=MACRO/A,В,С

MAC2=MACRO/A=W,В=20, С=30

TERMAC — инструкция определения конца подпрограммы — является послед­ней. Она может иметь метку.

Инструкция вызова подпрограммы определяется главным словом CALL и имеет формат: CALL/ИДЕНТИФИКА­ТОР ПОДПРОГРАММЫ, СПИСОК АРГУМЕНТОВ. В списке аргументов инструкции словом CALL указываются только те аргументы, которым не при­своено значение при определении про­граммы, например:

CALL/MAC1

CALL/MAC2,А=5,В=10,С=12

CALL/MAC3,А=10,FIG1=P(37),MOfl=XSMALL


Для сохранения подпрограмм с за­данными идентификаторами в системном диске (в памяти или в библиотеке) ис­пользуют инструкцию STORE. Формат инструкции:

STORE/ИДЕНТИФИКАТОР ПОДПРО­ГРАММЫ. Подпрограммы многократно исполь­зуются в основных программах без пред­варительного описания.

Если необходимо удалить подпро­граммы, хранящиеся в библиотеке по команде STORE, применяют инструкцию удаления (стирания) подпрограмм. Фор­мат инструкции:

DELETE/ИДЕНТИФИКАТОР ПОД­ПРОГРАММЫ, ALL.

Пример. Вариант использования под­программы в основной программе обработки. Пусть необходимо обработать четыре паза одинаковой формы и разных размеров (рис. 10.27). В центре каждого паза условно показано предварительно сделанное отверстие для ввода фрезы. Толщина детали 20 мм; диаметр фрезы для обработки пазов 18 мм. На рисунке показан отдельно вынесенный паз, изображенный в системе координат X'0'Y', оси которой проходят через оси сим­метрии паза. Программа обработки детали имеет вид:

1 PARTNO/PR5

2 GLPRNT

3 FROM/0,0,150

4 M1=MATRIX/TRANSL,60,60,О

5 M2=MATRIX/TRANSL,60,130,0

6 M3=MATRIX/TRANSL,60,155,0

7 M4=MATRIX/TRANSL,160,55,0

6 PIOO^POINT/0,0, 150

9 MACl=MACRO/RD, DL, Fl, F2,RF

1 Pl=POINT/RD,0

2 P2=POINT/-RD. O

3 Cl=CIRCLE/0,0,RD

4 C2=CIRCLE/-(DL/2-RD),0,RD

Подпрограммы ЧПУ

Рис. 10.27. Пример обработки повторяющихся геометрических элементов с использованием подпрограмм и матриц преобразования координат

5 C3=CIRCLE/DL/2-RD,0,RD

6 Ll=LINE/0,-RD,20,-RD

7 L2=LINE/0,RD,20,RD

8 CONT1=CONTUR/P1,CLW, CI,LI,CLW, C2,

8 L2,CLW, C3,LI,CLW, CI,P2

9 GODLTA/O,0,-150,500

10 GODLTA/(bL/2-RD-l),0,0,Fl

11 GODLTA/-(DL/2-RD-1),0,0,F2

12 GODLTA/-(DL/2-RD-1),0,0,F1

13 GODLTA/f)L/2/-RD-3),0,0,F2

14 FEDRAT/Fl, MPM

15 CUTCOM/RIGHT,RF

16 CUTCOM/8HO

17 ACT/CONTl

18 CUTCOM/9110

19 GOTO/O,0,0

20 GODLTA/O,0,150,500

21 TERMAC

22 TRACUT/Ml

23 GOTO/PIOO,1200

24 CALL/MAC1,RD=14,DL=60,F1=80,

24 F2=500,RF=9

25 TRACUT/NOMORE

26 TRACUT/M2

27 GOTO/PIOO,1200

28 CALL/MAC1,RD=12,DL=40,Fl=80,

28 F2=500,RF=9

29 TRACUT/NOMORE

30 TRACUT/M3

31 GOTO/PIOO,1200

32 CALL/MAC1,RD=11,DL=30,F1=80,

32 F2=500,RF=9

33 TRACUT/NOMORE

34 TRACUT/M4

35 GOTO/PIOO,1200

36 CALL/MAC1,RD=15,DL=65,Fl=500,,

36 RF=9

37 TRACUT/NOMORE

38 GOTO/O,0Д50,1200

39 FINI

В первых девяти строках описаны мат­рицы преобразования координат (параллель­ное смещение осей координат в центр симмет­рии каждого из пазов), указана исходная точка Р100 (на рис. не показана) с коорди­натой 2=150 мм, задана подпрограмма МАС1, в которой вместо ряда численных значений используются аргументы: RD — радиус паза; DL — длина паза; F1 — значе­ние рабочей подачи; F2 — значение ускорен­ной подачи; RF — радиус фрезы.

Новыми строками 1 — 7 определяется геометрия паза с помощью аргументов. Так,, точка Р1 задается координатами x = RD, у = 0, точка Р2 — координатами х=—RD, У — 0. Прямая L1 задана двумя точками. Координаты первой точки х = 0, у=—RD, второй — * = 20 мм, у= — RD. Величина * для второй точки может быть принята любой в пределах длины паза. Аналогично задана и прямая L2. Для контура принято, что центры окружностей С2 и СЗ размещены в точках, координата х которых определяется расчетом.

Строка 8 определяет контур CONT1, который описывает геометрию траектории центра инструмента. Начало контура — точка Р1, далее движение происходит по дуге окруж­ности С1, по прямой L1, по дуге С2, но прямой L2, по дуге СЗ, по прямой L1 и заканчива­ется приходом в точку Р2 по дуге окруж­ности С2.

Строка 9 определяет позиционирование фрезы в центр паза. Строки 10 и 11 задают движение инструмента вправо на рабочей подаче F1 и возврат в точку 0 на ускоренной подаче F2. Строки 12, 13 определяют движе­ние инструмента влево и возврат. Строки 14—16 задают условия обработки контура. Строка 17 определяет движение инструмента по контуру, а 18—21 завершают цикл макро­операции.

Строки 22—39 — продолжение основной программы. В строках 24, 28, 32, 36 происхо­дит вызов подпрограммы МАС1 (обработка паза) с присвоением конкретных численных значений аргументам, входящим в подпро­грамму. Перед каждым вызовом подпро­граммы в строках 22, 26, 30, 34 вводятся в действие ранее описанные матрицы преобра­зования координат.

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

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