Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Cam Для Гироабразивной (гидрорезки) Резки. 5 Осей.
Все о станках с ЧПУ > Станки с ЧПУ, Hobby CNC > Программное обеспечение
HaronDDC
Не посоветуете CAM, заточенную под 5-д гидроабразивную резку (с учетом конусности струи)?
Хорошо, конечно, чтобы ее можно было бы скачать хотя бы в ознакомительном режиме.
niktb
Если уж купили 5д гидрорезку,то в комплекте обычно есть полноценное ПО. Или что-то я не понял. В принципе тож интересует ПО для 2,5д гидрорезки. Если интересно можно пообщаться...
AndryD
В свое время я на C# написал модуль под AutoCAD для гидроабразивного резака 2.5 осевой обработки. В AutoCAD создается эскизы расставляются точки начальных врезаний, по команде из среды AutoCAD отмечается нужная геометрия и модуль создает управляющую программу.
Если кому интересно могу скинуть этот модуль.
5-ти осевую обработку можно выполнить в любой толковой САМ системе как фрезерную обработку инструментом с конусом. Задаете геометрию, конус, и создаете траекторию. Из САМ-ов surfcam справится. Конечно постпроцессор нужно будет сделать, но в сюрфкаме это не сложно.
HaronDDC
К сожалению, я этим занимаю практически на коленке, - в крайнем дефиците времени.

У нас задача написать свою CAM. В текущем виде это стороннее приложение на движке OpenCASCADE.
Пока не все готово в ней - в общем есть только заготовка с моделью аппроксимации детали далека от идеала.
Интересно, а фрезерные 5-д модели учитывают двух-конусность и обработку резкого изменения траектории по одной из плоскостей (где нужно замедлять рез).

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

Я решил примерно так: в рамках одной тех. операции выбирается множество граней, подлежащих резу, множество "верхних направляющих ребер" и множество "нижних направляющих ребер".
Строится аппроксимация полученной поверхности линейчатой (т.е. не банальное снятие фаски по нормальному сечению, как в некоторых CAM), ну а затем тривиально учитывается двухконусность (на основе выбора параметров сопла, расстояния до заготовки и пр.).

В общем, там у людей большие планы...
Хотим получить близкое к FlowJet 3d - реально хорошо, судя по презентации.
Но совмещение основной работы, этой темы и диссертации явно не идет на пользу моей продуктивности)).

Да... а целевой станок свой (проектируется) + робот фанук, привернутый к соплу.


Я бы с удовольствием послушал людей, которые в этом варятся.
AndryD
Цитата(HaronDDC @ 9.12.2011, 17:16) *
Интересно, а фрезерные 5-д модели учитывают двух-конусность...

двух-конусность? В свойствах инструмента вводится его геометрия в параметрах угол конуса один.

Цитата(HaronDDC @ 9.12.2011, 17:16) *
...и обработку резкого изменения траектории по одной из плоскостей (где нужно замедлять рез).

Учитывает постпроцессор.

Цитата(HaronDDC @ 9.12.2011, 17:16) *
А как задается геометрия в surfcam-е?

В surfcam, выбираются направляющие поверхности и две кривые параллельно которым должен двигаться инструмент, также необходимо изменить количество проходов – 1.
HaronDDC
Цитата
двух-конусность? В свойствах инструмента вводится его геометрия в параметрах угол конуса один.


Понятно. Имею в виду еще расхождение струи от выхода из сопла до заготовки.


Цитата
Учитывает постпроцессор.

Понятно. В общем, наверное, это правильно.


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

Не понятно - что значит параллельно двум кривым?
И что такое направляющие поверхности?
Нет расчета аппроксимации направляющих прямых?


А можете дать ссылку - где можно ознакомиться с такой процедурой в surfcam-е? Пощелкать-скачать демку.
AndryD
Цитата(HaronDDC @ 13.12.2011, 2:52) *
Не понятно - что значит параллельно двум кривым?
И что такое направляющие поверхности?

В фрезерной 5-ти осевой обработке есть два основных типа траектории – торцем фрезы по нормали к поверхности и боковой частью фрезы по касательной к поверхности. Все остальное это вариации этих двух операций. В вашем случае для 5-ти осевой гидроабразивной резки подходит стратегия - обработка боковой частью инструмента. Как я уже говорил для расчета этой операции в SURFCAM необходимо указать направляющую поверхность, инструмент будет проходить по этой поверхности по касательной боковой частью, и две кривых параллельно которым по указанной поверхности будет перемещаться инструмент. Так же есть возможность указать не две кривые, а только одну. В принципе, в вашем случаи, будет достаточно и одной кривой.


