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

Sinumerik 828D работа с координатой А


_Ghost_

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

Доброго времени суток. Опишу проблему вкратце. Очень много деталей обрабатываю на 4-й координате (A). Программирую один контур, а дальше с помощью макропеременных создаю массив, который размножает мою программу в нужное число раз (проворачивая координату А и смещая по Х). Программы пишу в 2D, но координату Y заменяю на средствами постпрацессора (Имитация роторной обработки). На фануке все работает отлично. кусок кода программы ниже. Пример изготавлеваемых изделий на фото.

Скрытый текст

 

O0001(KUB)
( Vn. _______ 00.00.00 )
( T=0:00:00 -> 00 Detalej)
N2#1=1.(3)(KOL.LINE - X)
N4#2=1.(4)(KOL.LINE - Y)
N6#6=0.(DXN)
N8#5=0.(DYN)
N10#3=1.(1)(FIRST.LINE - X)
N12#4=1.(1)(FIRST.LINE - Y)
N14(KONEC PEREMENNIH)
N1011T1M6(FREZA 10.)
N16G54G17G0G90
N18S500M3
N20M8
N22WHILE[#4LE#2]DO1
N24WHILE[#3LE#1]DO2
N26G52X[#6+[30.*[#3-1]]]A[#5+[40.*[#4-1]]]
N28M11
N30G0A0
N32G08P1

Какие-то перемещения_________________________

N76X65.
N78A20.054
N80X35.
N82A28.648
N84X30.

Какие-то перемещения_________________________

N156G0Z190.
N158#3=#3+1
N160END2
N162#3=1.
N164#4=#4+1
N166END1
N168#4=1.
N170G52X0A0
N172M9
N174G08P0
N176G53G0Z0.
N178G49
N180G53X#900Y0.M5
N182M30

 

 

У Sinumerik 828D , вместо G52 фанука, используется команда TRANS. Но эта команда не работает с координатой А.

TRANS X=(R6+(50.*(R3-1))) A=(R15+R5+(180.*(R4-1)))

 Команда TRANS работает с осами X Y Z, а для поворота необходимо использовать команду ROT. Но при записи строк:

TRANS X=(R6+(50.*(R3-1)))

ROT A=(R15+R5+(180.*(R4-1)))

проворота по координате А не происходит.

 

Подскажите может существуют отдельно какие-то команды одновременного смещения и проворота осей.

Заранее благодарен.

 

 

 

 

Кольцо.png

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


Пробовал. Координата А стоит на месте. Станок ошибку к записи ATRANS A или TRANS A не выдает, но никаких перемещений не делает. Да и по литературе эти команды используются только с X Y Z. Пробовал :

TRANS X... ATRANS A...

TRANS X... TRANS A...

TRANS X... ROT A...

TRANS X... AROTA...

Никаких реакций.

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

По идее при использовании ROT необходимо указывать вокруг какой оси повернуть X,Y или Z. Это вращение координат, а не физический поворот оси.На 3+2 для таких целей используется CYCLE800. Возможно у вас тоже.

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

Да все верно, команды rot и trans работают только с осями X Y Z. С этим разобрался. Про CUKLE800 уже тоже читаю. Буду пробовать с понедельника. Но всеравно спасибо.

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

команды смещения нулей меняют точку отсчёта, а не двигают оси.  На экране должны поменяться значения положения осей. Для движения надо выполнить X...y....z....a.....

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

Все верно. Но если расписывать грамотным языком вопрос, то получится "война и мир" . но спасибо за поправку. С sinumerik не так давно работаю и аналргию взял с фанука, где вышеописанный метод прекрасно справляется. Но немцы не могут без какой-нибудь фигни. Вот и приходится рытся в интернете в помюисках правды. Но судя по описаничм cycle800 может подойти. Надо на стойке пробовать.

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

Пробую на стойке CYCLE800. но в настройках цикла есть параметр имени блока. Что это должен быть за блок, где от должен лежать и что в нем должно быть?

Cycle800.jpg

Ссылка на сообщение
Поделиться на других сайтах
  • 2 года спустя...
В 08.08.2017 в 08:12, _Ghost_ сказал:

Спасибо. Меню нашел. Теперь буду разбираться с настройками.

Актуальный вопрос... 

Как программно сместить ось С 

Как будто в офсетах на ось С стоит смещение допустим в 55 градусов... Но сделать это программно.? 

При этом чтобы было отслеживание смещения по оси x и у 5 осевой станок

 

 

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

Команда TRANS и ROT взаимоотменяют друг друга.

Если после TRANS нужно использовать поворот, тогда надо писать

TRANS

AROT

Если сначала повернуть, а потом сместить, то

ROT

ATRANS

Попробуйте

TRANS X=(R6+(50.*(R3-1)))

AROT A=(R15+R5+(180.*(R4-1)))

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

Проблема давно решилась. Решил ее математически 

К координате A постоянно добавляю переменную, которая пересчитывается при каждом новом положении. Получилось вот так: 

.......................

N30TRANS X=(R6+(50.*(R3-1)))
N32R25=(R15+R5+(120.*(R4-1)))
N34G0X-0.53Y0.A=(8.387+R25)
N36A=(8.387+R25)
N38Z112.
N40A=(8.387+R25)
N42G1Z107.A=(8.387+R25)F300
N44X0.043A=(8.387+R25)F900
N46X0.325A=(8.372+R25)
N48X0.604A=(8.347+R25)
N50X0.878A=(8.311+R25)

......................

Может кому пригодится. 

 

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

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

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

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

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

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

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

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

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

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

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




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