Перейти к публикации

Heidenhain "Apparent" Format


mikromashina

Рекомендованные сообщения

if ( WorkplaneA != 0.0 or WorkplaneB != 0.0 or WorkplaneC != 0.0 )

N ; G6 190 ; " WORKING PLANE ; NEW WORKING PLANE ORIENTATION"

N ; G6 191 ; WPA WorkplaneA =C ; WPB WorkplaneB =C ; WPC WorkplaneC =C

N ; " L B+Q121 C+Q122" ; FMAX ; M4 126

Партайгеноссе, вопрос по хелпу: что означает оператор if ( WorkplaneA != 0.0 or WorkplaneB != 0.0 or WorkplaneC != 0.0 ) ?

В каких случаях в datum shift ставят, например, WPB WorkplaneB =C, и в каких толькоWPB WorkplaneB ?

Есть, грубо говоря, datum shift из DMU125

# | HEAD | TABLE | #

# ---------------|-------|-------| #

# | A axis | - | - | #

# |---------------|-------|-------| #

# | B axis | - | YZ | #

# |---------------|-------|-------| #

# | C axis | - | Z | #

#602

define block datum shift

# If C axis has been "wound up" reduce the angle using M94

# and reset to C0 to prevent a long "unwind"

if ( elpos > 360.0 or elpos < -360.0 )

N ; " ; WARNING: reducing the angle! "

N ; " L C0 F MAX M94 "

end if

# turn off RTCP (with a conditional comment) *DON'T* make

# the code itself conditional, otherwise there is always a danger

# it might get missed if the option file gets revisited later

#

if ( word{M3} == 128 )

N ; " ; "

N ; " ; END RTCP SECTION "

N ; " ; "

end if

N ; G1 ; M3 129

N ; " ; "

# ... for safety's sake, turn off any previous datum/orientation shift

N ; " CALL LBL 170"

# ... and call the next datum/orientation shift

N ; G6 70 ; " DATUM SHIFT"

N ; G6 71 ; XWK workplaneX

N ; G6 72 ; YWK workplaneY

N ; G6 73 ; ZWK workplaneZ

N ; G6 190 ; " WORKING PLANE"

N ; G6 191 ; AWK WorkplaneA =C ; BWK WorkplaneB ; CWK WorkplaneC =C

N ; G1 ; " B+Q121 C+Q122" ; FQ 4 ; M4 126

N ; " ; "

end define

Надо переделать datum shift под другую кинематику (оси уже поменял).

Ссылка на сообщение
Поделиться на других сайтах


Условие выполняется, и, видимо, выводятся дальнейшие приведенные кадры, если какой-то из трех углов Эйлера не равен 0.

WPB WorkplaneB =C - означает, что даже если пространственный угол В - модальный и не изменялся, тем не менее обязательно должен быть выведен.

В datum shift надо всегда выводить все три угла (т. е. прописывать ), потому что цикл 19 того обязательно требует. Ну и во-вторых, даже если б и можно было выводить только измененные углы, то так безопаснее - вдруг программа будет запускаться не с начала, а какой-то из углов в цикле 19 не выведен, т. к. не изменился с предыдущего вызова цикла 19 - обработка пойдет неправильно.

Соответственно, от кинематики это не зависит.

Ссылка на сообщение
Поделиться на других сайтах

Весьма благодарен за разъяснение!

Тем не менее, в приведенном мною примере BWK WorkplaneB без =с и все замечательно работало.

На другой кинематике пляски с бубном ни к чему не приводили :confused_1:

Пришлось обходиться PM-POST.

Ссылка на сообщение
Поделиться на других сайтах

На другой кинематике пляски с бубном ни к чему не приводили :confused_1:

Пришлось обходиться PM-POST.

А насчет чего плясали? Я не понял проблемы
Ссылка на сообщение
Поделиться на других сайтах

5-осевая непрерывная работала, а 3+2 выводилась некорректно, отсюда и подозрения на datum shift.

Ссылка на сообщение
Поделиться на других сайтах

5-осевая непрерывная работала, а 3+2 выводилась некорректно, отсюда и подозрения на datum shift.

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

Если трансформация СК происходит неправильно - скорее всего не тот тип трансформации СК установлен в настройках поста. Если это Хайденхайн - для такой стойки тип трансформации - Cтатическая XYZ, то есть оси новой СК будут поворачиваться относительно осей глобальной СК.

Ссылка на сообщение
Поделиться на других сайтах

Гм.. А вы не могли бы уточнить, где это усанавливать? :g:

Может быть одно из трех: apparent, machine tool, none ? Вроде исходный пост вполне себе рабочий, и я надеялся, что на другой кинематике сработает после описания этой кинематики.

Ссылка на сообщение
Поделиться на других сайтах

Может вот это Вам поможет.

