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

oi-md поворотный стол


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

Доброго времени суток...

 

Имеется фрезерно-расточной горизонтальной станок с данной ЧПУ... При повороте стола, если деталь не установлена в центр естественно происходит расхождение в координатах...

 

Есть идея пересчитывать в постпроцессоре координаты так вот такой вопрос... Подскажите в каких переменных станка хранятся данные о нуле станка и о нуле детали (Ж54 и так далее)...

 

Или есть какой нибудь способ попроще ?

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


G54                               55                          56  ..........          58

X    5221                      5241                   5261                  5301

Y    5222                       5242                  5262                   5302

Z    5223                       5243                  5263                  5303

4    5224                        5244                  5264                   5304         и т.д.    мануала под рукой нет на Фанук. если надо могу завтра глянуть насчет значений переменной.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 15.06.2017 в 20:23, z90 сказал:

G54                               55                          56  ..........          58

X    5221                      5241                   5261                  5301

Y    5222                       5242                  5262                   5302

Z    5223                       5243                  5263                  5303

4    5224                        5244                  5264                   5304         и т.д.    мануала под рукой нет на Фанук. если надо могу завтра глянуть насчет значений переменной.

это получается в программе для станка мы можем взять значение из написав данную строку #5221 ? просто идея есть а как ее исполнить пока не сильно понимаю... ( 

Ссылка на сообщение
Поделиться на других сайтах
В 15.06.2017 в 15:17, BaZuZu сказал:

Есть идея пересчитывать в постпроцессоре координаты так вот такой вопрос... Подскажите в каких переменных станка хранятся данные о нуле станка и о нуле детали (Ж54 и так далее)...

 

Или есть какой нибудь способ попроще ?

Мы делали расчет значений в G57, например, по подпрограмме. Но у нас вертикально-фрезерный с поворотной осью вокруг X.

G65P60A54U0V0W-14.9B25H57 
Здесь A54 - исходный ноль, который определил наладчик и внес в G54

U0 V0 W-14.9 - чертежные смещения новой нулевой точки относительно первой по X, Y, Z

B25 - поворот детали

H57 - Значения рассчитанной нулевой точки записываются в G57

 

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

берете в программе пишите #5221 = 210.20 и в Оффсет  в 54 систему координат по Х после прочтения этой строчки стойкой занесется это значение., а то которое было исчезнет в Лету. ну там конечно надо смотреть в G90  или  G91 это дело вносить надо. то бишь конкретно что хотите. поменять начисто или сместить(подкорректировать)

Ссылка на сообщение
Поделиться на других сайтах
В 26.06.2017 в 11:12, A_1 сказал:

Мы делали расчет значений в G57, например, по подпрограмме. Но у нас вертикально-фрезерный с поворотной осью вокруг X.

G65P60A54U0V0W-14.9B25H57 

 

После прочтения этой строчки он занесет новые значения в G57 ?

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

 

Да, но в станке должна быть соответствующая подпрограмма. У нас вертикальный станок, поэтому наша не подойдет.

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

 

Да, но в станке должна быть соответствующая подпрограмма. У нас вертикальный станок, поэтому наша не подойдет.

 

А переделать ее нельзя ? Как она хотя бы выглядит. Может можно будет что то с ней сделать ...

В 26.06.2017 в 17:11, z90 сказал:

берете в программе пишите #5221 = 210.20 и в Оффсет  в 54 систему координат по Х после прочтения этой строчки стойкой занесется это значение., а то которое было исчезнет в Лету. ну там конечно надо смотреть в G90  или  G91 это дело вносить надо. то бишь конкретно что хотите. поменять начисто или сместить(подкорректировать)

 

Идея как бы не нова. Если станок знает координаты центра стола и они где то хранятся. То установив деталь не по центру, и привязав ее. Чтобы через параметры после поворота он пересчитывал координаты относительно центра стола. Ну это конечно идеально было бы... Ну хотя бы как то.. Может переписывая в разные настроечные точки.

Ссылка на сообщение
Поделиться на других сайтах
Только что, BaZuZu сказал:

 

А переделать ее нельзя ? Как она хотя бы выглядит. Может можно будет что то с ней сделать ...

Думаю, можно)

Вот текст

