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

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


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 пользователей

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




  • Сообщения

    • Shura762
      Что происходит? кто может дать ответ. Открываем книгу Нарышкин Подшипники, смотрим упорные там указан ГОСТ 6874-75, ищем в сети , тоже есть а вот на оф сайте стандарта его нет, В ТФ тоже есть модели по этому госту, Сейчас действует гост 7872-89. Что не так с ГОСТ 6874, типа ой мы ошиблись и забыли?
    • Ганс В
      Доброе времени суток знатоки NX12CAM У меня такой вопрос. Мне нужен немного увеличить стрелку при построения размеров,  на фоне когда ставиться размер размер стрелки мелкий.  И посоветуйте пожалуйста ведоуроки по NX12  Спасибо заранее 
    • Bot
      Оригинал: Roopinder Tara. Watch this space: Here come manufacturable generative designs Такие кронштейны демонстрируют облегчение конструкции с помощью топологии. У этого кронштейна острые края и гладкие поверхности, это означает, что деталь еще можно подвергнуть машинной обработке, чтобы сделать ее максимально легкой Мы уже знакомы с Майклом Богомольным — мы встречались с ним на его предыдущем предприятии ParaMatters, которое было продано Carbon, компании по производству 3D-принтеров, в августе 2022 года. После этого он собрал свою команду ParaMatters (шестеро из них имеют докторскую степень) и получил инвестиции в размере 2,5 млн долларов для запуска InfinitForm. Эта компания вполне может создать первое генеративное программное обеспечение, которое проектирует подходящие для использования и производства детали. Крупные поставщики САПР могут заявить, что их программное обеспечение для генеративного проектирования имеет возможности для создания [...] View the full article
    • lux59
      построить дугами барашку я пробовал, не то слегка, он в списке выдаст количество сегментов, да норм сделаю покажу, что вышло, правда пришлось делать сборкой не единой деталью, в общем я понял как это работает, Спасибо за помощь!
    • lem_on
      Ага, особенно некоторых бестолочей со своим пониманием реальности.  По типу, я скачал программу, я так вижу, я пишу книгу. 
    • malvi.dp
      Так в чем проблема создать кривую и протянуть профиль? Единственная трудность это кривую сделать из дуг и отрезков, а не сплайном. Если же не использовать инструментарий сварных конструкций, то можно и сплайн использовать в качестве направляющей.  
    • Alexey0336
      Добрый день. Как то фигурировал тут вопрос с точкой в названии файла. У меня проблема, не могу захватить модель, пишет, что с этим символом нельзя. Обойти никак нельзя получается?
    • malvi.dp
      У вас там скорее всего скрыты размеры. Перетяните их дальше от штриховки, чтоб не пересекали.
    • Snake 60
      @Бестолковый С названием топика не ошиблись? Человек спрашивает: ' VBA ' 1. Open a document in SOLIDWORKS. ' 2. Run the macro below to set inch units with '     a fractional base of 16 and no rounding. Dim swApp As SldWorks.SldWorks Dim Part As SldWorks.ModelDoc2 Option Explicit Sub main()    Set swApp = Application.SldWorks    Set Part = swApp.ActiveDoc    Part.SetUnits swINCHES, swFRACTION, 16, 0, False End Sub   Код взят отсюда: https://help.solidworks.com/2019/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.imodeldoc2~setunits.html Вот еще описание всех методов: https://help.solidworks.com/2021/English/api/swconst/DP_Units.htm Ну и на вкусное, статья от Артема (см. через ВПН) https://www.google.com/url?sa=t&source=web&rct=j&opi=89978449&url=https://www.codestack.net/solidworks-api/options/document/set-units/&ved=2ahUKEwjgpL-apN6GAxU7HxAIHYO0D2IQFnoECBAQAQ&usg=AOvVaw15xq49gocoVQ5BzEA31qGf
    • Shvg
      IModelDocExtension.SetUserPreferenceInteger(swUserPreferenceIntegerValue_e.swUnitSystem, swUserPreferenceOption_e.swDetailingNoOptionSpecified, swUnitSystem_e.<Value>), где swUnitSystem_e.<Value> перечисление swUnitSystem_CGS           1 = Centimeter, gram, second  swUnitSystem_Custom        4 = Lets you set length units, density units, and force  swUnitSystem_IPS           3 = Inch, pound, second  swUnitSystem_MKS           2 = Meter, kilogram, second  swUnitSystem_MMGS          5 = Millimeter, gram, second   
×
×
  • Создать...