workplane angle convention = 1
Если использовать три параметра для трансформации - то workplane angles = apparent, если два - то workplane angles = machine tool
Ссылка на сообщение
Поделиться на других сайтах
  • 3 месяца спустя...

Может вот это Вам поможет.

workplane angle convention = 1
Если использовать три параметра для трансформации - то workplane angles = apparent, если два - то workplane angles = machine tool
Вот у меня тож проблемка если 19 цикл не зависит от кинематики то какого х у меня некорректно программы выводятся... и в основном это происходит если ск разворачивается более чем на 90 град а в цикле 19 разворот идет через А.... вот и кстати как вывести программу 3+2 без 19 цикла а с М128?
Ссылка на сообщение
Поделиться на других сайтах

if ( WorkplaneA != 0.0 or WorkplaneB != 0.0 or WorkplaneC != 0.0 )

N ; G6 190 ; " WORKING PLANE ; NEW WORKING PLANE ORIENTATION"

N ; G6 191 ; WPA WorkplaneA =C ; WPB WorkplaneB =C ; WPC WorkplaneC =C

N ; " L B+Q121 C+Q122" ; FMAX ; M4 126

Партайгеноссе, вопрос по хелпу: что означает оператор if ( WorkplaneA != 0.0 or WorkplaneB != 0.0 or WorkplaneC != 0.0 ) ?

В каких случаях в datum shift ставят, например, WPB WorkplaneB =C, и в каких толькоWPB WorkplaneB ?

Есть, грубо говоря, datum shift из DMU125

# | HEAD | TABLE | #

# ---------------|-------|-------| #

# | A axis | - | - | #

# |---------------|-------|-------| #

# | B axis | - | YZ | #

# |---------------|-------|-------| #

# | C axis | - | Z | #

#602

define block datum shift

# If C axis has been "wound up" reduce the angle using M94

# and reset to C0 to prevent a long "unwind"

if ( elpos > 360.0 or elpos < -360.0 )

N ; " ; WARNING: reducing the angle! "

N ; " L C0 F MAX M94 "

end if

# turn off RTCP (with a conditional comment) *DON'T* make

# the code itself conditional, otherwise there is always a danger

# it might get missed if the option file gets revisited later

#

if ( word{M3} == 128 )

N ; " ; "

N ; " ; END RTCP SECTION "

N ; " ; "

end if

N ; G1 ; M3 129

N ; " ; "

# ... for safety's sake, turn off any previous datum/orientation shift

N ; " CALL LBL 170"

# ... and call the next datum/orientation shift

N ; G6 70 ; " DATUM SHIFT"

N ; G6 71 ; XWK workplaneX

N ; G6 72 ; YWK workplaneY

N ; G6 73 ; ZWK workplaneZ

N ; G6 190 ; " WORKING PLANE"

N ; G6 191 ; AWK WorkplaneA =C ; BWK WorkplaneB ; CWK WorkplaneC =C

N ; G1 ; " B+Q121 C+Q122" ; FQ 4 ; M4 126

N ; " ; "

end define

Надо переделать datum shift под другую кинематику (оси уже поменял).

чегото не могу разобраться я где че менять (тот же пост редактирую) под другую кинематику

чегото не могу разобраться я где че менять (тот же пост редактирую) под другую кинематику

ВОТ ЧТО ПОЛУЧАЕТСЯ 0 BEGIN PGM 20 MM

1 ; Date : 22.12.10 - 21:10:29

2 ; Programmed by : Кошка

3 ; DP Version : 1516 Option File : DMU50eVo-iTNC530 - копия

4 ; Output Workplane : 1

5 ;

6 BLK FORM 0.1 Z X100.0 Y-70.199 Z49.004

7 BLK FORM 0.2 X-100.0 Y139.801 Z-49.0

8 L M129

9 LBL 170

10 CYCL DEF 7.0 DATUM SHIFT

11 CYCL DEF 7.1 X0.0

12 CYCL DEF 7.2 Y0.0

13 CYCL DEF 7.3 Z0.0

14 CYCL DEF 19.0 WORKPLANE

15 CYCL DEF 19.1

16 LBL 0

17 L Z-1 FMAX M91

18 ; TOOL NUMBER : 1

19 ; TOOL TYPE : TIPRADIUSED

20 ; TOOL ID : 5

21 ; TOOL DIA. 20.000 TIP RAD 0.400 LENGTH 170.000

22 TOOL CALL 1 Z S1500 DL+0.0 DR+0.0

23 Q1= +500 ; PLUNGE FEEDRATE

24 Q2= +1000 ; CUTTING FEEDRATE

25 Q3= +3000 ; RAPID SKIM FEEDRATE

26 Q4= +50000 ; RAPID FEEDRATE

27 CYCL DEF 32.0 TOLERANCE

28 CYCL DEF 32.1 T0.100

29 L M03

30 L M129

31 ;

