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

3D-коррекция при многоосевой обработке


Ug_user

Для какой системы управления Вы хотели бы реализовать 3D-коррекцию?  

89 пользователей проголосовало

  1. 1. Для какой системы управления Вы хотели бы реализовать 3D-коррекцию?

    • Heidenhain iTNC 430(530)
      31
    • Siemens Sinumeric 840D
      19
    • FANUC
      29
    • Другая
      10


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

А что буде, если нету в станочке опции CUT3DF и иже? ..... То-то!!!!!

 

А если не будет, то пойду следующим путем:

Трассировка по точке контакта в NX, На станке привязка сферической фрезы по центру ее радиуса

 

N9 ;5AXIS_3DF_ANGLE

N10 T2 ;(TOOL FREZA_D10 D=10.000 Z=3 r=5.000)

N11 M6

N12 D1

R800=$TC_DP6(2,1)

N13 G0 G153 Z-1 D0

N14 G0 G153 X-450 D0

N15 D1

N16 M11

N17 M23

N18 G0 C179.153

N19 G0 B-51.522

N20 TRAORI

N21 G0 X50.004 Y-.696 S5000 M3

N22 Z-2.716

N23 G0 X50.004 Y-.696 Z-2.716 B-51.522 C179.153

N24 X45.989 Y1.71 Z-7.968

; Начало 3D коррекции

N27 G1 X[34.99 + [0.92293*R800]]  Y[-0.368+[-0.022657*R800]]  Z[-10.+[0.38429*R800]]  C177.746 F1000. M8

N28 X[34.976+[0.9221*R800]]  Y[-0.736 + [-0.0453*R800]]  Z[-10.+[0.38429*R800]]  C176.34

и.т.д.

 

где:

номер инструмента

активная режущая кромка инструмента (номер корректора)

машинная переменная, хранящая значение коррекции на радиус

пользовательская переменная

x y z компоненты вектора нормали в точке контакта

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


Да, таким образом (как впрочем и стандартными CUT3DF и др ) можно получить именно коррекцию. То есть отодвинуть или придвинуть инструмент от поверхности (к поверхности) на величину коррекции. А как быть с переточенным инструментом? Или программа посчитана на фрезу сферическую, а есть желание пройти концевой со скруглением?

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

Доброго времени суток! Я тоже считаю что тема была создана как сделать 3д-коррекцию без использования  специальных средств системы ЧПУ! По поводу ноу-хау, никаких ноу-хау, по крайней мере я, точно не создал, обычная математика! В своем ролике я просто показал что получилось у меня! Я понимаю что это далеко от идеала, но так сделал я, кто-то другой сделает по другому - сколько людей столько и мнений! Много высказываний при чем здесь С++? Отвечу просто - я пока плохо знаком с языком TCL  и с генератором постпроцессоров NX, в чем смог в том и реализовал!

Ув. Vladislav-dobrynin  в приведенном вами примере программы, формулы как то маловаты, похоже что они для концевой фрезы, и хорошо что вы можете все это реализовать используя только NX, я же пытаюсь изучить NX дома, поэтому пока все это выглядит коряво и через всякие сторонние программы, а на работе используют совсем другой CAM! И еще, не все CAMы вроде выводят точку контакта при 5-осевой обработке, некоторые выводят центр кончика инструмента (в этом конечно могу ошибаться) вот и выходит плюс моего скромного приложения в том что оно работает с любым САМом! 

NULL_TAG надо кстати попробовать посчитать для сферической, а пройти концевой со скруглением, спасибо за подсказку того, что можно проверить! Если интересует что получится могу выложить ролик!

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

Проверил, вот что получается при замене шаровой фрезы на концевую со скруглением, по одной и той же программе! Не красиво в местах где фреза меняет направление движения, если конечно их заблаговременно вывести за пределы детали, тогда будет наверно все красиво! 

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

 

А пройти каким образом хотите, "колоколом"? т.е закатать поверхность качанием фрезы и при этом есть вероятность что контакт будет как с дном, так и с радиусом скуления, так и с торцем инструмента ? Если это имеете ввиду, то вопрос более интересный! Подумаю скажу.

 

 

 