O0060(CCS) 
(NAT 0 6004 = 0)  ; это значение параметра для "правильного" расчета арктангенса
(G65 P60 A54 U-10 V0 W-15 B20 H55)  ; пример вызова в основной программе
IF[#1LT54]THENGOTO100
IF[#1GT59]THENGOTO100
IF[#11LT54]THENGOTO100 
IF[#11GT59]THENGOTO100 
#27=#[5200+[#1-53]*20+1]+#21 
#28=#[5200+[#1-53]*20+2]+#22 
#29=#[5200+[#1-53]*20+3]+#23 
#30=#[5200+[#1-53]*20+4]+#2
#31=-161.78 ; координата оси вращения 4-й оси по Y
#32=-550.97 ; координата оси вращения 4-й оси по Z
#33=#28-#31
#134=#29-#32 
#135=#33*#33 
#136=#134*#134 
#137=SQRT[#135+#136] 
#138=ATAN[#134]/[#33]
#140=#31+#137*COS[#138+#2] 
#141=#32+#137*SIN[#138+#2] 
#[5200+[#11-53]*20+1]=#27
#[5200+[#11-53]*20+2]=#140 
#[5200+[#11-53]*20+3]=#141 
#[5200+[#11-53]*20+4]=#30
N100M99

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

Вот моё решение подходит для позиционной обработке 3+1.

 

Расчетные формулы

 

X1=X0*COS(B1)-Z0*SIN(B1)

Z1=X0*SIN(B1)+Z0*COS(B1)

,где X0 и Z0 – координаты нулевой точки при B0,

B1- угол поворота

 

Как это реализовано на практике:

 

(POLOGENIE REFERENTY IN B0) 
#500=300(Z IN B0) 
#501=#663(X IN B0) 
#502=#664(Y IN B0) 

 

(POLOGENIE REFERENTY IN B-4) 
#512=[#501*SIN[-4]+#500*COS[-4]](Z IN B-4) 
#513=[#501*COS[-4]-#500*SIN[-4]](X IN B-4) 
#514=#502(Y IN B-4)

 

В каждый блок вставляем локальное смещение системы координат

 

G0B[-4+#529]
G52Z#512X#513Y#514

 

Координаты цента стола храним в G54

 

Изменено пользователем Metal_Cutter
Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, A_1 сказал:

Думаю, можно)

Вот текст

O0060(CCS) 
(NAT 0 6004 = 0)  ; это значение параметра для "правильного" расчета арктангенса
(G65 P60 A54 U-10 V0 W-15 B20 H55)  ; пример вызова в основной программе
IF[#1LT54]THENGOTO100
IF[#1GT59]THENGOTO100
IF[#11LT54]THENGOTO100 
IF[#11GT59]THENGOTO100 
#27=#[5200+[#1-53]*20+1]+#21 
#28=#[5200+[#1-53]*20+2]+#22 
#29=#[5200+[#1-53]*20+3]+#23 
#30=#[5200+[#1-53]*20+4]+#2
#31=-161.78 ; координата оси вращения 4-й оси по Y
#32=-550.97 ; координата оси вращения 4-й оси по Z
#33=#28-#31
#134=#29-#32 
#135=#33*#33 
#136=#134*#134 
#137=SQRT[#135+#136] 
#138=ATAN[#134]/[#33]
#140=#31+#137*COS[#138+#2] 
#141=#32+#137*SIN[#138+#2] 
#[5200+[#11-53]*20+1]=#27
#[5200+[#11-53]*20+2]=#140 
#[5200+[#11-53]*20+3]=#141 
#[5200+[#11-53]*20+4]=#30
N100M99

О боги ))) будем разбираться )))

2 часа назад, Metal_Cutter сказал:

Вот моё решение подходит для позиционной обработке 3+1.

 

Расчетные формулы

 

X1=X0*COS(B1)-Z0*SIN(B1)

Z1=X0*SIN(B1)+Z0*COS(B1)

,где X0 и Z0 – координаты нулевой точки при B0,

B1- угол поворота

 

Как это реализовано на практике:

 

(POLOGENIE REFERENTY IN B0) 
#500=300(Z IN B0) 
#501=#663(X IN B0) 
#502=#664(Y IN B0) 

 

(POLOGENIE REFERENTY IN B-4) 
#512=[#501*SIN[-4]+#500*COS[-4]](Z IN B-4) 
#513=[#501*COS[-4]-#500*SIN[-4]](X IN B-4) 
#514=#502(Y IN B-4)

 

В каждый блок вставляем локальное смещение системы координат

 

G0B[-4+#529]
G52Z#512X#513Y#514

 

Координаты цента стола храним в G54

 

У вас это идет как подпрограмма, которая должна храниться на стойке ? 

Или каждый раз выдается постом ?

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

О боги ))) будем разбираться )))

