hap7y

hap7y

На Пикабу
Дата рождения: 16 марта
725 рейтинг 63 подписчика 24 подписки 6 постов 5 в горячем
Награды:
5 лет на Пикабу
18

Программирование на FANUC (Пример использования подпрограмм из последних постов)

Нужно обработать сразу 4 заготовки.

Делаем подставку без регулировок, фрезеруя по месту карманы для каждой заготовки. Высота посадки детали будет +/- одинаковая, ширину кармана делаем чуть пошире заготовки на пару мм, так как это литьё.

Еще на той стороне, которая смотрит на нас, делам упоры из болтов, фиксируем(можно на сварку) и проходим по ним фрезой, чтобы детали по оси Z Стояли на одном расстоянии при B0.

Обмеряем с помощью marposs/renishaw, получем набор координат:

Считаем угол поворота каждой детали

#521=ATAN[[#638+#655]/227](*B1*);

#522=ATAN[[#641+#658]/227](*B2*);

#523=ATAN[[#644+#661]/227](*B3*);

#524=ATAN[[#647+#664]/227](*B4*);


и смещение по оси Х и Z по подпрограмме:

G65P8020I501K500X#638Z130A#521;

G65P8020I504K503X#641Z130A#522;

G65P8020I507K506X#644Z130A#523;

G65P8020I510K509X#647Z130A#524;


Которая выглядит так:

O8020(Z-X RAS4ET);