32 CALL LBL 170

33 CYCL DEF 7.0 DATUM SHIFT

34 CYCL DEF 7.1 IX+16.318

35 CYCL DEF 7.2 IY+48.097

36 CYCL DEF 7.3 IZ-5.492

37 CYCL DEF 19.0 WORKING PLANE

38 CYCL DEF 19.1 A+90.000 B+0.0 C+180.000

39 L B+Q121 C+Q122 FQ4 M126

40 ;

41 ; =========

42 ; TOOLPATH : 20

43 ; WORKPLANE : 6

44 ; =========

45 L X+16.318 Y-99.508 Z+59.004 FQ3

46 L Y-172.508 M08

47 CYCL DEF 203 DEEP HOLE DRILL~

Q200= 4.999 ; CLEARPLANE~

Q201= -98.000 ; HOLE DEPTH~

Q206= 500.000 ; PLUNGE FEEDRATE~

Q202= 98.000 ; PECKING DEPTH~

Q210= 0.0 ; DWELL TIME AT TOP~

Q203= +0.906 ; SURFACE COORDINATE~

Q204= 58.099 ; 2ND SET-UP CLEARANCE~

Q212= 0.200 ; PECK DECREMENT~

Q213= 1 ; NUMBER OF PECKS~

Q205= 0.050 ; MIN. PECK DEPTH~

Q211= 0.0 ; DWELL TIME AT BOTTOM~

Q208= 3000.000 ; RETRACT FEEDRATE~

Q256= 0.200 ; CHIPBREAK DIST.

48 L X+16.318 Y-172.508 R0 F MAX M99

49 L Z+59.004 FQ4

50 L M09

51 L M129

52 L M127

53 CALL LBL 170

54 L Z-1 FMAX M91

55 L B0.0 C0.0 R0 F MAX M94

56 L M05

57 CYCL DEF 32.0 TOLERANCE

58 CYCL DEF 32.1

59 TOOL CALL 0

60 L M30

61 ;

62 END PGM 20

разворот по А 90 а по С 180 бредятинакакаято

Ссылка на сообщение
Поделиться на других сайтах

Вот у меня тож проблемка если 19 цикл не зависит от кинематики то какого х у меня некорректно программы выводятся... и в основном это происходит если ск разворачивается более чем на 90 град а в цикле 19 разворот идет через А....

Вопрос неясен. Если станок неправильно обрабатывает, то потому, что недостаток цикла 19 по сравнению с более новым PLANE в том, что его работа зависит от параметров станка. Там и описывается, какие углы использует цикл 19 - пространственные или станочные. Если постпроцессор неправильно выводит, то: в PM-POST настройки => конфигурация многоосевой => метод расчета. В DuctPost:

Если использовать три параметра для трансформации - то workplane angles = apparent, если два - то workplane angles = machine tool

вот и кстати как вывести программу 3+2 без 19 цикла а с М128?

В PM-POST: настройки => контроль координат, в таблице строка "3+2", столбец "Pre-Set", выбрать " как многоосевой".

В DuctPost (могу ошибаться):

workplane angles = none

разворот по А 90 а по С 180 бредятинакакаято

что не устраивает-то?
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • lem_on
      ну с дуру известно что сломать можно.
    • Viktor2004
      руку привязки так сломать легко
    • lem_on
      По моему вполне логично если станок вывалится в ошибку если рука не доехала до места. У меня так же если кулачки или деталь на пути, просто пихаеш ее до места и станок опять активен. Но нынешние пановья даже не могут написать модель станка.
    • Viktor2004
      Я согласен что скорее всего проблема механическая Но если логика прописана криво и возможно не предусмотрела остановку в промежуточном состоянии, разве не логично будет попробовать принудительно подав напряжение дернуть эту руку вверх-вниз? Возможно то что туда попало выпадет  
    • Guhl
      Если оставить за скобками вопрото том, что до м19 работает нормально, а после нет, то вы не считали сколько у него реально импульсов на оборот? с помощью стороннего плк, например  А если ориентацию м5 снимать, а не м20?
    • lem_on
      Что это за станок такой в котором сразу ладер ковырять надо, даже не смотря на возможность механической проблемы? Или профдеформация?
    • Viktor2004
      не сразу я понял в чем вопрос. Долго соображал что такое режим управления скоростью. При завершении ориентации PMC снимает сигнал G70.6 ? И если он после снятия сигнала продолжает удерживать шпиндель, при каких условиях эта ориентация все же снимается? После нажатия аварийного грибка или еще как?
    • Viktor2004
      Ладдер пришлите. Будем принудительно пробовать поднимать и опускать
    • streamdown
      Коллеги приветствую! IPS 8. Подскажите пожалуйста, кто какое серверное железо использует? Интересуют параметры при одновременной работе, ну например, 400 пользователей онлайн
    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
×
×
  • Создать...