346 вопросов

351 ответов

2,308 пользователей

Добро пожаловать на сайт Вопросы и Ответы, где вы можете задавать вопросы и получать ответы от других членов сообщества. С 03/01/2018 вопросы могут задавать только владельцы учебных аккаунтов LAUFER CNC LLC. Зарегистрироваться можно по этой ссылке: https://cnc.uno/reg

Обработка полусферы

0 голосов
Подскажите пожалуйста, почему при симуляции на Fanuc 21i-MB такой программы:

O0002
N100G00G17G21G40G49G80G90
N102G91G28Z0.
N104T1M06
N106G00G17G90G54X0Y0S800M03
N108G43H1Z50M08
N110#100=41
N112#101=1
N114#102=#100-#101
N116WHILE[#102NE1]DO1
N118#103=SQRT[#100*#100-#102*#102]
N120G02X#103Z#102R50F0.5
N122G02X#103I-#103F0.5
N124#101=#101+1
N126GOTO114
N128END1
N130M09
N132M05
N134G91G28Z0.
N136G28X0.Y0.
N138G90
N140M30
%

вызывает зарезы на поверхности обрабатываемой сферы? где ошибка?

заготовка 100х100х50, РИ-фреза D10 L120, координаты нуля (-400;-200;-335)
спросил 18 Июль, 14 от аноним в категории Макро-программирование и автоматизация производства

1 Ответ

0 голосов

Здравствуйте , Вы забыли включить компенсацию на радиус  и ещё - ошибка в кадре 132 остановка шпинделя раньше чем выход по Z

O0021
N100G00G17G21G40G49G80G90
N102G91G28Z0.
N104T1M06
N106G00G17G90G54X0Y0S800M03
N108G43H1Z50M08
G42D1X5.
N110#100=41
N112#101=1
N114#102=#100-#101
N116WHILE[#102NE1]DO1
N118#103=SQRT[#100*#100-#102*#102]
N120G02X#103Z#102R50F0.5
N122G02X#103I-#103F0.5
N124#101=#101+1
N126GOTO114
N128END1
N130M09G40
N134G91G28Z0.
N136G28X0.Y0.
М05
N138G90
N140M30
%
попробуйте так
ответил 19 Июль, 14 от roman12 (600 баллов)

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

на счёт остановки ,  нет выхода в R/S-point , я и подумал что лучше остановить потом
не думаю, что это важно в данном случае.
Здравствуйте , я просимулировал Вашу программу (действительно были зарезы) , когда сделал коррекцию на радиус (в этом случае круговая интерполяция по часовой , значит вправо G42) обработка идёт без зарезов . Но я сразу не заметил что траектория движения инструмента уменьшилась на этот радиус (фреза 10 / радиус 5) тоесть сфера уменьшилась на диаметр 10 . 
 Когда я к переменной #100 прибавил значение этого радиуса (5) , то диаметр  сферы востановился , но по Z надо опустить ноль программы на то же значение . Я не совсем уверен в корректности  такого решения , но на вид сработало , на реальном станке проще (можно сразу всё прверить , тут же подкорректировать)

отлично, Роман!

...