УП для токарки

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
rage
Мастер
Сообщения: 1002
Зарегистрирован: 13 окт 2014, 09:14
Репутация: 617
Настоящее имя: Константин
Откуда: Новосибирск
Контактная информация:

УП для токарки

Сообщение rage »

Думаю стандартная задача для многих. Есть сложная деталь, УП сгенерирована в КАМе.
Как эту УП "размножить" что бы можно было с одного прутка наточить скажем 5 таких деталей за раз?
Не переставляя заготовку и не переназначая 0 после каждой детали?
ex71
Мастер
Сообщения: 697
Зарегистрирован: 18 май 2019, 13:23
Репутация: 96
Настоящее имя: Андрей
Контактная информация:

Re: УП для токарки

Сообщение ex71 »

1.
В конце программы сразу после отрезки детали делать обнуление Z. Точнее можно прописать G92 Z1 для правильного торцевания. Ну или более любимый всеми G10 ..
Отъезжать в безопасную для запуска точку и завершать работу.
От суда просто жмешь "пуск" и ждешь окончания работу УП. Опять пуск и тд
После окончания прутка выполнить G92.1 для отмены G92.

2.
Можно выполнить генерацию УП через относительные координаты.
Тогда отход резца опять же делать на "стартовую" (для следующей детали) точку. Что в принципе аналогично первому варианту, но без смещения координат.

3.
написать УП в относительных координатах, и тупо скопипастить код пять раз внутри файла.

4.
УП в относительных координатах загнать в подпрограмму и выполнить ее нужное количество раз.
Или написать в реальных, но в конце делать смещение Z как в п1.

Не забудь, что вылет заготовки очень сильно влияет на биение/отжим.
Поэтому когда я точил по 1 грибку - съем был 2мм на радиус, а когда их стало 3 за раз - съем пришлось снизить до 0.75 на радиус.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: УП для токарки

Сообщение aftaev »

rage писал(а): Как эту УП "размножить" что бы можно было с одного прутка наточить скажем 5 таких деталей за раз?
Приведу кусочек раб. кода:

%
(КОЛЬЦО 15-05-2017)
G90 G18

M7
(LOOP)
/O1 repeat [5]

(------------------------------------------)
( --TORZOVKA -WNMG080408)
(------------------------------------------)
G0 Z100
(WNMG)
G43T1H1M6
S900 M3 M7
G0 X137. Z2.200

(----------------------------------)
( --- CHISTOVII NARUHI-DNMG150404)
(--------------------------------)
G0 Z100
G43T2H2M6
S1000 M3 M7
(G95 F0.05)
G95 F0.1
....


(--------------------------------)
( OTREZKA - GROOVE KORLOY 1.5MM)
(--------------------------------)
G0 Z100
G43T7H7M6
M01
M7
S1300 M3 M7
X137. Z2.000

G95 F0.015
....

G0 Z100
G43T1H1M6
(G0 Z-6.8 X132)

G10 L2 P1 Z[#5223-6.7]
(MSG, KOLZO)
/O1 endrepeat

M5 M9
G53 G0 Z0
M30
%

В строке /O1 repeat [5] 2 это кол-во деталей
G10 L2 P1 Z[#5223-6.7] -6,7 это на сколько сдвинуть ось Z для след. детали.

символ / позволяет точить или по одной детали, или сколько указано в цикле = 5.
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
xenon-alien
Почётный участник
Почётный участник
Сообщения: 4506
Зарегистрирован: 01 янв 2013, 13:13
Репутация: 920
Настоящее имя: Daniel
Откуда: Закарпатская обл. Украина
Контактная информация:

Re: УП для токарки

Сообщение xenon-alien »

rage писал(а): Как эту УП "размножить" что бы можно было с одного прутка наточить скажем 5 таких деталей за раз?

Код: Выделить всё

#<_Prutok>              = 7          (diametr prutka)
#<_L>                   = 44         (dovzhyna samoriza)
#<_Cutt_Tool>           = 1.5        (shyryna rizcja)
#<_MaxTavel>            = 110        (max peremishennja po Z - 110, 120mm - soft limit)

(formulas)
#<_pcs>      = ROUND[#<_MaxTavel> / [#<_L> + #<_Cutt_Tool>] - 0.49]       (k-sty shtuk)
#<_SafeDist> = [#<_Prutok> + 0.5]

(Pochatok cyklu)

/O100 do

t1 m6 g43 (tool 1 - cut - putok uperet v rezec)
G10 L20 P1 z[#<_Cutt_Tool>]   (zadanie tekushei pozicii znachenia 1.5  - rizec vidriznyj)

... тут код обработки...

/#<_pcs> = [#<_pcs> - 1]
/O100 while [#<_pcs> GT 0]

Если нажать на символ пропускать строку со знаком "/", то будет одна штука делаться.
Если делать все, то количество считается исходя из рабочего хода (можно по идее и с ини файла брать этот параметр) + запас + орезание и сама деталь. (-0,49, что бы всегда округляло вниз, не нашел, как по другому сделать округление в низ при любом результате.)
Если нужно конкретное число копий, то #<_pcs> = 5
Ответить

Вернуться в «LinuxCNC»