Цитата(HaronDDC @ 13.12.2011, 2:52) *
Нет расчета аппроксимации направляющих прямых?

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

Цитата(HaronDDC @ 13.12.2011, 2:52) *
А можете дать ссылку - где можно ознакомиться с такой процедурой в surfcam-е? Пощелкать-скачать демку.

http://www.surfcam.com/register_for_studen...mo_version.aspx можно скачать демо версию, или еще с ftp://89.162.249.98/SURFCAM/Software/V5.2....2_RUS_B488.zip
HaronDDC
Цитата
В фрезерной 5-ти осевой обработке есть два основных типа траектории – торцем фрезы по нормали к поверхности и боковой частью фрезы по касательной к поверхности. Все остальное это вариации этих двух операций. В вашем случае для 5-ти осевой гидроабразивной резки подходит стратегия - обработка боковой частью инструмента. Как я уже говорил для расчета этой операции в SURFCAM необходимо указать направляющую поверхность, инструмент будет проходить по этой поверхности по касательной боковой частью, и две кривых параллельно которым по указанной поверхности будет перемещаться инструмент. Так же есть возможность указать не две кривые, а только одну. В принципе, в вашем случаи, будет достаточно и одной кривой.



Понял. Поразительно но до того, что надо задавать эти две кривые (это сильно упрощает задачу) я дошел сам.
Собственно у меня сейчас эти две кривые и выбираются (помимо грани-поверхности, конечно).

Да,
Все решается.
Проблема в том, что нам нужен полностью "свой" софт (такая задача от самого высокого начальства так сказать).

Цитата
Мне тяжело сказать как в сюрфе устроена мат.часть. Но судя по генерируемым траекториям такой расчет выполняется.


Да, похоже на то, что все красиво (судя по авишке).
Интересно, как они сделали - это, вообще говоря, не такая уж тривиальная задача.
У меня она решается довольно трудно - фактически обе кривые мелко-мелко разбиваются и ищутся "удачные" направления.
Среди множества влезающих в погрешность допустимую выбирается такое, которое наиболее ближе к нормальному сечению.
Но это я тоже добью - улучшу алгоритмы.

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

Ничего - мы сделаем еще лучше! :)


Спасибо, на самом деле очень помогли. Просветили так сказать, те моменты, о которых я только догадывался.


AndryD
Цитата(HaronDDC @ 13.12.2011, 22:42) *
Интересно, как они сделали - это, вообще говоря, не такая уж тривиальная задача.

Рекомендую рассмотреть следующий алгоритм – из двух кривых определяю самую длинную и разбиваю ее на точки с шагом (допуск для поверхностей, кривых), вторую кривую в свою очередь разбиваю на уже определенное количество точек в первой кривой, шаг точек уже не имеет значения (он будет меньше чем в первой кривой так как она короче). Если кривые замкнутые - беру первую точку в первой кривой и нахожу точку на второй кривой как кратчайшее расстояние между взятыми точками. Если кривые не замкнутые – беру первую точку на первой кривой и нахожу билжайшую точку (начала!) второй кривой, а дальше простой перебор следующих точек на одной и второй кривой. После нахождения прямых которые грубо говоря образовывают поверхность не составляет большого труда определить эквидистанту для струи с учетом конуса.

К стати в SURFCAM у каждой поверхности есть так называемы вектор, который определяет сторону обработки этой поверхности для 5-ти осевой обработки.
HaronDDC
Цитата
Рекомендую рассмотреть следующий алгоритм – из двух кривых определяю самую длинную и разбиваю ее на точки с шагом (допуск для поверхностей, кривых), вторую кривую в свою очередь разбиваю на уже определенное количество точек в первой кривой, шаг точек уже не имеет значения (он будет меньше чем в первой кривой так как она короче). Если кривые замкнутые - беру первую точку в первой кривой и нахожу точку на второй кривой как кратчайшее расстояние между взятыми точками. Если кривые не замкнутые – беру первую точку на первой кривой и нахожу билжайшую точку (начала!) второй кривой, а дальше простой перебор следующих точек на одной и второй кривой. После нахождения прямых которые грубо говоря образовывают поверхность не составляет большого труда определить эквидистанту для струи с учетом конуса.


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