(#4 - I X YACH);

(#6 - K Z YACH);

(#18 - R RADIUS DETALI);

IF[#1EQ#3100]THEN#1=#5045(NACH UGOL - A#1);

(#24 X - SMESH);

(#26 Z - SMESH);

IF[#4EQ#3100]THEN#4=507;

IF[#6EQ#3100]THEN#6=506;

IF[#2NE#3100]THEN#1=#2;

#[#4]=-[[#26*SIN[#1]-#24*COS[#1]]](X);

#[#6]=[#26*COS[#1]+#24*SIN[#1]]+#18(Z);

M99;


Получаем набор координат:

#521-#524 углы поворота стола для каждой из деталей

#500, #503, #506, #509 координаты по оси Z

#501, #503, #507, #510 координаты по оси Х

Дальше обработка.

Показать полностью 3
194

Программирование на FANUC (Поиск середины заготовки на поворотной оси)

Еще немного геометрии и Fanuc.

Цель - найти центр заготовки на поворотной оси, при установке детали в произвольном месте, кстати, деталь необязательно должна быть круглой.

Детали разовые, поэтому обработка без подставки.

Наша цель при повороте стола на любой градус знать где находится центр заготовки.

Ищем центр заготовки при положении стола в В0 любым доступным методом (marposs/renishaw/на касание/стрелочный индикатор)

В нашем примере возьмем целые числа для удобства расчетов. Хотя чуть позже они будут не очень целыми. и повернем стол на 14 градусов. Получим:

Итоговый результат должен получиться по Х20,46 Z37,89

Для удобства увеличим зону рассчетов

Если уже стало всё непонятно, то дальше будет еще хуже))

Проведем доп линии и обозначим точки

Точка А - центр вращения стола, точка С - центр детали

CD - это наше смещение по оси Х после поворота

BD - по оси Z


AG=41(Смещение по Z до поворота)

DG=11(Смещение по Х до поворота)

***Треугольник AHG***

HG=AG*cos14=39,782

AH=AG*sin14=9,919

AH=CF


***Треугольник DEG***

EG=11*tg14=2,743

ED=11/cos14=11,337


***Треугольник EFG***

EF=EG*sin14=0,664

GF=EG*cos14=2,662


CD=AH+ED-EF=9,919+11,337-0,664=20.592(**ось X**)

BD=HG-GF=39,782-2,662=37,12(**ось Z**)


При перечтении статьи заметил что оси можно  посчитать более коротким путем, через треугольник DFG, пришлось немного переписать формулу, но по итогу она получилась проще (оставлю было/стало)

DF=DG*cos14

FG=DG*sin14

CD=DF+AH(**ось X**)

BD=HG-GF

Итог:

(Х) CD=[11*cos14]+[41*sin14] / было CD=[11*sin14]+[11/cos14]-[11*tg14*sin14]

(Z) BD=[41*cos14]-[14*sin14] / было BD=[41*cos14]-[11*tg14*cos14]

так как у нас стоит кругляк, нужно к оси Z еще прибавить его радиус.


сделаем из расчетов небольшую подпрограмму с переменными, для задания произвольного смещения и угла поворота


О0100;

(#2 - B угол поворота детали);

(#24 - X начальное смещение);

(#26 - Z начальное смещение);

(#18 - R радиус деали);

#500=#26*COS[#2]-#24*SIN[#2]+#18(**Z**);

#501=#24*COS[#2]+#26*SIN[#2](**X**);

M99;


вызов

G65P0100B30X10Z5R200;


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

Показать полностью 6
98

Программирование на FANUC (Выставление детали на поворотной оси)

Часто бывает надобность в единичных деталях, для которых делать отдельную подставку нецелесообразно.

В таких случаях устанавливаю просто на кругляк, ну или на что попало.

Требуется повернуть деталь так, чтобы одна из ее сторон стала паралельна оси Х.

Эскиз вид сверху:

Черным цветом схематично указана одна из граней детали.

Так как у нас имеется система для замеров Renishaw, будем использовать ее. Но при желании можно сделать тоже самое резцом/сверлом/фрезой просто подвести маховиком и записать значения.

По крайним точкам грани (оси Х) производим замеры по оси Z.

Получаем примерно следущее:

#660=173.767 (значение по оси Z в точке Х-146)

#661=177.633 (значение по оси Z в точке Х146)

Известно два катета

а=#660-#661

b=146+146

Зная их, можно найти нужный нам угол через арктангенс, данная функция отлично работает на фануке пишется ATAN[значение]

∠β=arctg(b/a)

тут я немного ошибся и указал ширину 290, вместо 292

ну и результат, после повторного измерения

как можно заметить на скриншоте ось "В" в верхнем левом углу в столбце ABSOLUTE изменилась с нуля, на 359,227 при этом разница по оси "Z" в ячейках #660 и #661 стала в районе 0,03

Таким же образом можно замерять не только плоскость, но и детали других форм

Например на этой нужно замерить смещение не по оси Z, как на примере ранее, а смещение по оси Х в точке 1 и точке 2, найти их разность и поделить на длинну детали по оси  Z

И в конце небольшое видео замера детали

Фух... на этот раз постарался всё описать картинками, чтобы было понятнее. Задавайте вопросы, укажите ошибки, я тоже только учусь =)

Показать полностью 8 1
88

Программирование на FANUC (Фрезеровка кругляка)

Последнее время часто сталкиваюсь с фрезерной/токарной обработкой кругляшек.

Итак, нужно фрезернуть его, на большем диаметре сделать плоскость до меньшего диаметра. Чтобы не городить лишнюю кучу пустого хождения фрезы по воздуху, будем рассчитывать координату Х для каждого прохода отдельно.

Нам пригодится немного геометрии с Пифагором. Плоскость фрезеровки выглядит примерно так:

Точка "С" у нас будет нулем по оси Z, BC - параллельна оси Z, ноль по Y где-то в середине заготовки.

Точка "В" ноль по Х, нам нужно найти длинну отрезка АВ.

По Пифагору АС^2 = АВ^2 + ВС^2. АС - радиус заготовки, ВС - наш проход по оси Z, который будет уменьшаться до нужного размера.

Берем цикл из предыдущего поста и дополняем его расчётом:


#1=150(начальная координата);
#2=110(конечная координата);
#3=3(шаг);
#4=150(радиус заготовки)
N5;
#1=#1-#3(минус шаг);
IF[#1LT#2]THEN#1=#2(если текущее значение #1 меньше конца, то мы их приравниваем);
(подход на рабочую координату);
#5=SQRT[#4*#4-#1*#1](расчет координаты Х, чем ближе к центру заготовки, тем больше будет значение Х)
G0X-[#5+20+5](подход по Х, складываем расчетный край фрезеровки+радиус фрезы+немного для безопасного подхода)
G1Z#1(подход на Z);
(контур обработки, фрезерования или точения);
G1X[#5+5];(можно использовать контур, либо подпрограмму на фрезеровку прямоугольника/круга/любой фигуры)
(отход);
G0Z[#1+#3];
IF[#1NE#2]GOTO5(если текущая координата не равна концу, то продолжаем обработку по циклу);
(если они равны то идем далше по программе);

данная программа показана как пример, ее нетрудно переделать под свои оси и условия обработки

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

IF[#1GT#4]THEN#3000=1(Z больше радиуса заготовки) /выдаст сигнал тревоги

так же можно считать радиус фрезы из офсета с помощью переменных #6=[#_OFSRG[[#_BUFD]]]

[#_BUFD] - это параметр считывания привязки через параметр D, [#_BUFH] для считывания через Н. [#_OFSRG[n]] - значение компенсации на радиус вершины инструмента из вкладки геометрия.
Либо просто воспользоваться компенсацией на радиус инструмента G41/G42

PS

до цикла while так и не добрался

Показать полностью 3
121

Программирование на FANUC

Работаю на горизонтально-фрезерных многоцелевых станках. Кам системами для написания программ не пользуюсь ввиду простоты обрабатываемых деталей. Периодически нужно выполнить одинаковые операции но с разными размерами (фрезеровка пазов, точение канавок, сверловка отверстий, нарезание резьбы резьбофрезой, геометрические расчеты).

Поэтому хочу поделиться опытом написания таких подпрограмм.

Программирование на FANUC

Начну пожалуй с описания самих станков.

Механика представляет из себя 5ти осевой станок, три из которых стандартные X-Y-Z, а остальные две - это поворотный стол на 360 градусов (ось B ) и ось план-суппорта для токарной обработки (ось - U).

Fanuc 32i model B.

G-коды используются как от фрезерных, так и от токарных станков.

В своих подрограммах использую цикл, состоящий из 2х условий:


#1=10(начальная координата);

#2=0(конечная координата);

#3=3(шаг);

N5;

#1=#1-#3(минус шаг);

IF[#1LT#2]THEN#1=#2(если текущее значение #1 меньше конца, то мы их приравниваем);

(подход на рабочую координату);

G1Z#1;

(контур обработки, фрезерования или точения);

X-10;

Y-10;

X10;

Y10;

(отход);

G0Z[#1+#3];

X20Y20;

IF[#1NE#2]GOTO5(если текущая координата не равна концу, то продолжаем обработку по циклу);

(если они равны то идем далше по программе);


тут будет проход по Z7, Z4, Z1 и при Z-2 он приравняет его к #2 и будет равен Z0.

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

Так же удобно использовать в токарке, например для проточки фланца под 8ми угольную прокладку.


В следующих постах опишу про выставление деталей на столе (по оси В) и различные применения геометрических формул при обработке деталей.

Возможно текст получался не очень читаемым, пытался собрать все мысли в кучку, дальше разберемся =)

Показать полностью 1
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества