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

круговая интерполяция в Vericut


kernel

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

Доброго времени суток!

Возникла такая проблема - после использования модуля OptiPath с включенной опцией Добавать больше резов ( окно OptiPath - закладка Settings - переключатель Add More Cuts) некоторые перемещения по окружности в оптимизированной программе воспроизводятся через vericut не корректно, инструмент зарезает деталь. Например, вот фрагмент программы:

N50 G3 X-107.994 Y83.253 I-815.112 J-5706.199 F650

N60 X-103.073 Y82.55 I-1405.458 J-9900.742 F300

N70 X-98.153 Y81.847 F150

N80 X-90.772 Y80.792

N90 G1 X-90.776 Y80.757 Z63.991 F550

N100 X-90.781 Y80.721 Z63.911

...

vericut пишет ошибку типа invalid circle statement r1=0 r2=34.654 (типа того)

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

Задача бы решилась если Vericut дописывал I J K координаты во всех кадрах с круговой интерполяцией

N50 G3 X-107.994 Y83.253 I-815.112 J-5706.199 F650

N60 X-103.073 Y82.55 I-1405.458 J-9900.742 F300

N70 X-98.153 Y81.847 I XXX J XXX F150

N80 X-90.772 Y80.792 I XXX J XXX

...

XXX- какие-то значения I J K - центр окружности от начальной точки к ее центру.

Подскажите пожалуйста как сие можно сделать? :helpsmilie:

Есть предположение добавить какой то макрос к словам I J K (меню Cofiguration - Word/Adress). Нашел в документации, что есть макрос CircleCenterReset который сбрасывает эти i j k, вот только где и с чем его применить не понятно, или может вообще как то по-другому.

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

стойка Sinumerik 810D, в vericut'е control - sin810d.ctl

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


Способы решения проблемы следующие - точность стойки установить, например 0,01 или меньше (в смысле 0,02 или 0,025 итд) .

Это находится в Control Setings, закладка General. Графа Calculation tolerance, тогда ошибки интерполляции в vericut появляться не будут.

Но здесь одно маленькое НО!!!

Стойка должна быть настроена должным образом, что бы подобные ошибки не выплыли на стойке.

Например у нас в цехе все станки работают под управлением стойки Sinumerik840D. Однако, к примеру, на чешских станках данная "неточность" пересчета Vericut прокатывает. а вот на Cincinnti, те что с США (там система дюймовая по умолчанию) ошибки эти вылазят. И что бы их вообще не было в прогу вывожу по 5 знаков после запятой. А vericut только лишь 3 знака после запятой выводит...

Надо задать вопрос в саппорт по этому поводу.

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

Спасибо.

Почитал в форумах по этому вопросу. Как я понял вы имеете в виду ошибки такого типа invalid circle statement r1 = 4.2365, r2 = 4.2362, т.е. когда радиус окружности в начале (r1) не равен радиусу в конце (r2) с заданной точностью и если в vericut'е эту точность уменьшить ну и в программе увеличить, то этих ошибок можно избежать.

Здесь же немного другого характера ошибка. Он пишет, например, что r1=0, r2=8.1572, т.е. радиус в начале вообще нулевой, чего по сути быть не может. а пишет он так потому что наверно не корректно понимает запись при воспроизведении программы. в моем случае она такая

N11376 G1 X-106.909 Y83.253 Z64.386

N11381 G2 X-102.871 Y82.676 I-1242.283 J-8750.244 F600

N11381 X-94.796 Y81.521

N11381 X-90.758 Y80.944 F625

т.е. в двух последних кадрах (которые vericut сам уже добавил) явно не указаны i j, хотя движение то круговое, и в результате в графическом окне инструмент зарезает в деталь, что не есть хорошо. )) т.е. если бы было так:

N11376 G1 X-106.909 Y83.253 Z64.386

N11381 G2 X-102.871 Y82.676 I-1242.283 J-8750.244 F600

N11381 X-94.796 Y81.521 I XXX J XXX

N11381 X-90.758 Y80.944 I XXX J XXX F625

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

но vericut почему-то не добавляет координаты центра i j k для кадров с круговой интерполяцией если делит окружность или дугу на несколько частей (ну типа с разной подачей).

Голову наверно сломал как такое сделать )).