2. Если кривые замкнутые, то не факт, что первая точка первой кривой и ближайшая к ней из второй будут "хорошей" прямой.
Более того, можно даже привести пример, когда такая прямая пересечет поверхность.

3. Если кривые незамкнутые... Аналогичный аргумент - такая прямая может крайне плохо лежать на поверхности.

В остальном да.
Учет конусности - это школа (ну максимум - первый курс).
Правда и тут есть нюанс.
Можно показать (ну это почти очевидно), что теоретически точно конусным инструментом может быть обработана только развертывающая поверхность.
Если поверхность косая линейчатая, то теоретически точно конусным инструментом ее не обработать.
В моей программе используется "естественная" аппроксимация.
Для данной образующей поверхности рассчитывается "средняя" нормаль и сдвиг происходит вдоль нее.


Вообще вопрос идентификации и аппроксимации поверхностей линейчатыми - один из вопросов моей (надеюсь в скором времени успешно защищаемой) кандидатской.

Помимо описанного мной (правда не целиком) метода "в лоб" там еще предлагается 2-3 метода достаточно неприятных в реализации, но даже несмотря на их более глубокую теоретическую основу (если так можно сказать), "в лоб" работает лучше всех)

Цитата
К стати в SURFCAM у каждой поверхности есть так называемый вектор, который определяет сторону обработки этой поверхности для 5-ти осевой обработки.


Ну ясное дело - это так называемый вектор нормали, задающий ориентацию.
В моей программке он индуцирован геометрией детали (не задается).



Программу я эту добью...
Как только она начнет запускаться на других машинах - выложу сюда (конечно она очень сырая).


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

Все очень сырое, так что просьба не пинать :).


AndryD
С вашими замечаниями согласен.
Цитата(HaronDDC @ 14.12.2011, 22:07) *
Программу я эту добью...

Скажите, в своей программе вы планируете реализовать верификацию процесса обработки?
HaronDDC
Цитата(AndryD @ 15.12.2011, 1:15) *
С вашими замечаниями согласен.

Скажите, в своей программе вы планируете реализовать верификацию процесса обработки?


А можете кратко объяснить,что это за процедура? Или как вариант ссылку, где прочесть.
AndryD
Цитата(HaronDDC @ 15.12.2011, 20:19) *
А можете кратко объяснить,что это за процедура? Или как вариант ссылку, где прочесть.

После того как создана траектория обработки в любой толковой САМ системе можно выполнить верификацию для проверки качества полученной траектории – задается заготовка как правило в формате STL и происходит симуляция обработки на основе рассчитанной траектории, как будто инструмент в реальной жизни обрабатывает деталь. В дальнейшем можно визуально оценить "качество" поверхности, проанализировать припуски и врезания, коллизии и т.д. в действительности модуль верификации может симулировать работу целого станка, с его кинематикой.
HaronDDC
Цитата(AndryD @ 16.12.2011, 18:15) *
После того как создана траектория обработки в любой толковой САМ системе можно выполнить верификацию для проверки качества полученной траектории – задается заготовка как правило в формате STL и происходит симуляция обработки на основе рассчитанной траектории, как будто инструмент в реальной жизни обрабатывает деталь. В дальнейшем можно визуально оценить "качество" поверхности, проанализировать припуски и врезания, коллизии и т.д. в действительности модуль верификации может симулировать работу целого станка, с его кинематикой.



Хм... пока мы планируем только листовые заготовки (все-таки изначальная задача - это гидрорезка).

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

Так-ли нужна симуляция кинематики станка? Ведь для каждого она разная.

Если не сложно - хотя наверное я вас уже достал), можно привести простой пример схемы:
1. Получение траектории
2. Верификация
3. Нахождение коллизий или неудовлетворенность качеством поверхности
4. Модификация получения траектории

AndryD
Цитата(HaronDDC @ 16.12.2011, 21:26) *
Хм... пока мы планируем только листовые заготовки (все-таки изначальная задача - это гидрорезка).

Понятно. Просто я дума у вас что то типа такого все таки 5 осей и обрабатывать плоские заготовки для такого станка - «скромно». Хотя конечно в зависимости от потребностей.

Цитата(HaronDDC @ 16.12.2011, 21:26) *
Идею верификации я понял.
Но почему-то не могу придумать примера, когда она даст иной результат нежели чем целевая поверхность.
В случае, если аппроксимация целевой поверхности точная, то почему может возникнуть "математические" дефекты при работе с реальной заготовкой.
О каких коллизиях речь?

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

