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

Интересный теоретический вопрос


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

привет все!

я занялся написанием проги для автоматизации части работы 2 человек в отделе и у меня возникла проблема с CAM частью моей программы:

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

гуглю уже 2 день кучу книг накачал по теоретическим основам, там есть только как интерполировать все сплайном, а обратного механизма нигде не описано.

может кто-нить сталкивался с такой проблемой или знает как ее решить, помогите пожалуйста.

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


привет все!

я занялся написанием проги для автоматизации части работы 2 человек в отделе и у меня возникла проблема с CAM частью моей программы:

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

гуглю уже 2 день кучу книг накачал по теоретическим основам, там есть только как интерполировать все сплайном, а обратного механизма нигде не описано.

может кто-нить сталкивался с такой проблемой или знает как ее решить, помогите пожалуйста.

Дурацкий совет: может не стоит вам изобретать заново этот алгоритм (наверное это к тому же очень непросто), а работать с существующими CAD/САМ-системами, которые это давно и хорошо умеют?
Ссылка на сообщение
Поделиться на других сайтах

гуглю уже 2 день кучу книг накачал по теоретическим основам, там есть только как интерполировать все сплайном,

Надо аппроксимацию гуглить наверное, а?

<noindex>http://dxdy.ru/topic8371.html</noindex>

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

Дурацкий совет: может не стоит вам изобретать заново этот алгоритм (наверное это к тому же очень непросто), а работать с существующими CAD/САМ-системами, которые это давно и хорошо умеют?

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

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

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

Зачем нужно купит и CAM система, если нужно обработать 2Д контур ( резька, Ниш. Ерозия, струг.). В CAD системе, например Solidworks нужно написать API и там создат управляещая програма для станка с ЧПУ. За ето нужно ето апроксимация.

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

А в каких CAM это есть (сплайн аппроксимируется отрезками и дугами, а не только отрезками или сплайнами)? Я знаю что есть утилиты которые берут готовый G-код и пытаются заменить отрезки дугами или сплайнами. Либо это происходит в постпроцессоре. Например в IMSpost. Т.е. на выходе ХЗ что получится (зависит от опций).

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

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

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

А зачем дугами? Почему не отрезками? - для большей точности увеличиваете дискретность и все дела.

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

Зачем нужно купит и CAM система, если нужно обработать 2Д контур ( резька, Ниш. Ерозия, струг.). В CAD системе, например Solidworks нужно написать API и там создат управляещая програма для станка с ЧПУ. За ето нужно ето апроксимация.

Наверное, в этом случае оправдано.... Вопрос просто в затратах на создание. То есть я бы поискал всё-таки у производителя станка сначала. Обычно они все (или практически все) имеют какие-то "примитивные" 2D-системы.

А в каких CAM это есть (сплайн аппроксимируется отрезками и дугами, а не только отрезками или сплайнами)? Я знаю что есть утилиты которые берут готовый G-код и пытаются заменить отрезки дугами или сплайнами. Либо это происходит в постпроцессоре. Например в IMSpost. Т.е. на выходе ХЗ что получится (зависит от опций).

NX, V5, Tebis. Уверен, что и другие могут. Это же линейная и круговая интерполяция.

А зачем дугами? Почему не отрезками? - для большей точности увеличиваете дискретность и все дела.

Это вопрос другой, он где-то уже поднимался на форуме. Тема спорная и неоднозначная, имеет сторонников и противников.
Ссылка на сообщение
Поделиться на других сайтах

NX, V5, Tebis.

Т.е. если взглянуть на CL файл этих систем, то там я увижу дуги при обработке сплайна?

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

Маленькая подсказка:

Через 3 точки всегда можно провести окружность и при том только одну.

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

Вот и весь алгоритм, если вкратце.

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

Т.е. если взглянуть на CL файл этих систем, то там я увижу дуги при обработке сплайна?

Вот тут я могу сказать только одно: если я вижу в готовой (после ПП) программе G02/03, то это для меня означает, что система работает с круговой интерполяцией. На какой стадии это происходит, мне даже не очень интересно. Тем более, что круг это тоже некая условность/приближение.

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

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

На какой стадии это происходит, мне даже не очень интересно.

Это вообще-то принципиально в плане моего вопроса.

Я знаю, что Симатрон при обработке контура имеет опцию как аппроксимировать сплайн (отрезками или дугами) и я симулирую траекторию которая затем превращалась в G-код.

Повермил так не умеет (или поправьте меня, может научился) и что происходит в этом случае - я глянул симуляцую в нем, получил G-код с опцией "дуги давай" и, что я там получу должен проверить, если не хочу нарваться на неприятности.

Т.е. разница есть на какой стадии это происходит.

Ну и видимо и в NX этого нет, раз автор темы эту задачу решает. Я так понял он под ним и пытается программить.

Ну и видимо и в тебис этого нет, раз вы так к этому относитесь.

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

Т.е. разница есть на какой стадии это происходит.

Ну и видимо и в NX этого нет, раз автор темы эту задачу решает. Я так понял он под ним и пытается программить.

Ну и видимо и в тебис этого нет, раз вы так к этому относитесь.

