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

Vericut


Alexandr

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

Знатаки Vericut есть пару вопросов, помогите пожалуста.

1. В системах cnc-88 и fanic 6m обязательно в конце координат целого числа ставить точку, например X300. Y56. Как заставить систему, что б она за этим следила

2. B CNC - 88 (FADAL) есть макрокомманды L9601 - выборка пряммоугольного кармана, как сделать чтоб система эту команду понимала?

Или может постпроцессором кто поделится.

Адресс мой alex-sas@yandex.ru

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


По первому пункту решение сразу в голову не пришло :wallbash: ,

а по второму пункту -

Есть два способа:

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

2) в VERICUTе на команду L9601 назначить вызов подпрограммы, в которой с помощью переменных самому описать движение инструмента X,Y,Z,G1,G2,G3...

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

По первому вопросу - проще всего описать формат слова как trailing or decimal 3.3, тогда при отсутствующей точке перемещение будет в микронах.

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

GARRY

Спасибо большое получилось :clap_1:

Varg

Если не трудно по подробнее, искал я такой макрос и не нашел :unsure:

Формат записи такой L9601R0+100.R1+1.R2+100.R3+100.

где соответственно R0-величина подачи

R1-Величина перекрытия(в данном случаи диаметр фрезы - 1)

R2-Величина кормана по X

R3 - по Y

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

Если не трудно по подробнее, искал я такой макрос и не нашел

Вполне возможно, если у Вас не последняя версия VERICUT.

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

1) L- определяете на вызов макроса CallSubName

2) O - вызов макроса SubroutineSequence

3) R - тип слова Special / VariableTag

4) Создаем текстовый файл с любым именем, н-р Pocketmacro.sub

5) В созданном файле пишем

O9601

G91

G1 X=R2 F=R0

Y=R3

X=-R2

...

т.е. описываем перемещение фрезы с заданными параметрами (можно использовать операторы If, while ...)

....

M17 (выход из подпрограммы)

6)В меню Setup>G-code>Settings / Subroutines

указываем путь к созданному файлу (Pocketmacro.sub)

Теперь при встрече строки L9601R0+100.R1+1.R2+100.R3+100. управление будет передаваться к УП из файла Pocketmacro.sub

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

3) R - тип слова Special / VariableTag

Смысл понятен, только я не понял третий пункт.

И еще, когда я савлю trailing or decimal 3.3,запись в УП

#1=10.

G1X#1

воспринимается как переход в микронахю

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

Смысл понятен, только я не понял третий пункт.

Регистр R определяете как знак переменной в меню Word Format.

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

Спасибо Varg за ответы, они мне очень помогли.

Теперь мои вопросы к Varg.

1.При выводе со станка HERMLE(H&H 430i) УП содержит символ "*"

в конце каждого кадра. V_CUT глючит при этом.

2.Оператор условного перехода в этой же стойке не

соответствует настройкам в V_CUT:

есть IF Q1 EQ Q2 GO TO LQ3 вместо D09 P1 Q1 P2 Q2 P3 Q3

_________NE___________________D10

_________GT___________________D11

_________LT___________________D12

Спасибо.

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

1.При выводе со станка HERMLE(H&H 430i) УП содержит символ "*"

в конце каждого кадра. V_CUT глючит при этом.

У меня эта проблема не проявилась (VERICUT 5.4).

post-28-1102508751_thumb.jpg

2.Оператор условного перехода в этой же стойке не

соответствует настройкам в V_CUT:

есть IF Q1 EQ Q2 GO TO LQ3 вместо D09 P1 Q1 P2 Q2 P3 Q3

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

Уважаемые господа - знатоки вериката!

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

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

Буквально проблема в следующем. При обработке детали с 4 сторон необходимо определить, что быстрее:

- обработка с минимальным количеством индексирования по 4 оси, но с большим количеством смен инструмента

или

- обработка с минимальным количеством смен инструмента, но с большим числом поворотов.

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

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

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

Самый простой способ :doh: - добавить макрос задержки DwellTime (с нужным значением в секундах) и DwellSeconds к описанию действий VERICUT при смене инструмента, например на команду M6.

Уверен, я для Вас, Константин, Америку не открыл. =)

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

Спасибо, уважаемый Игорь!

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

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

надеялся, что все гораздо проще

Всё достаточно просто:

1. Меню Setup>Control>Word/Address

2. В списке адресов ищем команду смены инструмента M6 и указываем в ней любой макрос (например ToolChange)

3. Меню Edit>Add/Modify

4. В поле MacroName пишем слово DwellTime, в поле Override Value - значение задержки при смене инструмента (например 30)

5. Кнопка Add

6. В поле MacroName пишем слово DwellSeconds

7. Кнопка Add

8. Кнопка Close

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

Спасибо, уважемый Игорь!

Вчера сделал первые пять действий:

1. Меню Setup>Control>Word/Address

