Jump to content

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


autodrey

Recommended Posts

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
%

Link to post
Share on other sites


UnPinned posts
A_1
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 - номер подпрограммы для примера

 

 

Link to post
Share on other sites
Viktor2004
5 минут назад, A_1 сказал:

G52 X80 Y50

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

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

Link to post
Share on other sites
autodrey
8 минут назад, A_1 сказал:

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

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

 

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

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

 

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

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

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

Link to post
Share on other sites
A_1
23 минуты назад, Viktor2004 сказал:

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

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

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

 

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

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

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

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

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

 

Link to post
Share on other sites
autodrey
29 минут назад, A_1 сказал:

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

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

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

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

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

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

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

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

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

Link to post
Share on other sites
Ander

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

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

Link to post
Share on other sites
A_1
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
%

 

  • Нравится 1
Link to post
Share on other sites
autodrey
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
%

 

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

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.




  • Сообщения

    • soklakov
      10^18 частиц. Да, мощнее имеющихся.
    • Golem
      Спасибо большое, я с таким не сталкивался.
    • VOleg
      Я бы сказал "Странный вопрос". За 40+ лет ни разу на чертеж детали не ставил номера позиций т.к. ни разу не нужно было. Но вот последние несколько лет люди начали спрашивать... Видимо на производство пришли "новые люди"... Вот, помогаю, как могу. Еще надо на листах металла на складе писать на какие детали куплен этот металл... И на трубы, что ли? А на сверлах писать какие отверстия нужно будет просверлить...
    • NGM
      Смотрю стандарт, и понимаю - сколько человек его прочтёт, столько трактовок и будет. Сплошные абстрактные формулировки; целый раздел про аттестацию, начинающийся с того, что она "не носит обязательный характер"... Зато, если буквально читать требования к специалисту к нормоконтролю - какой-то терминатор получается: и национальную систему стандартизации знает (всю!), и опыт по разработке КД/ТД имеет, и английским языком владеет. Вот для чего нужны такие ГОСТ-ы?! Заготовка для локального СТО, не более.  
    • NGM
      В идеальном мире розовых единорогов блюющих радугой подпись "Т. контр" в чертеже должен ставить технолог, который будет разрабатывать техпроцесс на проектируемое изделие. На практике я такого не встречал никогда. Предприятиям, где такое практикуется - моё заочное уважение. @Фарита, расслабьтесь. Лучшее, что Вы можете сделать у себя - организовать собственную группу конструкторов, которые будут: а) перечерчивать полученную КД под требования вашего производства, б) выносить мозги разработчику бесконечными ПИ. Поверьте, так работает абсолютное большинство предприятий промышленности - почти везде есть подразделения "конструкторского сопровождения производства", по факту являющиеся живыми примерами того, что ни ЕСКД, ни ЕСТД не работают и никогда не работали (во всяком случае, первое слово из обеих абревиатур).
    • vad0000
      Только одна клавиша не работает?
    • Fedor
      А может попробовать решить задачу  конструкторской оптимизации, то есть минимизировать величину расхождения с экспериментом... 
    • Metal_Cutter
      Это легко лечится, нужно отключить все Join-Up.
    • wake163
    • nicomed
      ИМХО, до разговора о самой таре как раз и надо определяться: в каком виде будет транспортировка ( собранном частично или подетально) предельные размеры и масса упакованной единицы надо ли сортировка по типам деталей (фасад, стенка) при фасовке (для автоматизации, соответственно, должны быть прописаны свойства в деталях) во что будет упаковываться, есть ли какие наработки по изготовлению тары ( тут я "плаваю" ибо такое не делал никогда ) ....если есть мысли что еще надо - дополняйте..   а потом уже только можно что-то продумывать, по каким размерам сортировать, по каким наименованиям ну и т.д.
×
×
  • Create New...