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

HELP Проблема с углами при 4ех осевом фрезеровании


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

Какая ситуация значит. 3ех осевой вертикальный фрезерный станок на котором установлен поворотный стол (4ая ось А). И не было бы проблемы если бы он не стоял как задняя бабка на токарном станке. То есть сейчас патрон на ней установлен в направлении -Х.

Проектируем 4 осевую обработку в фьючере. То есть идет фрезерование по 3 осям + поворотный стол вращает заготовку вокруг оси Х. Все классно. Постпроцессируем. Получаем код в котором вращение происходит в противоположенную сторону чем надо. Например:

X0.33 A-1.937F83.1

X6.92 F200.0

A-20.722F118.7

X0.33 A-24.556F83.1

Вращает против часовой. Хотя надо по часовой и в проекте все нормально вращает.

Возможно проблема с "осью заготовки" установы то крутим, а эту раз задашь и не развернешь.

Прошу помощи. Может в посте изменить что можно...

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


Какая ситуация значит. 3ех осевой вертикальный фрезерный станок на котором установлен поворотный стол (4ая ось А). И не было бы проблемы если бы он не стоял как задняя бабка на токарном станке. То есть сейчас патрон на ней установлен в направлении -Х.

Проектируем 4 осевую обработку в фьючере. То есть идет фрезерование по 3 осям + поворотный стол вращает заготовку вокруг оси Х. Все классно. Постпроцессируем. Получаем код в котором вращение происходит в противоположенную сторону чем надо. Например:

X0.33 A-1.937F83.1

X6.92 F200.0

A-20.722F118.7

X0.33 A-24.556F83.1

Вращает против часовой. Хотя надо по часовой и в проекте все нормально вращает.

Возможно проблема с "осью заготовки" установы то крутим, а эту раз задашь и не развернешь.

Прошу помощи. Может в посте изменить что можно...

Конечно в посте нужно поменять

<noindex>http://cnc-space.com.ua</noindex>

<noindex>http://surface.prom.ua</noindex>

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

Может в посте изменить что можно...

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

Какой контроллер станка и как заданы повороты в постпроцессоре?

Fanuc 0. Делался самими на основе стандартного из FC Fanuc 4-axis. Были сделаны незначительные изменения. В начале программы и перемещениях повороты задаются как:

<BOL> A[<ROT1-WIND>%360]

Подскажите, если не догоняю, где еще они могут задаваться.

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

Fanuc 0. Делался самими на основе стандартного из FC Fanuc 4-axis. Были сделаны незначительные изменения. В начале программы и перемещениях повороты задаются как:

<BOL> A[<ROT1-WIND>%360]

Подскажите, если не догоняю, где еще они могут задаваться.

У меня на HARDING-ах с FANUC-ами с поворотным столом справа (положительное вращение по ч. с., если смотреть на планшайбу) поворот задаётся <ROT1-MATH> c коэффициэнтом -1. Хотя, можно использовать <ROT1-MATH-R>.

В случае использования <ROT1-WIND>, можно так-же задать ему коэффициэнт (FACTOR) -1 в форматах слов.

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

У меня на HARDING-ах с FANUC-ами с поворотным столом справа (положительное вращение по ч. с., если смотреть на планшайбу) поворот задаётся <ROT1-MATH> c коэффициэнтом -1. Хотя, можно использовать <ROT1-MATH-R>.

В случае использования <ROT1-WIND>, можно так-же задать ему коэффициэнт (FACTOR) -1 в форматах слов.

УСПЕХ! :clap_1: Спасибо за подсказку с коэффициентом (FACTOR). Не знал. Ларчик просто открывался. Попробывал и <ROT1-MATH-R>, но через раз он в строке вместо отрицательного значения пишет 354.64 например. Может и с этим подскажите как быть. Но это для общего развития.

Сейчас с <ROT1-WIND> все заработало. Нашлепал программ. Будем пробывать. Думаю все хорошо будет. Спасибо! :smile:

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

Назрел еще вопрос. Как можно заставить пост выдавать кадры исключительно с угловыми перемещениями в приращениях???И реально ли это???

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

Назрел еще вопрос. Как можно заставить пост выдавать кадры исключительно с угловыми перемещениями в приращениях???И реально ли это???

G91A<@ROT1-WIND>

А зачем это нужно?

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

G91A<@ROT1-WIND>

А зачем это нужно?

Станок один интересно очень работает. Настроен скорее всего так. Потом разберемся. Спасибо. Попробую.
Ссылка на сообщение
Поделиться на других сайтах
  • 3 месяца спустя...

Дело еще в том, что поворотный стол настроен на перемещение в относительных координатах. То есть если надо повернуть c 0 на 20 градусов а потом на  24  будет:

A0.

A20.

A4.

 

 

Станок естественно работает в абсолютных. Если просто поставить G91 проблема не решится ( тем более упоминания о G91 быть не должно, т.к в одном кадре может быть и абсолютное перемещение по xyz и "относительное" по А). Поэтому надо просто чтобы он считал ось А в относительных. Как быть?

Изменено пользователем mikhail171
Ссылка на сообщение
Поделиться на других сайтах

Почитайте документацию по программированию станка.

Там должна быть описана ситуация когда в одном кадре выводиться и абсолютные координаты и относительный.

К букве может добавляться префикс например IA (по подобию HEIDENHAIN)

или буква может иметь для такого случая другое значение, например вместо  А быть U.

Ссылка на сообщение
Поделиться на других сайтах
А это разве не в относительных пишет?

Все правильно. A<@ROT1-WIND> это relative style как раз. Программа похожая получается)Спасибо!!!