В NX есть: там точно помню, есть выбор между круговой и линейной, ПП идёт после уже. Но я никогда не смотрел, что там в CAD выдаётся. Всегда интересовало после ПП.

В Tebis тоже есть и можно видеть непосредственно в САD (картинку сделаю в понедельник), но не все модули. Там, где считаеттся нужным: ТRIM, LASER, и по-моему, всё. Почему нужно, это другой вопрос, если захотите, расскажу.

А не придаётся этому значение, так как ИМХО все равно требуется процессирование, которое выдаёт конечный результат. Поэтому для практики важно, чтобы в конечной NC-программе для стойки было G02/03. Ведь задача САМ - получение готовой NC-программы. Что в них проку-то, если вы их в САD видите? Просто посмотреть?

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

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

Что в них проку-то, если вы их в САD видите?

Про CAD и речи не вел. Только о CAM. Просто, обычно говорят - если постпроцессор отлажен, то посмотрел симуляцию в CAM далее постпроцессор, далее станок. В данном случае это чревато, ибо нужно бы проверить результат после постпроцессора.

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

я пытаюсь написать программу для ПОЛНОЙ автоматизации работы, без дополнительных телодвижений со стороны пользователя и без дополнительного программного обеспечения (у нас на заводе с приратским софтом строго), так что приходится искать алгоритм для апроксимации

насчет апроксимации отрезками: это безусловно простой способ, но не точный + стойки на станках дибильные и с маленькими шагами очень плохо работают

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

Про CAD и речи не вел. Только о CAM. Просто, обычно говорят - если постпроцессор отлажен, то посмотрел симуляцию в CAM далее постпроцессор, далее станок. В данном случае это чревато, ибо нужно бы проверить результат после постпроцессора.

Прощу прощения за вольное обращение с терминами: то CAD, то САМ. Я имел ввиду просмотр программ в самой CAD/CAM-системе ДО постпроцессора (а уж там CAD или CАМ назвать - для меня роли особой не играет).

Я и имел ввиду эту симуляцию в САМ - в Tebis есть в двух модулях такая возможность, до ПП G02/03 иметь на экране, эту картинку и хотел повесить в понедельник.

post-6764-1258477167_thumb.jpg

А зачем вам так хочется иметь эти дуги или почему они так важны? Для модулей обрезки (TRIM) и лазера (LASER) я могу понять. А вот для остального не очень. Кроме уменьшения "веса" программы особо и аргументов-то нет. Или я чего не знаю.... :unsure:

я пытаюсь написать программу для ПОЛНОЙ автоматизации работы, без дополнительных телодвижений со стороны пользователя и без дополнительного программного обеспечения

насчет апроксимации отрезками: это безусловно простой способ, но не точный + стойки на станках дибильные и с маленькими шагами очень плохо работают

Я бы копал сначал в направлении производителей стоек и станков, может чего есть у них, чем с нуля-то изобретать, ИМХО.
Ссылка на сообщение
Поделиться на других сайтах

насчет апроксимации отрезками: это безусловно простой способ, но не точный

???

Необходимая точность аппроксимации задается и, естественно, обеспечивается. Другой вопрос, сколько для аппроксимации сплайна с необходимой точностью потребуется дуг или отрезков, т. е. какой будет объем УП при одном или другом способе аппроксимации. Ну тут уже вопрос к теоретикам :confused_1:

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

Необходимая точность аппроксимации задается и, естественно, обеспечивается. Другой вопрос, сколько для аппроксимации сплайна с необходимой точностью потребуется дуг или отрезков, т. е. какой будет объем УП при одном или другом способе аппроксимации. Ну тут уже вопрос к теоретикам.

Объём программы проблема понятная ну и ,в общем, решаемая. А я вот на днях в третий раз столкнулся с проблемой, которую упоминает автор темы:

стойки на станках дибильные и с маленькими шагами очень плохо работают

Это наступало во всех трёх случаях на Heidenhain 530 и только при выводе траектории инструмента по контуру (по центру инструмента всё ОК). Стойка отказывалась стартовать программу с сообщением "слишком маленькие отрезки".

