Команда задания технологических параметров операции <PPFUN TECHINFO(58)>


Команда задания технологических параметров операции <PPFUN TECHINFO(58)> служит для передачи в постпроцессор дополнительной технологической информации об операции SprutCAM. Она обычно располагается в самом начале каждой последовательности технологических команд, соответствующих одной операции.

 

Параметры:

Массив CLD

Параметр

Описание переменной

Группа

1

SubCode

58 (TechInfo)

 

2

2

Версия CLData

 

3

3

Минимальная координата по X

Оболочка траектории

4

4

Минимальная координата по Y

5

5

Минимальная координата по Z

6

6

Максимальная координата по X

7

7

Максимальная координата по Y

8

8

Максимальная координата по Z

9

9

Уровень безопасной плоскости (уровень ускоренных перемещений в эрозионных операциях)

Уровни

10

10

Верхний уровень обработки

11

11

Нижний уровень обработки

12

12

Припуск

Заготовка (Оболочка всех операций)

13

13

Минимальная координата по X

14

14

Минимальная координата по Y

15

15

Минимальная координата по Z

16

16

Максимальная координата по X

17

17

Максимальная координата по Y

18

18

Максимальная координата по Z

19

19

Точность CLData (количество знаков после запятой)

Точности

20

20

Система счисления:

0 – мм

1 – дюйм

21

21

Минимальная длина дуги

22

22

Отклонение от детали

23

23

Отклонение в деталь

24

24

Припуск в операции

25

25

Тип инструмента:

0 – цилиндрический

1 – сферический

2 – тороидальный

3 – с двумя радиусами

4 – с двумя радиусами и ограничением

5 – с углом и двумя радиусами

6 – с углом, двумя радиусами и ограничением

7 – гравер

8 – сверло

9 – составной инструмент

10 – инструмент с обратным радиусом

11 – резак

12 – метчик

13 – центровочное сверло

14 – зенковка

15 – цековка

16 – развертка

17 – резьбонарезная фреза

100 – проходной резец

101 – расточной резец

102 – наружный резьбонарезной резец

103 – внутренний резьбонарезной резец

104 – наружный канавочный резец

105 – внутренний канавочный резец

106 – торцевой канавочный резец

Инструмент

26

26

Номер инструмента

27

27

Диаметр инструмента (диаметр проволоки в эрозионных операциях)

28

28

Длина рабочей части

29

29

Угол рабочей части (угол конической части в радианах)

30

30

Радиус торца (радиус скругления фрезы, радиус кончика резца)

31

31

Номер корректора на длину. 0, если коррекция на длину выключена

32

32

Номер корректора на радиус. 0, если коррекция на радиус выключена

33

33

Величина коррекции на длину

34

34

Величина коррекции на радиус

35

35

Точка настройки осевого инструмента:

0 – центр инструмента,

1 – произвольная точка, заданная смещением относительно центра инструмента,

2 – кончик инструмента.

 

Точка настройки токарного инструмента:

0 – левая,

1 – правая,

2 – верхняя,

3 – нижняя,

4 – верхняя левая,

5 – верхняя правая,

6 – нижняя левая,

7 – нижняя правая,

8 – центральная,

9 – произвольная.

36

36

Частота вращения шпинделя (об/мин)

Скорости

37

37

Подача ускоренного перемещения (мм/мин или дюйм/мин)

38

38

Подача рабочая

39

39

Подача врезания

40

40

Подача подхода

41

41

Подача отхода

43

43

Подача перехода от строчки к строчке

43

43

Подача возврата

44

44

Длина траектории

Статистика траектории

45

45

Время операции (8 байт в формате Delphi)

46

46

Время всей обработки

47

47

Уровень верхней направляющей эрозионного станка

Уровни

48

48

Уровень нижней направляющей эрозионного станка

51

51

Ось инструмента:

1 – X, 2 – Y, 3 – Z

(Для токарных операций равна 2,

для токарного сверления равна 1,

для фрезерных операций равна 3)

 

52

52

Координата X

Точка смены инструмента

53

53

Координата Y

54

54

Координата Z

55

55

Координата X

Промежуточная точка

56

56

Координата Y

57

57

Координата Z

58

58

Номер включенного трубопровода охлаждения:

0 – охлаждение выключено,

1 – жидкость,

2 – туман,

3 – инструмент.

 

60

60

Технологическая группа операции:

0 – не установлена,

1 – фрезерная,

2 – токарная,

3 – вспомогательная,

4 – электроэрозионная.

 

61

61

0 – команда PPFUN неактивна

1 – команда PPFUN активна

 

62

62

Кинематика робота:

0 – положение третьего сустава робота не зависит от положения второго сусутава