Обращайтесь, если возникнут вопросы)

Ссылка на сообщение
Поделиться на других сайтах
15 часов назад, Metal_Cutter сказал:

Частично постом, частично правлю сам.

Ну я так думаю угол поворота вы вставляете сами или оператор на стойке ?

 

(POLOGENIE REFERENTY IN B0) 
#500=300(Z IN B0) 
#501=#663(X IN B0) 
#502=#664(Y IN B0) 

 

Вот это должно быть вначале когда мы обрабатываем в B0?

 

(POLOGENIE REFERENTY IN B-4) 
#512=[#501*SIN[-4]+#500*COS[-4]](Z IN B-4) 
#513=[#501*COS[-4]-#500*SIN[-4]](X IN B-4) 
#514=#502(Y IN B-4)

 

G0B[-4+#529]
G52Z#512X#513Y#514

А вот это при начале обработки отличном от В0 в данном случае В-4 ?

 

 

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, BaZuZu сказал:

Ну я так думаю угол поворота вы вставляете сами или оператор на стойке ?

На чертеже или на эскизе пишу ему как установить деталь. Еще забыл уточнить в переменной #529 хранится угол доворота стола для удобства, который потом учитывается во всех блоках обработки. Этот угол заносит сам оператор. Хотя работаю над тем, чтобы это дела сам станок с помощью измерительного щупа.

 

По остальным вопросам - Вы все правильно поняли.

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Metal_Cutter сказал:

На чертеже или на эскизе пишу ему как установить деталь. Еще забыл уточнить в переменной #529 хранится угол доворота стола для удобства, который потом учитывается во всех блоках обработки. Этот угол заносит сам оператор. Хотя работаю над тем, чтобы это дела сам станок с помощью измерительного щупа.

 

По остальным вопросам - Вы все правильно поняли.

Спасибо.... !!!

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...
В 28.06.2017 в 13:58, A_1 сказал:

Думаю, можно)

Вот текст

blablabla
N100M99

А Вы сами проверяли это чудо? Ну во-первых у вас Y. А в горизонтально расточном X.

Во-вторых: Где проверка на квадранты? В какой квадрант перекидывается точка? У Вас всегда значения получаются в первом квадранте. Все с плюсом.

В-третьих: у горизонтально-расточного есть ось W. А если она выдвинута? Z не будет меняться. Следовательно расчеты будут не правильными.

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Forza сказал:

А Вы сами проверяли это чудо? Ну во-первых у вас Y. А в горизонтально расточном X.

Во-вторых: Где проверка на квадранты? В какой квадрант перекидывается точка? У Вас всегда значения получаются в первом квадранте. Все с плюсом.

В-третьих: у горизонтально-расточного есть ось W. А если она выдвинута? Z не будет меняться. Следовательно расчеты будут не правильными.

Добрый день. Программу привел для примера. Да, если ось поворота стола не X, программа не подойдет. Проверка на квадранты не требуется, т.к. функция ATAN[...]/[...] возвращает угловое положение точки, учитывая квадрант ее расположения.

Ну и, конечно, если есть в вашем станке ось W, ее значение нужно учитывать.

Эту программу проверял, на вертикально-фрезерном станке она работает правильно, при любых исходных данных.

На основе этой, у нас появилась новая программа, для 5-осевого станка: расчет положения нулевой точки при изменении положения двух круговых осей. Тоже прошла проверку).

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, A_1 сказал:

Добрый день.

Добрый.

Я написал уже себе для горизонтально-расточного. И W учел. Все работает. Взял вашу за основу. Спасибо.

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

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

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

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

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

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

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

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

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

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

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




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