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

Как поменять значение коррекции в Vericut через системные переменные?


Bastion

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

Уважаемые коллеги, подскажите, можно ли в Vericut решить такую задачу:

Хочу написать программу для снятия фаски с произвольного контура. Решаю так: зная величину фаски и угол через переменные вычисляю на сколько нужно сместить и опустить угловую фрезу. Далее мне нужно всего лишь изменить значение коррекции на длину и радиус фрезы в офсетах станка, например для фанука значение корректора на радиус для инструмента 1 находится в системной переменной #13001 (или #2401 или #12001 - но в моей стойке именно #13001). То есть, в программе я вычислил #1=0.5 - смещение по радиусу и теперь присваиваю  #13001=#13001-#1. Аналогично с коррекцией на длину.  И все бы хорошо, но только вот мои вычисленные переменные почему-то переопределяются в момент взятия коррекции в программе. То есть допустим я снимаю фаску угловой фрезой диаметром 8 мм. Я занес коррекцию на радиус = 4 мм. При взятии инструмента в строке T1M6 можно увидеть, что переменная стала равна 4, далее я вычитаю из неё 0,5 и это тоже видно  #13001 =3.5 , но в строке G1G41D1X... верикат сбрасывает переменную опять на 4 и моя программа не работает ((( 

Извините, если не очень четко все объяснил. Думаю, что специалисты меня поймут. 

Может кто подскажет что тут можно сделать? 

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


Ну, занесите в таблице инструмента коррекцию на инструмент, равную нужному числу. Или же переопределите макро D1 или G41, который обновляет переменную из таблицы инструментов снова.

Ссылка на сообщение
Поделиться на других сайтах
8 часов назад, s_liam сказал:

Ну, занесите в таблице инструмента коррекцию на инструмент, равную нужному числу. Или же переопределите макро D1 или G41, который обновляет переменную из таблицы инструментов снова.

@s_liam Я бы хотел переопределить макро, чтобы на D... значение коррекции считывалось бы из переменной, но порывшись в хелпе нашел только макросы, которые обновляют коррекцию из таблицы коррекций - CutterCompValue, из библиотеки инструментов - ToolCutterComp, напрямую из строки УП - CutterCompValueDirect. Какой макрос позволяет считать значение коррекции из переменной? В хелпе такого вроде нет. Понятно, что можно вручную заносить значение, но, согласитесь, это не то, что нужно. Подскажите, пожалуйста как "переопределить макро D...  который обновляет переменную из таблицы инструментов снова."  Если что - проект прилагаю.

FASKA.zip

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

У меня вот так получилось заставить работать ваш проект. Ещё в Control Variables добавить переменную CGT_CDC_VAL. 
 

-1.jpg

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

@DJ Astro Большое спасибо, заработало! Теперь открываются блестящие перспективы разработки программ с использованием системных переменных!!!

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Orchestra2603
      Да, в рот мне ноги... Ну, считает же Ансис, считает! Блин.. Как до вас донести простой мэсеж. Мне често, пофигу, делает он там себе факторизацию или еще что-то. Но то, что он нормально считает Ланцошем для случая с вырожденной матрицей жесткости - это факт! А раз он считает, то либо (А) вы хрень несете про факторизацию, либо (Б) он такую факторизацию делат сам без проблем. Третьего тут быть не может, и выходит, что в любом случае ваши тезисы оказываются несостоятельными.   Какая вам нужна факторизация? давайте! заказывайте! На какие вам надо матрицы разложить? с какими свойствами? давайте ваш заказ!   Вы на мой пердак не зарьтесь! Смотрите, чтоб ваш функционировал исправно! А то того и гляди, фекализация случится.  
    • ДОБРЯК
      Вам похоже ничего не нужно, а для алгоритму Ланцоша нужно сделать численную факторизацию. Вам только нужно побольше букв и слов написать. :=) Всё подгорел пердак? :=)
    • Orchestra2603
      При чем здесь это? Речь не идет про эффективные или неэффективнеы алгоритмы. Вы утвержаете, что это просто невозможно.   При чем здесь первые или не первые, все или не все... Какое это имеет значение? У Ансис есть алгоритм Ланцоша, он находит столько, сколько запросите. В Маткаде - он да, находит все. Наверное, можно и не все, но я хз, как это делать. Я не понимаю, какое это имеет отношение к разговору.   Неа Ткните пальцем и объясните, в чем ошибка в конкретном рассуждении   Как я должен решать методом Гаусса задачу на собственные значения? Мне же не решения СЛАУ нужны! Их то, ясен пень, бесконечное множество для системы с вырожденной матрицей. Мне собственные значения нужны! Мне нужно базис найти, чтобы матрица (или матрицы в обобщенном случае) оператора была диагональной.   Сначала скажаите мне, зачем ее дать! В чем идея заключается? Вы все слюной брызжете, но ничего по делу еще не сказали. Какой-то нормальный контраргумент от вас можно толковый услышать?   Как еще изволите вас обслужить? Вы - полегче, уважаемый!
    • ДОБРЯК
      Вам нужно десять раз написать одно и тоже, чтобы вы поняли. Почитайте документацию к программе там же всё написано. Мне не сложно копировать...:=) Те алгоритмы которые вы используете находят все собственные числа и вектора. Для разреженных матриц это приводит к их заполняемости. Смекаете о чем я говорю. Или нужно еще разжевать? Во всех.   Решайте методом Гаусса. Матрица 2х2 в чем проблема сделать численную факторизацию любым методом? :=) Больше дела, меньше слов и букв...
    • mannul
      Скорость резания от 8 до 12 м/мин, подача 0,04 мм/зуб, глубина резания - 1,5 мм.
    • Orchestra2603
      " Стою на асфальте я, в лыжи обутый: То ли лыжи не едут, то ли я ..." (с)   1. Вы утверждаете, что для расчетов на СЗ и СВ в случае вырожденной матрицы жесткости нужно провести ее факторизацию. Без нее - никак! Непонятно, какую и зачем, но надо. Ок, допустим.  2. @Jesse,  я, @Fedor, да и вы сами показываете, что таки СЗ определяются для вырожденной матрицы. Значит, либо ваше утверждение про факторизацию неверно, либо она таки делается тихонько себе за кадром. 3. Еще одно наблюдение... Матлаб говорит, что он делает QZ разложение для матриц, у которых нет положительной определенности, т.е. для которых не работает разложение Холецкого. При этом опять же с собственные числа с одной вырожденной матрицей считаются нормально. Т.е. даже если вдруг и необходима такая факторизация (хотя я сомневаюсь, что вот прям обязательно она нужна), то делается она без особых трудностей.   В каком месте я неверно рассуждаю?   Так и не обязательно их записывать для расчета собственных колебаний. Ну... Можно конечно, но тогде некоторые частоты и формы, которые такой симметрией могут и не обладать, вы потеряете в расчете, поскольку введенные условия симметрии их исключат просто из модели.    
    • gudstartup
    • gudstartup
      у меня рободриллы и чпу и тем не менее picture нет наверно она к роботам относится
    • boomeeeer
      Если компания отечественная, то тоже нет смысла. Роботы, ЧПУ, лазеры и рободрилы
    • gudstartup
      это вряд ли если ось Y угловая а какая у вас редукция у вращающейся оправки? по 2мм нержавейки снимать это нелегкая задача для вашего маленького станочка
×
×
  • Создать...