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

Макропрограммирование


autodrey

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

Всем добрый день.

Прошу помощи. Сломал голову уже.

Не без помощи интернетов написал себе цикл для фрезерования по спирали радиусов.

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

Хотелось бы изменением координат в шапке смещать фрезеровку в нужную координату.

На ваш суд:

%
T28M06(FREZA DISK.)
G00G90G54X0Y0B0W0
G43H28Z20.M08
S1800M03 
#29=-10 (KOORDINATA Z NACHALA SKRUGLENIYA)
#28=5 (RADIUS)
#27=10 (SHAG PO Z)
#26=82 (D NACHALA SKRUGLENIYA)
#25=0 (NACHAL'NII UGOL FREZEROVKI)
#24=90 (NACHAL'NII UGOL SFERI)
#23=1 (SHAG UGLA)
#31=0
G01Z[#29]F1000.
#22=#26/2 (R NACHALA SKRUGLENIYA)
G1G41Y[#22]D28F100 (RABOCHAYA PODACHA)
G3 J-[#22]
WHILE [#20 GE 0] DO1
#20=SIN[#24]*[#28] (VICHISLENIE Z)
#21=[#22]+SQRT[[#28]*[#28]-[#20]*[#20]] (VICHISLENIE SFERI)
G1G41X-[SIN[#25]*[#21]] Y[COS[#25]*[#21]] Z[#20]+[#29]-[#28] D28 (KORREKTOR))
#25=[#25]+[#23]
#24=90-[#25]*[#27/360]
END1
G1G41Y[#21]D28
G3 X-[#21] Y0 R[#21]
G3 X0 Y-[#21] R[#21]
G3 X[#21] Y0 R[#21]
G3 X0 Y[#21] R[#21]
G0G40X0Y0M9
M5
G0G91G28Z0
M30
%

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


UnPinned posts
3 часа назад, autodrey сказал:

Хотелось бы изменением координат в шапке смещать фрезеровку в нужную координату.

Здравствуйте. Самое быстрое и простое решение - использовать программное смещение системы координат:

G52 X80 Y50 (смещаем обработку НА 80 мм по X и 50 мм по Y)
(код программы)
G52 X0 Y0 (обязательно отменяем это смещение)

Самый же удобный способ, считаю, делать такие операции с помощью подпрограммы:

G65 P95 X0 Y0 Z2 R5 S0.1 A20 B80
G65 P95 X80 Y50
G65 P95 X-80 Y-20

P95 - номер подпрограммы для примера

 

 

Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, A_1 сказал:

G52 X80 Y50

Если я не ошибаюсь, G52 это для токарного

А для фрезерного кажется G92.1

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

G52 X80 Y50 (смещаем обработку НА 80 мм по X и 50 мм по Y) (код программы) G52 X0 Y0 (обязательно отменяем это смещение)

Спасибо. Не знал, век живи век учись. Возьму на вооружение.

 

Подпрограммы использую на HAAS.

На фрезере с фануком операторы от них плюются. Пишу для них макропрограммами.

 

Всё равно хотелось бы довести цикл из шапки до совершенства.

Используется во внутренней камере цилиндра в паре с такой же накаткой нижнего радиуса.

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

Ссылка на сообщение
Поделиться на других сайтах
23 минуты назад, Viktor2004 сказал:

Если я не ошибаюсь, G52 это для токарного

А для фрезерного кажется G92.1

G52 - одинаково работает для фрезерных и токарных с системами A, B, C

 

18 минут назад, autodrey сказал:

Всё равно хотелось бы довести цикл из шапки до совершенства.

Добавьте переменные для центра отверстия в шапку и суммируйте их в командах перемещений по X и Y:

4 часа назад, autodrey сказал:

G3 X[0+#32] Y[-#21+#33] R[#21]

 

Ссылка на сообщение
Поделиться на других сайтах
29 минут назад, A_1 сказал:

Добавьте переменные для центра отверстия в шапку и суммируйте их в командах перемещений по X и Y:

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

Проблема сместить обработку спирали.

Я вижу выход только в переносе всей обработки в относительную систему G91. Тогда можно будет задать "точку входа" и от неё будет пляска всей обработки. Собственно глубокие фаски так и делаем концевыми фрезами. Написан цикл в относительной системе.

Но как я только не изгалялся.

5 часов назад, autodrey сказал:

G1G41X-[SIN[#25]*[#21]] Y[COS[#25]*[#21]] Z[#20]+[#29]-[#28] D28 (KORREKTOR)

Вот эту строчку заставить в G91 работать не смог.

Поэтому и обратился за помощью.

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

#27  - угловой шаг по сфере на один оборот, а не по Z

для G91 - запомнить предыдущую точку, получить новую - вычислить разницу и забить в G91 Х... У...Z...

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

Проблема сместить обработку спирали.

Проверьте эту программу

Скрытый текст

%
T28M06(FREZA DISK.)
#32=20 (XC)
#33=50 (YC)
G00G90G54X[0+#32]Y[0+#33]B0W0
G43H28Z20.M08
S1800M03 
#29=-10 (KOORDINATA Z NACHALA SKRUGLENIYA)
#28=5 (RADIUS)
#27=10 (SHAG PO Z)
#26=82 (D NACHALA SKRUGLENIYA)
#25=0 (NACHAL'NII UGOL FREZEROVKI)
#24=90 (NACHAL'NII UGOL SFERI)
#23=1 (SHAG UGLA)
#31=0
G01Z[#29]F1000.
#22=#26/2 (R NACHALA SKRUGLENIYA)
G1G41Y[#22+#33]D28F100 (RABOCHAYA PODACHA)
G3 J-[#22]
WHILE [#20 GE 0] DO1
#20=SIN[#24]*[#28] (VICHISLENIE Z)
#21=[#22]+SQRT[[#28]*[#28]-[#20]*[#20]] (VICHISLENIE SFERI)
G1G41X[-SIN[#25]*[#21]+#32] Y[COS[#25]*[#21]+#33] Z[#20]+[#29]-[#28] D28 (KORREKTOR))
#25=[#25]+[#23]
#24=90-[#25]*[#27/360]
END1
G1G41Y[#21+#33]D28
G3 X[-#21+#32] Y[0+#33] R[#21]
G3 X[0+#32] Y[-#21+#33] R[#21]
G3 X[#21+#32] Y[0+#33] R[#21]
G3 X[0+#32] Y[#21+#33] R[#21]
G0G40X[0+#32]Y[0+#33]M9
M5
G0G91G28Z0
M30
%

 

Ссылка на сообщение
Поделиться на других сайтах
17.03.2023 в 17:42, A_1 сказал:

Проверьте эту программу

  Показать содержимое

%
T28M06(FREZA DISK.)
#32=20 (XC)
#33=50 (YC)
G00G90G54X[0+#32]Y[0+#33]B0W0
G43H28Z20.M08
S1800M03 
#29=-10 (KOORDINATA Z NACHALA SKRUGLENIYA)
#28=5 (RADIUS)
#27=10 (SHAG PO Z)
#26=82 (D NACHALA SKRUGLENIYA)
#25=0 (NACHAL'NII UGOL FREZEROVKI)
#24=90 (NACHAL'NII UGOL SFERI)
#23=1 (SHAG UGLA)
#31=0
G01Z[#29]F1000.
#22=#26/2 (R NACHALA SKRUGLENIYA)
G1G41Y[#22+#33]D28F100 (RABOCHAYA PODACHA)
G3 J-[#22]
WHILE [#20 GE 0] DO1
#20=SIN[#24]*[#28] (VICHISLENIE Z)
#21=[#22]+SQRT[[#28]*[#28]-[#20]*[#20]] (VICHISLENIE SFERI)
G1G41X[-SIN[#25]*[#21]+#32] Y[COS[#25]*[#21]+#33] Z[#20]+[#29]-[#28] D28 (KORREKTOR))
#25=[#25]+[#23]
#24=90-[#25]*[#27/360]
END1
G1G41Y[#21+#33]D28
G3 X[-#21+#32] Y[0+#33] R[#21]
G3 X[0+#32] Y[-#21+#33] R[#21]
G3 X[#21+#32] Y[0+#33] R[#21]
G3 X[0+#32] Y[#21+#33] R[#21]
G0G40X[0+#32]Y[0+#33]M9
M5
G0G91G28Z0
M30
%

 

Большое спасибо! Вроде всё работает.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • andrey2147
      Систем -вправо,- серво сет, -серво тюн.- поз еррор.
    • andrey2147
      Это что на контрольные клеммы приходит ? Куда входит ?
    • Artem CAD-is
      В SOLIDWORKS идет версия Xpress На сегодняшний день, к сожалению, нет варианта приобрести новую лицензию.  Остается 1 вариант, но, по правилам форума, я не могу здесь писать как и где этот вариант использовать.  P.S. - я надеюсь все все поняли)  
    • Tad
      Вы спрашиваете про опыт... @gudstartup совершенно прав - отправляйте узел в ремонт, так как некомпетентная возня, как правило, приводит к бОльшим как временным так и материальным потерям.
    • МиО
      Для не последних (например для 2012) версий надо добавить  [HKEY_CURRENT_USER\Software\SolidWorks\SolidWorks 2012\Performance\Graphics\Hardware\Gl2Shaders\Other\Intel(R) HD Graphics 4000] "Workarounds"=dword:00080008 Вместо "Intel(R) HD Graphics 4000" вставить свое имя видеокарты. Может быть любым.  
    • Alexey8107
      Я как бы в курсе. Вопрос звучал Вы же для чего то флудите, видимо уровень себе накручиваете.    К вашему сведению, у нас три таких станка, и все три загружены работой в три смены. Один вышел из строя, их осталось два, но работают за троих.   Интересная интерпретация   Я спрашивал про идеи и вдруг у кого есть опыт устранения дефекта. Адекватные люди промолчали, я это воспринимаю как отсутствие опыта или идей. И это нормально. Вас же отчего то поперло на откровенный флуд. 
    • sloter
      В этом случае (при импорте) можно проще (раз связь с исходными построениями всё равно потеряна). При открытии  IGES зайти в Параметры и поставить галку "Импортировать несколько тел как детали".    В вышеуказанном способе поверхности перенесутся. Правда они все могут содержаться в какой то одной детали. Но правильная структура сборки на данном этапе, как я понял, вам не важна. Если поверхностей не сильно много, то может устроит.
    • Jenny
      Ну что поделать. Оптические сборки они такие. Соединители(2шт)+заглушка+провода а в спецификацию летит 1 строкой. При этом для сборщиков необходимо указывать как проложить провод. Вот и извращаемся как можем. Благодарю!
    • Павлуха
      Поставите сюда галочку и будет Вам счастье.    
    • Бестолковый
      Так вот, осваивая потихоньку SW пришёл к созданию собственных таблиц свойств. Тех самых которые Custom Properly Table, для детали, сборки чертежа детали и чертежа сборки соответственно. Создал таблицы (синхронно создав заготовки для каждого типа вышеуказанных документов, переписал переменные и сложил в отдельную папочку, прописав в свойствах SW пути к ней. Так, чтобы при создании нового документа всё открывалось правильно.   Начитавшись форумов всяко-разных профильных (включая этот) и мануалов пришёл к выводу, что можно "скармливать" в таблицу текстовый или Excel файл с необходимыми данными, как то данные для заполнения штампа и прочее. Иерархия такова: Есть конкретный неизменяемый диск, на нём папки всех проектов, в каждой из них, кроме самих файлов SW кладу этот самый файл гордо именуемый "Код_проекта_db.txt" имя которого меняется, равно как и путь. Всё бы ничего, но когда у тебя один проект - всё гуд, делаешь второй проект - при открытии панельки справа - SW автоматом "подтягивает" файлик из первого проекта, приходится открывать Properly Table Builder и переназначать путь к файлу с необходимыми для второго проекта данными.   Сопсна - сам вопрос к Многоуважаемому Сообществу: Продолжать перезаписывать пути каждый раз или есть какой-то другой выход из сложившейся моими шаловливыми ручонками ситуации?   Заранее признателен за адекватный развёрнутый ответ!  
×
×
  • Создать...