Изменено пользователем mikhail171
Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

А как заставить постпроцессор рассчитывать перемещения в приращениях (XYZ)?. С поворотными осями разобрались.

 

И еще вопрос, непонятно как FC рассчитывает подачи. У меня задано 300мм/мин. В получившемся коде на движениях с поворотом везде стоит F53. Этож мало. Как на это повлиять или избавиться вовсе???? устроит просто F300. в начале.

 

G1 Z48.054 F300.0
X1037.372 A-206.7726F53.4
X924.202 Z55.968 A-227.1429F53.1
X923.767 Z55.992 A-227.2211
X922.877 Z56.0 A-227.3813F53.2
X323.415 A-335.285
Изменено пользователем mikhail171
Ссылка на сообщение
Поделиться на других сайтах

 

А как заставить постпроцессор рассчитывать перемещения в приращениях (XYZ)?. С поворотными осями разобрались.

 

И еще вопрос, непонятно как FC рассчитывает подачи. У меня задано 300мм/мин. В получившемся коде на движениях с поворотом везде стоит F53. Этож мало. Как на это повлиять или избавиться вовсе???? устроит просто F300. в начале.

 

G1 Z48.054 F300.0
X1037.372 A-206.7726F53.4
X924.202 Z55.968 A-227.1429F53.1
X923.767 Z55.992 A-227.2211
X922.877 Z56.0 A-227.3813F53.2
X323.415 A-335.285

 

Когда идет перемещение по всем осям , включая поворот , то FeatureCam пересчитывает угловую подачу .Так у Вас должно быть задано в постпроцессоре. Поэтому подача разная

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

Не найду решение такой проблеме:

Станок не хочет отрабатывать кадр  

 

X782.879 A285.8917

X-6.14 A2464.9521
 
Соответственно ему необходимо сделать порядка 6 вращений по оси А. Делает поворот порядка 20 градусов (возможно 24,64, не проверял). Можно ли настроить пост чтобы разбивал этот кадр с А не более 360градусов???
Изменено пользователем mikhail171
Ссылка на сообщение
Поделиться на других сайтах

 

А как заставить постпроцессор рассчитывать перемещения в приращениях (XYZ)?. С поворотными осями разобрались.

 

И еще вопрос, непонятно как FC рассчитывает подачи. У меня задано 300мм/мин. В получившемся коде на движениях с поворотом везде стоит F53. Этож мало. Как на это повлиять или избавиться вовсе???? устроит просто F300. в начале.

 

Для вывода координат в приращениях в постпроцессоре используется символ @ (например, X<@X-COORD>).

Для задания подачи при непрерывной 4-осевой и 5-осевой обработке рекомендуется использовать инверсионную подачу F<ANG-INVTIME> (G93). Если она не поддерживается станком, то -  F<ANG-CFEED>.

Ссылка на сообщение
Поделиться на других сайтах
Можно ли настроить пост чтобы разбивал этот кадр с А не более 360градусов???
 

Надо разбивать на углы меньше 180° иначе может начать крутиться не в ту сторону.

Моя реализация ниже:

##### BEGIN LINEAR MOVE FORMAT #####
<IF><WRAP><THEN>
<IF>[lt(fabs(<@ROT1-WIND>),179)]<THEN>[# if move length is less than 180 output move ]
{N<SEQ>}{<MOTION>}{X<X-COORD>}{Y<Y-COORD>}{Z<Z-COORD>}
<IFNOT>[apxeq(<@ROT1-WIND>,0,.01)]<THEN>
<INCLUDE:IndexAngle>{F[prev_feed=<ANG-FPM>]}
<ELSE>
<IFNOT>[apxeq(<FEED>,prev_feed)]<THEN>
{F[prev_feed=<FEED>]}
<ENDIF>
<ENDIF>
<EOB>
<ELSE>
[# if move length greater than 180, break it into pieces ]
[:rev=ceil(fabs(<@ROT1-WIND>)/179.0)][# number of moves required with each move less than 90 ]
[:ang_pos_inc=(<@ROT1-WIND>)/rev][# each move increment ]
 
[# get initial angle and swap direction]
[:angle=<$ROT1-WIND>]
 
[:x_pos=<$X-COORD>]
[:each_rev_x=<@X-COORD>/rev]
<INCLUDE:WrapPosDir>
<ENDIF>
 
<ELSE>
{N<SEQ>}{<MOTION>}{<COMP-STAT>}
<IF><COMP-START><THEN>
D<COMP-NUM>
<ENDIF>
{X<X-COORD>}{Y<Y-COORD>}{Z<Z-COORD>}{F<FEED>}<EOB>
<ENDIF>
##### END LINEAR MOVE FORMAT #####
 
##### BEGIN WrapPosDir CUSTOM FORMAT #####
[:angle=angle+ang_pos_inc]
[:rev=rev-1]
{N<SEQ>}X[x_pos=x_pos+each_rev_x]A[angle%360]<INCLUDE:ModalFeed><EOB>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
<IF>[gt(rev,0)]<THEN>
<INCLUDE:PosWrapAngle>
<ENDIF>
##### END WrapPosDir CUSTOM FORMAT #####
 
 
##### BEGIN PosWrapAngle CUSTOM FORMAT #####
[:angle=angle+ang_pos_inc]
{N<SEQ>}X[x_pos=x_pos+each_rev_x]A[angle%360]<INCLUDE:ModalFeed><EOB>
[:rev=rev-1]
##### END PosWrapAngle CUSTOM FORMAT #####
Ссылка на сообщение
Поделиться на других сайтах

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...