Единственный выход который я вижу сейчас это оставить программу такой как ее выводит vericut, только надо проверить поймет ли реальная стойка Sin 810D отсутствие компонент i j k в последующих кадрах если они заданы только в первом как в примере.

Будем разбираться...

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

Понял, про что вы хотели сказать. -)

Ну, да .. Здесь какая - то ошибка... Либо должны выводиться i j, либо должно стоять в следующем кадре G1 или G0...

Такого у меня не было еще...

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

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

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

i j - это центр окружности. согласен. Правда у синумерика 810-го по-умолчанию центр окружности не в абсолюте, а имеет инкрементные значения, т.е. i, j это координаты центра окружности относительно ее начальной точки (X,Y в кадре). И когда Vericut воспроизводит

запись, которую сам и сделал при оптимизации :biggrin:)) :

N50 G3 X-107.994 Y83.253 I-815.112 J-5706.199 F1300

N60 X-103.073 Y82.55 I-1405.458 J-9900.742 F900

N70 X-98.153 Y81.847 F350

N80 X-90.772 Y80.792

N90 G1 X-90.776 Y80.757 Z63.991 F800

N100 X-90.781 Y80.721 Z63.911

...

то инструмент зарезается в деталь.

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

N60 X-90.772 Y80.792 I-1405.458 J-9900.742 F1300

Vericut добавил туда дополнительные кадры точек начала окружности (поделил ее на несколько частей для оптимизации подачи),

а i, j оставил только в первом кадре окружности, что не есть правильно )) ведь если добавляется начальная точка, то i,j тоже должны поменяться.

Конечно, можно выводить координаты центра как абсолютные. Запись будет такого вида:

N20 X17.203 Y38.029 I=AC(50) J=AC(50) F1300

Чтобы мой постпроцессор (UGS NX) на Sinumerik выводил круговую запись так - проблем по отладке в принципе нет. А вот в Vericut они появятся )). Если даже он и поймет такой кадр, то опять же при его оптимизации выдаст совсем нечто странное. )) Что-то такое уже пробовал...

Вообще я нашел решение проблемы. Не совсем удачное конечно, но все-таки. Ведь подобных кадров даже в большой программе не так уж и много. Как правило, от 3 до 10, не больше. И все их можно найти после окончания воспроизведения программы, используя Info - NC Program..., а дальше нажать кнопочку NC Program Review.

Потом указать мышкой на сообщение типа invalid circle statement r1=0 r2=34.654 и программа подсветит кадр с не корректной круговой записью.

После чего нужно просто удалить в файле программы (скажем, через блокнот) все X Y, которые верикат добавил и оставить последние значения X Y. То есть в примере выше правильная запись будет выглядеть так:

N50 G3 X-90.772 Y80.792 I-815.112 J-5706.199 F1300

...(удаленные кадры)

N90 G1 X-90.776 Y80.757 Z63.991 F800

N100 X-90.781 Y80.721 Z63.911

...

X Y взяты из последней строчки круговой записи.

По времени на редактирование 10 подобных случаев это отнимает минуты две.