Ув. Vladislav-dobrynin  в приведенном вами примере программы, формулы как то маловаты, похоже что они для концевой фрезы, и хорошо что вы можете все это реализовать используя только NX, я же пытаюсь изучить NX дома, поэтому пока все это выглядит коряво и через всякие сторонние программы

 

Как раз таки я привел пример для "закатки" сферической фрезой, как в 3 так и в 5 осях будет работать. Точку трассировки нужно выводить по контакту с поверхностью, NX позволяет это сделать. Формулы короткие! 7 класса школьного курса геометрии, в данном примере все предельно просто! Если САМ не выводит векторов нормали точек контакта то боюсь увы, минимальных достаточных данных не хватит для 3d коррекции.

Посмотрел ролик, а где у Вас происходит сам расчет величин смещения? 

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

Все понял почему у меня для шаровой фрезы поболее формула, у вас для центра шарика а у меня для кончика!

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

 

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

Расчет величин смещений для коррекции, происходит в разработанной Вами утилите или непосредственно на станке?

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

Формулы вставляет утилита, а считает станок! Иначе то нет смысла если смещения будет считать утилита!

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

Просто я не увидел формул на ролике (ну возможно Вы их скрыли, не захотели показывать), и еще не увидел программных средств смещения траектории, значения в ХУZ постоянные передаются, при помощи чего траектория по рассчитанным данным корректируется, какой командой?

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

Никаких специальных команд, только формулы! Хотя одна команда есть TRAORI но к коррекции она не относится!

Ссылка на сообщение
Поделиться на других сайтах
А как быть с переточенным инструментом? Или программа посчитана на фрезу сферическую, а есть желание пройти концевой со скруглением?

 

В компенсации изменения геометрической формы инструмента (расчет траектории был для сферы а на станке стал использоваться тороид) я смысла не вижу никакого! Вовсе не в этом смысл использования 3D коррекции! А вот конкретно для цилиндрической концевой фрезы с радиусом, я сделал бы следующим образом: Имеем три возможных случая контакта: 1 - по периферии, 2 - по радиусу скругления, 3 - по торцу. Для коррекции в этом случае целесообразно брать соответственно 3 величины, пусть это будут соответствующие величины износа указываемые в таблице инструмента станка. Если таких на конкретной стойке не имеется, то можно воспользоваться соответствующими разностями фактических величин параметров описания инструмента в стойке с величинами параметров заданных для инструмента в NX. В УП эти величины положим в любые 3 локальные переменные пользователя. 

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

1) Если угол между вектором(1) оси инструмента и вектором(2) нормали его контакта с обрабатываемой поверхностью равен 90град {пример: вектор(1) +0,5, +0,5, +0,5    вектор(2) -0.5, -0.5, +0,5}, то используем величину коррекции "1 - по периферии"

2) Если угол между вектором(1) оси инструмента и вектором(2) нормали его контакта с обрабатываемой поверхностью строго больше 0 но строго меньше 90 {пример: вектор(1) +0,0, +0,0, +1,0     вектор(2) +0.5, +0.5, +0,5}, то используем величину коррекции "2 - по радиусу скругления"

3) Если угол между вектором(1) оси инструмента и вектором(2) нормали его контакта с обрабатываемой поверхностью равен 0град {пример: вектор(1) +0,5, +0,5, +0,5    вектор(2) +0.5, +0.5, +0,5}, то используем величину коррекции "3 - по торцу"

 

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

 

G1 X[34.99 + [0.92293*R800]]  Y[-0.368+[-0.022657*R800]]  Z[-10.+[0.38429*R800]]  C177.746 - случай контакта по периферии фрезы, R800 - величина износа фрезы по радиусу.

 

G1 X[34.99 + [0.92293*R801]]  Y[-0.368+[-0.022657*R801]]  Z[-10.+[0.38429*R801]]  C177.746 - случай контакта по радиусу скругления фрезы, R801 - величина износа фрезы по радиусу скругления главной и вспомогательной режущих кромок. 

 

G1 X[34.99 + [0.92293*R802]]  Y[-0.368+[-0.022657*R802]]  Z[-10.+[0.38429*R802]]  C177.746  - случай контакта по торцу фрезы, R802  - величина износа фрезы по ее длине.

 