2. В списке адресов ищем команду смены инструмента M6 и указываем в ней любой макрос (например ToolChange)

3. Меню Edit>Add/Modify

4. В поле MacroName пишем слово DwellTime, в поле Override Value - значение задержки при смене инструмента (например 30)

5. Кнопка Add

, но не догадался сделать еще 3:

6. В поле MacroName пишем слово DwellSeconds

7. Кнопка Add

8. Кнопка Close

поэтому и не добился эффекта.

Сейчас доделал - все нормально, меняешь DwellTime - меняется время в протоколе.

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

С уважением к Varg.

1. VERICUT 5.3 "глючит" следующим образом, например:

-в кадрах, где идет перемещение только по "Z", сбрасывается коррекция на высоту инструмента;

-если в конце кадра стоит М-функция, то она сбрасывается G90G00Z0M92* - G90G00Z0.

А, вообще, я имел ввиду, как сделать, чтобы символ "*" в конце кадров игнорировался.

2.Я не понял как.

3.Q108- системная переменная, равная корректору на радиус текущего инструмента. Я не смог.

4.В кадрах (FANUC-6MB)

M11G90G00B90.

M10G01Z0F100

М11 и М10- разжим и зажим поворотного стола с перемещением его по оси "Y" на ~3мм.

М10 и М11 я сделал как подпрограммы, но не смог сделать, чтобы сначала отрабатывались М11 и М10, а затем остальные функции кадра, как на станке.

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

чтобы символ "*" в конце кадров игнорировался.

Cotrol>Word Format> на регистр "*" определяем как Special / End Of Block

Q108- системная переменная, равная корректору на радиус текущего инструмента.

Макрос SetDynamicVars (Override Value: CurCDC 108) назначается в меню Control > Adv.Options > Events/ Start of processing

чтобы сначала отрабатывались М11 и М10, а затем остальные функции кадра, как на станке.

Для этого существует макрос ProcessMotion, который производит перемещения по заданной функции, не дожидаясь конца кадра, т.е. в командах M10, M11 после всех макросов надо поставить этот.
Ссылка на сообщение
Поделиться на других сайтах

1.Cotrol>Word Format> на регистр "*" определяем как Special / End Of Block

2.Макрос SetDynamicVars (Override Value: CurCDC 108) назначается в меню Control > Adv.Options > Events/ Start of processing

3.Для этого существует макрос ProcessMotion, который производит перемещения по заданной функции, не дожидаясь конца кадра, т.е. в командах M10, M11 после всех макросов надо поставить этот.

4.(  IF Q1 EQ Q2 GO TO LQ3 вместо D09 P1 Q1 P2 Q2 P3 Q3)

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

<{POST_SNAPBACK}>

1.Дело в том, что регистр "*" определен уже как знак мат. умножения. :g:

2.Не получилось. :wallbash:

3.Не получилось. :wallbash:

4.Я не смог. :wallbash:

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

Я особо не знаток - но помогу

1. В системах cnc-88 и fanic 6m обязательно в конце координат целого числа ставить точку, например X300. Y56. Как заставить систему, что б она за этим следила

можно написать

собственный макрос и добавить его соответственно при обработке движения осей X Y Z I J K F . Например ( у меня работает система так)

CGTech Macro Language Source

text sccs_id = " @(#)fanuc.cms 9.1 08/11/01";

#include <gendef.cmh>

#include <gentypes.cmh>

#include <cfunc.cmh>

#include <ctlvarc.cmh>

/* ******************************************************************

****************************************************************** */

macro cms_CheckPoint(word, textstr, value)

text word;

text textstr;

number value;

locals

text buffer;

number len1,len2;

text str1,str2 ;

number val1,val2;

{

buffer="";

/*для рассчитанного значения в Vericut*/

val1=floor(value); /*округляем до целого*/

str1=textof(value); /*преобразуем в строку*/

len1=length(str1); /*длина строки*/

/*для строки под словом*/

len2=length(textstr);

val2=valueof(textstr);

lookup(word)

{

"X":

{

/* то-есть значения есть целые что нас и интересует */

if (val1 eq val2)

{

/* если длина числа без точки = преобразованному Vericut */

if (len1 eq len2)

{

/* format(buffer, "word=%s|textstr=%s|val2=%n|len2=%n|==|val1=%n|len1=%n|str1=%s",

word, textstr,val2,len2,val1,len1,str1);*/

/* русские буквы система Vericut не понимает */

format(buffer, "Word %s=%s without decimal point ... must be %s%n.",

word, textstr, word, value);

cfunc_send(ERROR, buffer, 0);

}

}

}

"I":

{

/* то-есть значения есть целые что нас и интересует */

if (val1 eq val2)

{

/* если длина числа без точки = преобразованному Vericut */

if (len1 eq len2)

{

/* format(buffer, "word=%s|textstr=%s|val2=%n|len2=%n|==|val1=%n|len1=%n|str1=%s",

word, textstr,val2,len2,val1,len1,str1);*/

/* русские буквы система Vericut не понимает */

format(buffer, "Word %s=%s without decimal point ... must be %s%n.",

word, textstr, word, value);

cfunc_send(ERROR, buffer, 0);

}

}

}

/* ну и так далее

.................

*/

}

}

Адрес: evgeneche@yandex.ru

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Борис Е
    • Igor Lipin
      Спасибо, завтра попробуем.
    • Авенир
      Имеются чертежи комнат (помещений) - 16 штук, строящегося здания. Нужно оформить эти чертежи по стандарту DIN. Нам необходимо отправить чертежи иностранной компании, а они не принимают в российском формате. Есть кто-то, кто может помочь в этом вопросе? 1
    • gudstartup
      @Igor Lipin у релюшек контакты почистите и проверьте блокировку замка раб зоны может проводочек от замка отсох но не совсем если кабель подвижен или сам замочек поистерся. вот телеграммы и не доходят до привода
    • KsunReh
      Странно, раньше ИНТОС поставлял их... По поводу выдержит или нет:   1) Усилие гидроцилиндра одна из его рабочих характеристик. Прикиньте грубо какое давление в полости будет действовать на знак (с помощью симуляции или по формулам) и сопоставьте с паспортным усилием г/ц 2) У ТПА (литьевой машины) обычно есть функция удержания давления на ввод гидрознаков во время впрыска. Если этой функции нет или она отключена в меню, то пункт №1 частично теряет смысл. 3) На гидроцилиндр можно поставить гидрозамок. Стоимость вопроса - 5 - 20 т.р. за 1 цилиндр. Гидрозамок увеличивает усилие отжима штока цилиндра и делает его независимым от пункта №2   По вашему случаю картинка у вас маленькая, непонятна конструкция + какое сырье, например льете ли вы ПК или ПП от этого зависит давление в форме...     
    • Авенир
    • andref
      Попробуйте  если заменить реле проблематично, хотя бы поменять их местами (может другая ошибка появится )
    • Orchestra2603
      Была такая проблема у нас. Стол вибростенда бился об ограничитель. Но тогда это было ждя внутренних целей, так что мы сильно не заморчивались - все всё прекрасно понимали.   Но вообще можно по-разному попробовать выкрутиться.   1. Специально для испытаний в низкочастотной области можно присобачить между стендом и изделием какую-то "мягкую" подвеску. Тогда между стендом и изделием булет промежуточная простейшая система с своей АЧХ. Можно подобрать такую жесткость подвески, чтобы как раз в области низких частот был первый резонанс, и тогда при небольшом ходе стола можно получить бОльшую амплитудлу перемещения на самом изделии относительно стенда, ну и соответственно и ускорения будут также кратно выше. Можно поставить на изделие дополнительный акселерометр, чтобы знать точно там амплитуду ускорения. Очень похоже на задачу подбора параметров всяких виброгасителей, только в обратную сторону ))) Насколько это удобно и практично - это конечно вопрос открытый. Если можно было бы посмотреть на изделие и на стенд, может, че-нить придумали бы вместе.   2. Можно просто в МКЭ посчитать гармонический анализ, подогнать демпфирование и скорректировать жесткости/массы, чтобы для более высоких частот все хорошо ложилось. Тогда заказчику можно будет сказать, что это очень сложная задача поставить эксперимент для таких частот, но есть надежные расчетные модели, которые показывают хорошее совпадение с экспериментом на более высоких частотах (показываем графики), и они позволяют надежно предсказать результаты таких испытаний в низкочастотной области. Тут, кончено зависит то того, как это правильно преподнести заказчику. Нужна харизма определенная :)   3. Можно вообще придумать что-то типа маятника, и подвесить туда изделие. Варьируя высоту подвеса, можно менять частоту колебаний.  Амплитуду можно варьировать меняя начальное отклонение, причем можно сделать ее довольно большой (только отклонения должны быть маленькими, чтобы не проявлялась сильно нелинейность восстанавливющего момента). Вот такое я делал для калибровочных целей, был довольно забавный самопал конечно ))             Хз... можно внести искажения в АЧХ изделия. Надо осторожно
    • Igor Lipin
      Извиняюсь, да такой модуль есть. Я предположил он установлен в самом приводе  https://postimg.cc/gallery/cJHmJHg
    • Пронин
      Нашел только в RMPGroup, цена 1625  Евро/шт., а надо 2. У Интос нету и не будет, звонил  им. А подскажите спецы, я с ГЦ раньше не сталкивался, если ставить обычные ГЦ не выдержит, назад пойдет, у меня знак оформляющий ступенькой ф 3,2 (длина3,5)хф5,2 (длина 4мм) в неподвижке, на него усилие при литье небольшое. Или надо обязательно подпирать. 
×
×
  • Создать...