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

Про цилиндрическую интерполяцию, и не только...


Ug_user

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

Позвольте еще раз коснуться этой темы, думаю, что есть что рассказать. 

Здесь, на форуме, уже и не вспомню в какой ветке, пользователь с ником glog72 долго и не сильно успешно пытался решить задачу наворачивания плоского контура на цилиндрическую заготовку. Приведу пример его заготовки, и задача ставилась - "помогите правильно навернуть мой контур на изделие".

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

 

Далее выясняется первое "отягощение" - изделие имеет цилиндрическую часть и прямолинейные участки, на которые уже Wrap-Unwrap не навернуть. Слово за слово (типа - а зачем все это нужно?), выясняется, что все потуги "навернуть" связаны с тем, что нужно отфрезеровать на цилиндрической части с примыкающими прямолинейными участками некий узор-рисунок, на определенную глубину, и этот узор представлен контурами, импортированными из CorelDraw. 

Вот как все выглядит на плоском изделии (в IE картинка "оживает" сразу, в Opera нужно на нее щелкнуть.. ): 

На самом деле, даже на плоской обработке автору той темы хотелось получить "подрезку" углов при обработке конусной фрезой:

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

то с вопросом а как это отфрезеровать на "безмозглом" китайском станке - решили поэкпериментировать. 

Я уже писал на этом форуме о подобном решении, года три назад сделал UGOPEN DLL, которая "наворачивала" собственно плоскую траекторию обработки на цилиндр указанного радиуса, вот один из примеров:

Один из примеров

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

Решил в этот раз сразу делать постпроцессор, который будет на лету "наворачивать" траекторию. Для этого сделал простенький UDE, в котором задаю радиус цилиндра, среди ряда других параметров. 

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

Для отработки идеи сделал простейшую CSE-модель "безмозглого" 4-осевого станка, безмозглый - у него нет ничего а-ля TRAORI G43.4 и т.п., тупо G1 X Y Z B в кадре, и все.

И - вот пример симуляции после постпроцессирования (щелкайте по картинке):

Когда все заработало (в этот момент в фотоаппарате сели батарейки, поэтому - без видео.. ), решили немного "покуражиться" - сделали плоскую обработку STL-модели двуглавого орла, орел был какой-то безумной степени детализации, до перышка,

и точно также "навернули" эту обработку. Тут батарейки поменял!

Ссылочка на видео

Вот что получилось в результате:

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


Спасибо на добром слове! Не буду скрывать, приятно такое слышать от коллег по цеху.

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

Да, всегда импонировал ваш основательный подход к вопросу.

Могу подсказать следующий шаг - наворачивание на произвольную поверхность. Даже лучше сделать в виде отдельной утилиты, "пережевывающей" плоский G-code и выдающей код, наоженный на произвольную поверхность. Не знаю, озолотитесь ли, но спрос должен быть бешеный. 

Ссылка на сообщение
Поделиться на других сайтах
плоский G-code и выдающей код, наложенный на произвольную поверхность

О-да-а-а :clap_1: Ждём ! 

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

Хм... А пуркуа бы и не па?

На самом деле - уже делал нечто подобное. Нет ровно ни одной проблемы заменить XY на UV по поверхности, а Z откладывать по нормали к поверхности в этой точке. Здесь вот какие засады-проблемки есть:

  • Искажения от наворачивания плоского на неразворачиваемую поверхность. С этим можно мириться, тем более что однозначное соответствие XY -> UV дает единственное решение.
  • Плоский квадрат 100х100 будет навернут в непонятную фигуру с непонятными размерами. Не для всех поверхностей параметризация совпадает с длиной дуги. 
  • Как позиционировать? Хотя - можно указывать точку на поверхности и направления UV .

О! Это я уже на "background-e" обдумываю пути реализации! 

Сделаю, пожалуй... 

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

@@Ug_user, а эту верёвку тоже фрезеровали, или это отдельный декор ?

post-29365-0-61528900-1411397872.png

P.S. Конечно здорово получилось ! И орёл - супер, просто мебель , достойная президента.

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

Это подстава. Если ВНИМАТЕЛЬНО посмотреть на фото готовой отфрезерованной детали, рядом, в МДФ пыли валяется кусочек наклейки, под 45 обрезанный. Это та самая косичка...

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

просто мебель , достойная президента.

Осталось только достойного президента найти.

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

Что тут сказать... шикарно, просто шикарно! :worthy:

 

ps еееххх... мне еще расти и расти :smile: 

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • eljer0n
      Большое спасибо! Посмотрю. Но, судя по всему, даже если удастся заставить его сохранять чертеж с трехзначным исполнением, видимо, в той же спецификации правильного отображения не добиться. У Леона с товарищем был об этом разговор, что солид вроде как не воспринимает исполнения дальше двузначного. Хотя, может и я неправильно понял. Вернусь к этому вопросу чуть позже. Еще раз спасибо за совет.
    • mrVladimir
      @gudstartup @Viktor2004 спасибо Вам за такое участие.  Я вот тоже в maintenance manual заглянул (наконец-то ). А вот фраза "при замене FROM/SRAM необходимо ..." (под пунктом 3 во вложении) не подразумевает, что появление ps5523 произойдет только если мы решим на нашей чпу поменять именно FROM/SRAM. А при замене других печатных плат (в том числе и материнской ) необходимо только как написано в пункте 2 восстановить данные памяти SRAM и, при необходимости, файлы пользователя. Нет?
    • maxx2000
      @davidovka это же очевидно. Вдруг нужного размера не окажется  как в анекдоте  
    • davidovka
      А для чего и сотни исполнений в таблице и гибкость одновременно?
    • ak762
      в СВ есть встроенный калькулятор для расчета балок при различных сценариях нагружения если ваш профиль монорельса совпадает с предопределенными профилями то можно прикинуть поведение монорелься без анализа на картинке 2 расчета двутавровой балки в качестве теста    
    • Viktor2004
      @mrVladimir не спешите отчаиваться. Вопрос спорный Я завел новую тему в которой мы это выясним  
    • Viktor2004
      Уважаемые специалисты. У кого был опыт замены фануковских плат? Именно на ЧПУ. Пожалуйста напишите какое ЧПУ и какую плату меняли И результат. Подошла или не подошла  
    • gudstartup
      @mrVladimir к сожалению с вашей платой все не так просто вам придется приобрести ее клон то есть она должна быть подготовлена продавцом и в нее должен быть записан серийный номер вашей старой платы он на штрихкоде а так готовить умеют не все или готовьтесь к сертификации опций также есть еще один аппаратный вариант но не каждый будет на новую плату м\сх перепаивать с риском превратить ее в кирпич.   если бы у вас был отдельный модуль процессора то вы бы просто переставили его в новую плату и все а с этой платой из-за ее не модульности намучаешься
    • SAPRonOff
      в окне состава изделия снять замочки у колонки позиция, тогда генератор колонки состава изделия не будет им присваивать свои значения автоматически, а запомнит то - что вы поставили или стояло до изменений проекта: 
    • Kelny
      Смотреть надо процедуру main, почти в самом конце: Слева от этих строк на сером поле ставите красные точки (клик мышкой) и запускаете макрос, когда макрос дойдёт до обозначенных строк можно будет наводить мышку на перменные, например, sPathName и смотреть значения, что бы определить где сбой: Для продолжения выполнения макроса нажимаем зелёный треугольничек (как кнопка Play).      
×
×
  • Создать...