Собственно это лирическое отступление, но суть такова: это не совсем теоретический вопрос и действительно не всякая стойка и не всегда любит маленькие отрезки, поэтому разбитие на совсем мелкие сегменты приводит иной раз к таким результатам. Пришлось разработчикам софт корректировать, вроде всё заработало.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • boomeeeer
      @anykeyto Я не оператор. Настраивал работу этой функции на токарно-фрезерном, где нужно было позиционировать шпиндель, для нарезания пазов. Что такое G07 не знаю. Вот такой пример для фрезерного станка нашёл   G108 B0; переключение на ось B для управления положением; G68.2 X10 Y10 Z20 I0 J90 K0 Положение заготовки (10,10,20) Угол Эйлера для определения характеристической системы координат; G53.2 Управление направлением инструмента   G109 B0 - отключит режим
    • anykeyto
      Ага, спасибо... А в связке с G07.1 это как работает? Есть детали ,кольца, на которых надо делать по 4 паза. Сейчас программист написал прогу под шаровую фрезу. Там рабочие движеня происходят через одновременное смещение по оси Х и Z... фреза убивается буквально на третьем кольце, да и обработка получаестя фиговой.. На сколько я понимаю надо стремиться к тому, чтобы на 5ти осном станке фреза всегда была перпендикулярна касательной ли самой поверхности. Мне посоветовал как раз цилндрческую интерполяцию, когда ось С преобразуется в плоскость. В мануале к HNC описано эт криво, но в примерах программ как раз сначала включается CTOS и потом G07.1. но дальше как запрограммировать понимания пока нет...  P.S. хочу добавить, что на 5-снике раньше работал только как оператор по готовым программам  на Хенденхайне. А сейчас на новом предприятии на новой для меня стойке нужно все делать с нуля и самостоятельно. С одной стороны интересно, с другой стороны спросить не у кого, в инете инфы по стойке нет от слова совсем, уж тем более видео....  чем это отличается от просто G0 C180? Или это уже будет шпиндель позиционироваться, а не стол?
    • AlexKaz
      Различают жёсткие и гибкие ротора. В данном случае вал жёсткий. Для него соответствуюшая формула. 4000 об/мин = 66.67 Гц, это ни о чём, эффекты для такой частоты почти не скажутся на жёстком роторе. Но проблема в том, что в лопаточных машинах (а насос на скрине наверное лопаточная?) собственные кратны числу лопаток. Я не разбирался в вопросе чтобы что-то здесь советовать. Лучше не спешить и внимательно почитать про модальный в лопаточных. Заодно проверить, а какое нагружение идёт в деталях насоса чтобы корректно выполнить престресс.
    • ДОБРЯК
      Хотите еще и матрицу масс изменить. :=) И сколько килограмм воды будете присоединять?  Опыт правильного моделирования, опыт расчета таких конструкций накапливается десятилетиями. Маловероятно, что кто-то на форуме будет вам объяснять как правильно моделировать, какие КЭ использовать, какие граничные условия задавать и т. д. Вы же всегда уклоняетесь от разговора на эти темы, даже для простых моделей.  Даже если перейдете на Ансис и не разберётесь в том, что он считает это не поможет вам написать грамотный отчет и объяснить грамотному заказчику, что вы там насчитали. Считает расчетчик, а программа это инструмент. Это только в рекламе пишут, что купите программу трехмерного моделирования, сделайте трехмерную модель, потом нажмите одну кнопку и на обычном игровом компьютере все посчитаете. Только в жизни все немножко иначе...:=)
    • Jesse
      Вот что у Биргера: Центробежные силы и индуцированный гироскопический момент зависят от квадрата частоты вращения вала   Хотя уже сама критическая частота зависит только от момента инерции колеса (альфа, бэта, гамма - это прогибы, углы поворота и прочая шелуха), т.е. частота вращения в формулу не входит, а всё определяется только моментом инерции Jm Ну у него рассматривается простая одномассовая система (фактически грузик на пружинке). Думаю поискать публикации.. мб где то раскопали аналитическую зависимость первой и высшей СЧ от частоты вращения для сложных систем. Хотя если выяснится что зависит,  всё равно обоснование придумывать придётся.  Эхх...
    • Fedor
      https://www.litres.ru/book/v-n-faddeeva/vychislitelnye-metody-lineynoy-algebry-65999878/  Ну и классику жанра :) 
    • Jesse
      4000 об/мин при наружном диаметре колеса 380 мм. Думаете, на больших оборотах вилка всё равно может разойтись и могут появиться гироскопические эффекты? Даже несмотря на вышеприведенные массово-инерционные оценки и расположение опор?   да я влияние престресс (вращение) особо не увидел... Думал обычным модальником прогнать, Ланцошом (он пошустрее).   Ещё мои раздумья направлены в сторону присоединённой массы воды, что по идее должно занижать частоты. Хотя для такого массивного вала как у меня даже на это дело можно забить, наверно...
    • Handrusik
      Maxx2000 - благодарю Павлуха - это не фриланс Утомлённый солнцем - приятно, что меня помнят
    • Борман
      Я так понимаю, что обороты не особо большие. ДК - это чисто высокооборотистая тема.   Просто мысли вслух... Если вилка будет сильно расходится, то всегда будет точка пересечения любого луча с кривой BW. Причем точка будет на меньших оборотах по сравнению с обычным престресс-модальником. Какие дальше действия ? С чем тут нужно дополнительно бороться по сравнению с тем, с чем нужно было бы бороться по результатам обычного престресс-модальника Если вилка не сильно расходится (от кривой обычного престресс-мобальника), то смысла стоить строгую ДК большого нет.    
    • boomeeeer
      На сименсе параметрами настраивается многое, что связано с менеджером иснструмента. Вызов возможен как по номерам, так и по именам инструментов. Через равно вроде как по имени вызывается (Т="имя"), а по номеру можно было, например, Т1 M6, а первый корректор подтянулся бы автоматически. И не всегда М6 на смену. Производитель мог нагородить чего угодно. Параметры надо смотреть
×
×
  • Создать...