В общем моя идея такова. Кому интересно попробуйте реализовать в постпроцессоре и проверить на станке.

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

Вот такой интерфейс моего скромного приложения 3Д-коррекция!

 

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

Смеетесь? Ну ладно!

Да не смеюсь.. Тебя про формулы спрашивают, а ты фантики показываешь.

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

Кто нибудь ещё продолжил развитие и испытание собственной опции 3д коррекции? Хотелось узнать сильно ли меняется качество обрабатываемой поверхности изменив геометрию инструмента на 1 мм? Как происходят отводы и подводы так как они же не имеют нормалей поверхностей, только вектора ориентации инструмента. Хотелось увидеть это не на верификаторах и картинках, в новом видео @Ug_user выглядит даже все очень здорово.

https://youtu.be/2UvpF52EmQA

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

Качество поверхности - хорошее. Посмотри на эту картинку не из симулятра. Траектория считалась на фрезу шарик D12R6.

Потом прошли фрезой D20R2  с припуском -0.5. Потом концевой D16R0 с припуском -0.25.

Обработка 5-осевая, станок схемы стол-стол.

 

20190313_193139.jpg

20190314_062438.jpg

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

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

Мы реализовали и второй способ, когда нормаль считается из UGOPEN и ее можно применить и для подходов. И в SEQuential Milling..

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • vad0000
      В INPUT должен быть активен вход PUMP ON
    • feros2011
      Снижал разгон, не помогало, если делать частые смены вращения шпинделя, то через какое то время вырубается 
    • gudstartup
      это эскиз а надо чертеж с обозначениями резьбы, с допусками размеров, шероховатость поверхности ваших шариков фаски и т.д. размер не бывает 20.00 или R10.00 какие отклонения допустимы?  не понятно даже где отверстие в кубе делать типа наверное по центру можно так предположить но нигде размеров нет. так же  непонятно нужна ли фрезерная обработка куба или можно пилой напилить  и все???
    • Maik812
      Опять не эффективно, а старое им где? а вдруг понадобится, а если просто посмотреть чем заменить, а если как альтернаивную сделать специю или заказ. Короче что лажа это все такое, таблица из 400 например позиций как заполнять долго? А быстро поправить или набить для не программиста? Давно сделал , кому нужно Компас, Солид,и тд.. поменять спецификацию, поменять имя в библиотеке файлов и поиск и тд тп. mPDM закинул данные старые как старое имя или резерное и пользуйся.  
    • заМКАДыш
      Добрый день! При написании программы на токарную обработку в модели имеется фаска 0,1 мм, при попытки построить траекторию появляется ошибка "Невозможно определить регион обработки! Проверьте задание региона обработки: Мин. площадь" (скриншот 1), если фаску делаю 0,2 мм то ошибка пропадает и траектория выстраивается (скриншот 2). Нигде не смог найти параметр "Минимальная площадь". Помогите разобраться как задать минимальную площадь обработки, что бы данная ошибка не вылезала. Заранее благодарю!
    • Ветерок
      Практически всё. Во-первых, отверстия надо делать командой Отверстия, а не вытянутым вырезом. Тогда при размещении центров отверстий не надо ничего проецировать, надо просто привязаться к ответным отверстиям (центрам кромок или к осям). Во-вторых, эту тему лучше разместить в ветке про Солид, а не про детали машин.
    • Viktor2004
      а что из предложенного эскиза непонятно? Там вроде все есть
    • Иван Ларионов
      SW2018. В детали 1 выполнены отверстия. В сборке к ней приставлена деталь 2, в которой надо выполнить отверстия концентрично отверстиям в детали 1. Вызываю в сборке операцию "Редактирование детали" для детали 2. Деталь 2 становится прозрачной, отверстия в детали 1 видны. Выбираю поверхность на детали 2, на которой надо сделать эскиз отверстий. Отверстия в детали 2 не проецируются на выбранную поверхность детали 1. Что я делаю не так?
    • gudstartup
      это как он ругается он что ваши архивы допустим просматривает и его ии сразу видит что это русификатор -по каким признакам?
    • gudstartup
      тогда это надо чертежи разместить результат будет достигнут быстрее  точность определяет стоимость
×
×
  • Создать...