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

Смещение нуля 840D


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

Подскажите, пожалуйста, как организовать отработку куска программы в нескольких местах детали внутри только одного офсета G54.

Вопрос в том, что циклы 800 обнуляют TRANS, $P_PFRAME выдаёт ошибку на станке, а $P_UIFR почему-то обнуляет значения X Y Z в G54.

 

 

 

 

Что я неправильно делаю?

 


 

 

 


 


 

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


14 часа назад, DJ Astro сказал:

Подскажите, пожалуйста, как организовать отработку куска программы в нескольких местах детали внутри только одного офсета G54.

Вопрос в том, что циклы 800 обнуляют TRANS, $P_PFRAME выдаёт ошибку на станке, а $P_UIFR почему-то обнуляет значения X Y Z в G54.

Что я неправильно делаю?

Сложно так образно.

CYCLE800 отменяет трансы, потому как, видимо, расчеты, которые он использует, их не учитывают. А почему переписывает рабочие смещения? Не могу сказать, не разбирался с этим циклом. Может там другое рабочее смещение надо указать,чтобы он его переписал. А по умолчанию переписывает G54.

Пока приходит в голову только одно - сохранить в переменных значения до активации цикла 800.

Если надо G54 сохранить (грубые, не точные), то

R100 = $P_UIFR[1,X,TR] итд... И так по все осям. Если точными пользуетесь еще, тогда вроде для оси X и G54 будет R100 = $P_UIFR[1,X,FI]. Итд.

Решение не самое лучшее, но тем не менее, должно работать.

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

Я делал так: $P_UIFR[1]=CFINE(X,50).

Вам нужно в смещение повышенной точности записать число? Тогда,

$P_UIFR[1,X,FI]=50

Другие регистры памяти изменены не будут.

 

 

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

s_liam, A_1, спасибо, что откликнулись!

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

Да и вцелом вариант со смещением обработки через изменение положения нуля в MCS не подходит, если деталь не выставлена параллельно этой MCS. Иначе смещение идёт в СК станка без учёта криво стоящей детали.

Вроде бы нашёлся такой вариант:

Заносить смещение в Basic Reference $P_SETFR=CTRANS(X,_,Y,_,Z,_)
И предварительно внести туда же и ротацию детали, а не в G54, как обычно делает оператор.
Тогда cмещения между нулями G54, G55 и т.д. происходят в повёрнутой СК правильно.
Но сделать всё внутри G54 не получается, всё равно приходится использовать разные нулевые точки.

Вобщем, всё как-то сложно и запутанно.

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

Ограничения +- 100 можно изменить в параметре 51035 (операте 4.7)

И всё-таки не понятно ограничение в использовании разных нулей, их же туча.

Если очень надо в 54, то что мешает разные нули перевести в обычные смещения.

Или каждый раз отворачивать повороты назад и с переездом крутить по новому.

Посмотреть бы детальку, хотя бы схематично......

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

Ander, спасибо за параметр, диапазон расширил! 

Да дело даже не в детали. Она может быть хоть сложная, хоть простая. Дело в самом принципе программирования.

Ограничение в использовании тучи нулей связано с доп. работой по их заданию оператором (что-то забудет, не там привяжется и т.д.) или с трудностями их пересчёта при установке детали с ненулевой ротацией (усложнение кода программы и т.д. ).

 

И всё-таки смещение нуля в Basic Reference тоже приводит к неверным результатам.

 

В общем, пока рабочее решение найдено такое: 

Ротацию детали внести в Basic Reference. При этом MCS повернётся на заданный угол. Внутри этой повёрнутой MCS задать G54. Далее нужные смещения для каждой позиции обработки заносить в Точные(Fine) смещения G54 через $P_UIFR[1,X,FI] (спасибо A_1 за подсказку!) и G54 будет смещаться вдоль повёрнутой MCS.

В программе после команды $P_UIFR[1,X,FI]=50 нужен следующий кадр с G54, хотя в MDA по этой команде смещение активируется сразу же.

 

 

590cee39cb2e3_g54-2.thumb.jpg.3d50b0abe06a0614af44547d6acc3199.jpg

 

 

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

Т.е. наклонных поверхностей нет????

Тогда 800 цикл вобще не нужен. Хватает tranc, atrans, rot, arot....... плюс координаты временных нулей на чертеже (если их сложно получить программно). И развороты при установки детали для смещений не помеха - они учитываются автоматом.

 Если боитесь своих операторов, то про базовый ноль вообще упоминать нельзя.

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

Подскажите, пожалуйста, как организовать отработку куска программы в нескольких местах детали внутри только одного офсета G54.

Вопрос в том, что циклы 800 обнуляют TRANS, $P_PFRAME выдаёт ошибку на станке, а $P_UIFR почему-то обнуляет значения X Y Z в G54.

 

 

 

 

Что я неправильно делаю?

 


 

 

 


 


 

Вы этот кусок программы сделайте в приращениях G91, по G90 переходите в нужное место, далее с ново по G91 отробатываете однотипное место на детале.

Изменено пользователем EAS
Ссылка на сообщение
Поделиться на других сайтах
В 06.05.2017 в 14:34, Ander сказал:

Т.е. наклонных поверхностей нет????

Тогда 800 цикл вобще не нужен. Хватает tranc, atrans, rot, arot....... плюс координаты временных нулей на чертеже (если их сложно получить программно). И развороты при установки детали для смещений не помеха - они учитываются автоматом.

 Если боитесь своих операторов, то про базовый ноль вообще упоминать нельзя.

Ander, в начале темы я спрашивал применительно к 3+2 обработке, т.е. циклы 800 там присутствуют в различных комбинациях. А картинка такая, без наклонных поверхностей - это просто для примера, упрощенный частный случай, чтобы понятнее было, что я хочу. Да и пост настроен так, что перед любым шагом обработки (хоть 3, хоть 3+2, хоть 5) выводится цикл 800. 

EAS, мысль интересная, но, я думаю, есть нюансы. Например, после смены инструмента, координаты начала обработки по-любому должны быть в G90, чтобы правильно приехать в стартовую точку обработки. 

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

EAS, мысль интересная, но, я думаю, есть нюансы. Например, после смены инструмента, координаты начала обработки по-любому должны быть в G90, чтобы правильно приехать в стартовую точку обработки. 

Так я Вам так и пишу. Например вам нужно много однотипных пазов, выбираете инструмент, подходите по ж90 в центр первого паза, далее вызов подпрограммы которая написана в приращениях ж91 с учетом того что стартовая точка подпрограммы находится в центре паза, отробатываете подпрограмму, возвращаетесь в основную программу, далее по ж90 переходите в центр следующего паза, и так далее.

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

Обработка паза такая:

 

Инструмент 1:

1. Обработка 1

2. Обработка 2

Инструмент 2:

3. Обработка 3 (цикл  800)

4. Обработка 4

Инструмент 3:

5. Обработка 5 (цикл 800)

6. Обработка 6 (цикл 800)

 

Я не совсем представляю, как всю эту группу целиком прописать в приращениях.

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

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

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

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

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

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

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

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

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

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

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




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