А что? Нормальное такое решение :cool::smile:

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • gudstartup
      @Maxim.Oi TF зайдите и посчитайте  сами приблизительно и увидите хватит мощности вашего мотора или нет https://cncins.ru/calculator/frezerovanie/  
    • maxx2000
      Игровая карта заточена под производительность в играх, шейдеры-мейдеры, тесселяция, трассировки, всякие джиэлы последней версии, майнинг и т.п. и т.д, Т.е. макимально быстро вывести каритнку на экран. Отсюда и её более высокое быстродействие в синтетических тестах на которых их сравнивают обзорщики и которые заточены под все эти свистелки-перделки. Равно как на игровой не получить точной отрисовки построений как на проф в инженерных приложениях, так и на проф не получить быстродействия и всех функций игровой в играх. даже 15 уже нормально надо полагать что те сотни тонн технологического оборудования которые вышли у него не содержат такого количества деталей чтобы он мог оценить масштаб трагедии.
    • Krusnik
      3) FPS. Сколько ни пробовали SW вообще не нагружает видеокарту, если она не входит в список ниже, а грузит процессор. С процессором если делать сборки от 2000 деталей и выше FPS 10-12. Если поставить видеокарту из списка и драйверы - то FPS 20-30, что уже нормально для работы.   4) Отрисовка чертежей. Отлично заметна на сложных моделях. С обычными видеокартами рисует криво. Вообще отрисовка чертежей в SW - это боль. На картинке слева GeForce, справа Quadro. Линии лопастей не доводит.   5)Раньше было, сейчас может и пофиксили. На игровых видеокартах при вращении часть сборки пропадала как бы за невидимой стеной. Напоминает баг в компьютерных играх, когда можно пройти сквозь текстуру.
    • lem_on
      Опять же не для дятлов об этом пишут на сайте SW. Но мля, по товарищески кто то должен прочитать это за меня.
    • Krusnik
      Да тут постоянно, по-моему об этом пишут. Такие как вы уже всех заколебали. Поэтому такие и ответы. Но специально для вас распишу все отличия.    1) Графика RealView. С игровой видеокартой она просто в SW отключена. С профессиональной включается. Нужна для показа на мониторе красивых картинок в 3D. Скажем руководству, или заказчикам. Ну и потом. Вы купили SW, а часть функций, за которые выплаченна немалая сумма не доступна. Что за фигня?   2) При вращении и/или масштабировании сборок с игровой видеокартой модели во время манипуляций превращаются в BoundingBox'ы, а когда отпускаешь мышку - отрисовываются. Зависит это от количества графических треугольников, которые нужно отрисовать. Т.е. с небольшими и простыми модельками не заметите, со сборками хотя бы от 300 деталей - будет заметно. Многие советуют понижать детальность, но тут тоже такое себе удовольствие, когда круглое отверстие превращается в восьмигранник, и только из-эт того, что кто-то решил, что для SW 4080 круче, чем A4000. У меня на сборках 8000 деталей и Quadro так делает, но игровые так начинали с примерно 300 деталей.
    • maxx2000
      а если делать канавку снаружи на глубину чуть больше толщины кольца, а потом изнутри растачивать и кольца будут повисать прямо на резце. Собственно по такому принципу и режутся кольца на универсальном токарном, нарезают канавок, а потом сверлом вжик и готово
    • Orchestra2603
      Да, в рот мне ноги... Ну, считает же Ансис, считает! Блин.. Как до вас донести простой мэсеж. Мне често, пофигу, делает он там себе факторизацию или еще что-то. Но то, что он нормально считает Ланцошем для случая с вырожденной матрицей жесткости - это факт! А раз он считает, то либо (А) вы хрень несете про факторизацию, либо (Б) он такую факторизацию делат сам без проблем. Третьего тут быть не может, и выходит, что в любом случае ваши тезисы оказываются несостоятельными.   Какая вам нужна факторизация? давайте! заказывайте! На какие вам надо матрицы разложить? с какими свойствами? давайте ваш заказ!   Вы на мой пердак не зарьтесь! Смотрите, чтоб ваш функционировал исправно! А то того и гляди, фекализация случится.  
    • Иван Васильев
      Доброго времени суток! Удалось решить проблему?
    • ДОБРЯК
      Вам похоже ничего не нужно, а для алгоритму Ланцоша нужно сделать численную факторизацию. Вам только нужно побольше букв и слов написать. :=) Всё подгорел пердак? :=)
    • Orchestra2603
      При чем здесь это? Речь не идет про эффективные или неэффективнеы алгоритмы. Вы утвержаете, что это просто невозможно.   При чем здесь первые или не первые, все или не все... Какое это имеет значение? У Ансис есть алгоритм Ланцоша, он находит столько, сколько запросите. В Маткаде - он да, находит все. Наверное, можно и не все, но я хз, как это делать. Я не понимаю, какое это имеет отношение к разговору.   Неа Ткните пальцем и объясните, в чем ошибка в конкретном рассуждении   Как я должен решать методом Гаусса задачу на собственные значения? Мне же не решения СЛАУ нужны! Их то, ясен пень, бесконечное множество для системы с вырожденной матрицей. Мне собственные значения нужны! Мне нужно базис найти, чтобы матрица (или матрицы в обобщенном случае) оператора была диагональной.   Сначала скажаите мне, зачем ее дать! В чем идея заключается? Вы все слюной брызжете, но ничего по делу еще не сказали. Какой-то нормальный контраргумент от вас можно толковый услышать?   Как еще изволите вас обслужить? Вы - полегче, уважаемый!
×
×
  • Создать...