1 – второй и третий суставы связаны параллелограммом

Параметры робота

80

80

Шаг вдоль оси инструмента для многослойной обработки (только для операции 2D Контур)

Слои

81

81

Припуск вдоль оси инструмента на чистовой проход (только для операции 2D Контур)

Слои

 

Параметры, доступные через оператор Cmd

 

TCLDPPFun: ComplexType

Команда задания технологических параметров операции

PPFun: Array, Key="RecordID"

Cmd.Ptr["PPFun"] - Массив структур различных типов для хранения параметров команды PPFun

TPPFunTechInfoParameters: ComplexType

Cmd.Ptr["PPFun"].Item[1] или Cmd.Ptr["PPFun(TechInfo)"] - Отдельный элемент массива PPFun. Содержит информацию о технологических параметрах операции. Доступ к элементам массива возможен либо по индексу, либо по ключевому полю <RecordID>. Для команды задания технологических параметров оно всегда имеет значение "TechInfo".

RecordID: String

Cmd.Str["PPFun(TechInfo).RecordID"] - Идентификатор типа постпроцессорной функции. В данном случае всегда имеет значение "TechInfo".

RecordCode: Integer

Cmd.Int["PPFun(TechInfo).RecordCode"] - Код, определяющий тип постпроцессорной функции. В данном случае всегда имеет значение "58".

Operation: Array

Cmd.Ptr["PPFun(TechInfo).Operation"] - практически полный список параметров технологической операции. В качестве дочерних элементов данного пункта служат самые различные параметры операции: тип операции, ее имя, группа, свойства инструмента, припуски, точности вычислений, способы подходов-отходов, уровни и шаг обработки и т.д. Конкретный набор параметров зависит от типа операции. Тип операции может быть получен командой Cmd.Ptr["PPFun(TechInfo).Operation(1)"].Name.

Tool: ComplexType

Cmd.Ptr["PPFun(TechInfo).Tool"] - Параметры, относящиеся к инструменту, используемому в технологической операции.

 

ID: Integer

Cmd.Int["PPFun(TechInfo).Tool.ID"] - идентификатор (номер) инструмента

 

HolderID: Integer

Cmd.Int["PPFun(TechInfo).Tool.HolderID"] - идентификатор (номер) держателя инструмента

 

RevolverID: String

Cmd.Str["PPFun(TechInfo).Tool.RevolverID"] - строковый идентификатор револьверной головки

Workpiece: ComplexType

Cmd.Ptr["PPFun(TechInfo).Workpiece"] - Параметры, относящиеся к заготовке, используемой в технологической операции.

 

HolderID: String

Cmd.Str["PPFun(TechInfo).Workpiece.HolderID"] - строковый идентификатор держателя заготовки.

 

Ниже приведен пример доступа к свойствам операции при помощи оператора Cmd.

 

program PPFun

  if cld[1]=58 then begin ! TechInfo

    call AnalysePPFun

  end

end

 

sub AnalysePPFun

  OpType: String

  OpGroup: Integer

  

  ! String name of operation type: TSTRoughingWaterlineOp, TST2DContouringOp, TSTDrillOp, LatheRoughOp...

  OpType = Cmd.Ptr["PPFun(TechInfo).Operation(1)"].Name

 

  ! OperationGroup:

  !   1 - Milling

  !   2 - Lathe

  !   3 - Auxiliary

  !   4 - WireEDM

  OpGroup = Cmd.Int["PPFun(TechInfo).Operation(1).OperationGroup"]

 

  Output "; Operation type = " + OpType

  Output "; Operation comment = " + Cmd.Str["PPFun(TechInfo).Operation(1).Comment"]

  if OpGroup=1 then begin ! Milling

    Output "; Tool overhang = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).ToolSection.Tools(1).AxialOverhang"])

 

    if OpType="TSTRoughingWaterlineOp" then begin

      Output "; Axial stock = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).Stocks.Axial"])

      Output "; Radial stock = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).Stocks.Radial"])

    end

  end else if OpGroup=2 then begin ! Lathe

    Output "; Tool X overhang = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).ToolSection.Tools(1).Overhang.Value.X"])

    Output "; Tool Y overhang = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).ToolSection.Tools(1).Overhang.Value.Y"])

    Output "; Tool Z overhang = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).ToolSection.Tools(1).Overhang.Value.Z"])

 

    Output "; Axial stock = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).LatheStock.AxialValue"])

    Output "; Radial stock = " + Str(Cmd.Flt["PPFun(TechInfo).Operation(1).LatheStock.RadialValue"])

  end

subend

 

 

 

Сопутствующие ссылки:

Описание технологических команд

Постпроцессорная функция <PPFUN>