Цитата(HaronDDC @ 16.12.2011, 21:26) *
Так-ли нужна симуляция кинематики станка? Ведь для каждого она разная.

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

Цитата(HaronDDC @ 16.12.2011, 21:26) *
Если не сложно - хотя наверное я вас уже достал), можно привести простой пример схемы:
1. Получение траектории
2. Верификация
3. Нахождение коллизий или неудовлетворенность качеством поверхности
4. Модификация получения траектории

Все в точку.
Верификация конечно очень полезна для фрезерной и токарной обработки, в вашем случае да еще и с плоскими заготовками ее потребность небольшая, но тем не менее.
HaronDDC
Цитата
Понятно. Просто я дума у вас что то типа такого
все таки 5 осей и обрабатывать плоские заготовки для такого станка - «скромно». Хотя конечно в зависимости от потребностей.


Они тоже, уверен, далеко не сразу такой софт забабахали.
Причем люди занимаются этим, видимо профессионально - это их продукт. Один ролик с профессиональной озвучкой на их сайте чего стоит. А я фактически один в свободное от основной работы время.
Но принципиально - именно к такому уровню я и стремлюсь. Если начальство одобрит - будем доводить.
Но все надо делать постепенно - сначала относительно простую задачу, потом посложнее.
Эпическую сагу за ночь, к сожалению, не напишешь.
А к сожалению, помимо принципиальных задач приходится решать и всякую мелочь вроде задания свойств, кнопочки там расставить, сохранить, выбрать, - так время и съедается.

Но еще раз повторюсь - именно к такому и стремимся (Flow Jet 3d)
Еще есть идея "гравировок". Т.е. быстрый проход струи с отметкой "рисунка".

Конечно, в перспективе и полноценные "трехмерные" заготовки.
А то грешно - ход по z 1м не использовать :)


Еще пытаюсь убедить технологов своих придумать формулу для расчета подачи - а они ее фактически хотят эмпирически выудить из другой КАМ-системы.
Притом, видимо, сами не знают, как хотя бы примерно менять скорость реза в окрестности резких поворотов.
Чувствую, придется самому что-то придумывать, основываясь на данных из инета (по обоим вопросам).


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


Думаю, для начала сделать специфичную визуализацию процесса резки струей. Т.е. фактически формирование огибающей семейства конусов.


Цитата
Кинематику станка в модуле симуляции можно описать практический любую, но в стандартной верификации как правило просто инструмент перемещается вокруг заготовки.


Это понятнее. В этом я тоже вижу смысл. Всегда дешевле проехаться софтом.



В общем, будем работать. Тема эта мне интересна, не говоря уже о возможном практическом применении.






HaronDDC
Я вернулся))
Апробировал SURFCAM...

А реально на нем обработать однополостный гиперболоид (в аттаче)?

Ощущение, что он отстраивает траекторию по изолиням (образующая фрезы располагается вдоль линии u или линии v).
Естественно, поверхность "убивается" в данном примере.
Или это как-то можно настроить?


Ekklesiast
Я бы вам посоветовал использовать Rhinoceros и ее ЧПУ плагин Rhinocam. Я сейчас для интереса 5 Rhinoceros установил и Rhinocam 3 тестить можно Сможете поиграться
Bobr
Цитата(HaronDDC @ 30.7.2012, 0:51) *
Я вернулся))
Апробировал SURFCAM...

А реально на нем обработать однополостный гиперболоид (в аттаче)?

Ощущение, что он отстраивает траекторию по изолиням (образующая фрезы располагается вдоль линии u или линии v).
Естественно, поверхность "убивается" в данном примере.
Или это как-то можно настроить?

В параметрах есть возможность указать "Контрольные поверхности", укажите направляющие поверхности как контрольные, при необходимости введите для них припуск, в этой вкладке есть еще куча настроек как будет вести себя инструмент при проходе к этой поверхности
HaronDDC
Возможно, я что-то не так делаю. Но ему или вообще сносит башню (ACCESS_VIOLATION_ERROR), либо продолжает "свою" тему. Видимо, все это работает только в примитивнейших случаях. А в сложных обработку надо разделять на небольшие участки и практически вручную подсказывать последовательность и метод обработки (сиречь правильное положение инструмента).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.