Страница 1 из 1

Линейный магазин

Добавлено: 05 июн 2023, 12:56
ex71
У меня револьверка, но тут есть нужда делать небольшие отверстия в деталях. И я хочу вместо одного резца использовать линейный магазин.

Имею в виду когда несколько инструментов закреплено на одной высоте в линию. Пример на фото во вложении.
Как реализовать правильно код обработки? ну собственно волнуют корректоры инструмента.
вчера пробовал корректоры по g43.2 прописывать, но столкнулся со сложностью: они суммируются с тем что уже сейчас активно.
То есть каждый раз надо выполнять g49 g43.2 H100

Может я не так делаю?

Re: Линейный магазин

Добавлено: 05 июн 2023, 14:34
alex_sar
а чем обычный G43 не устраивает? там же можно по всем осям задавать смещения.

Re: Линейный магазин

Добавлено: 05 июн 2023, 15:26
ex71
alex_sar писал(а): 05 июн 2023, 14:34 а чем обычный G43 не устраивает? там же можно по всем осям задавать смещения.
пример кода в студию.
Как-бы обычный G43 я использую с обычным M6, но это вращение револьверки. А у меня в одном из инструментов револьверки будет стоять линейный магазин. да забыл про это упомянуть.

Re: Линейный магазин

Добавлено: 05 июн 2023, 18:34
hmnijp
ex71 писал(а): пример кода в студию.
Как-бы обычный G43 я использую с обычным M6, но это вращение револьверки. А у меня в одном из инструментов револьверки будет стоять линейный магазин. да забыл про это упомянуть.
А какой пример нужен то? обычный g43.
если конкретно - есть два варианта использования:

1. например для трех сверл номер инструмента будет один - T4M6, но офсеты разные - G43H4 G43H41 G43H42 - в CAM'e обычно можно так настроить в таблице инструмента - повесить на несколько инструментов один номер но разные офсеты:
2023-06-05 19-21-01.jpg
2023-06-05 19-21-01.jpg (7.27 КБ) 3224 просмотра

2. В линуксе в скрипте М6 спользовать для переключения револьверки вместо номера инструмента номер кармана(pocket).
Тогда разным номерам-инструментам можно в табличке повесить одинаковую ячейку-pocket, револьверка ориентируясь на неё будет вставать в одну позицию, но у всех будут свои разные номера офсетов.
2023-06-05 19-26-17.jpg (3224 просмотра) <a class='original' href='./download/file.php?id=208015&sid=44cce7a10b47352205adca24bc2fc2f5&mode=view' target=_blank>Загрузить оригинал (22.05 КБ)</a>

Re: Линейный магазин

Добавлено: 07 июн 2023, 20:46
ex71
№2 так не работает. tool и poc могут быть разными, но они уникальны для одной таблицы. То есть смысл мне там заносить как в примере, если я не могу использовать T2 с покет 1,2,3 или 571?
это не канает:
tool=1, poc=1 X=-5;
tool=1, poc=2, x=-35

Зато можно сделать t=2, p=1; t=1,p=2. А смысл?
То есть у меня револьверка в любом случае скажет "вращайте барабан", и максимум что я могу сделать - это добавить в таблицу tool=100, poc=100 X=-5; tool=101, poc=101, x=-35. Но это будут фиктивные инструменты, для заполнения таблицы нужными смещениями. В итоге в коде я пишу: m6 t2 g43 h100. Для установки инструмента №2, в который врезана центровка. А для ухода на сверло я буду писать тупо g43 h101.
И смысла в этих покетах я вообще не понимаю.

Потому и интересуюсь: кто как это реализует?
как в каме - мне все равно, у меня детали легкие, кам не требуется.

Re: Линейный магазин

Добавлено: 07 июн 2023, 21:01
xenon-alien
Лично я уже давно думал о комбинации револьверки и линейного инструмента отдельно, но как это решается - пока не понятно.
Можно попытаться создать новый алгоритм работы револьверки. С инструмента 1-6(8) барабан вращается, а если № инструмента выше, то пины револьверки не активны (или автоматически выдают подтверждения смены инструмента) и просто перемещаются нужные координаты по таблице инструментов.
Но если линейный магазин в револьверке, то неверное нужно ещё что-то дописать. Или в ручную прописывать вращение барабана на нужную позицию, а дальше уже нужный номер в линии.

Re: Линейный магазин

Добавлено: 08 июн 2023, 08:56
ex71
xenon-alien писал(а): Но если линейный магазин в револьверке, то неверное нужно ещё что-то дописать. Или в ручную прописывать вращение барабана на нужную позицию, а дальше уже нужный номер в линии.
да я уже думал как-нибудь сделать в скрипте смены деление на 8, чтобы из запрошенного номера получить реальный номер в револьверке. Но тогда может возникнуть проблема, что я не смогу поставить инструменты которые были привязаны в одну позицию.
Ну то есть идея была писать на блоках номер из таблицы, чтобы не париться с поиском "какой это был номер в таблице", потом назначать ему реально установленный номер и еще менять в коде.

Вероятно надо использовать отдельное поле, например смещение для какой-то оси.

Re: Линейный магазин

Добавлено: 08 июн 2023, 11:08
SV76
Допустим что револьверке 6 интрументов, в таблице инструментов создаем еще 3 .Линйный магазин в 1 позиции, выполняем
T1m6
Затем
T7g43h7 привязываем 1 свело
T8.....
T9....
В программе делам вызов интрумента без м6

Re: Линейный магазин

Добавлено: 08 июн 2023, 16:06
hmnijp
ex71 писал(а): №2 так не работает. tool и poc могут быть разными, но они уникальны для одной таблицы.
всё прекрасно работает, я проверял.(но проверял только в 2.9, в 2.8.4 вроде тоже должно работать. В 2.7 не уверен, там это меняли. а у вас какая? Покажите как у вас ремап/hal тулченжера выглядит, какой компонент этим управляет, может в нём дело...)
Вот прогнал тестовый г-код который переключает все инструменты по очереди и выводит дебаг, покеты могут повторяться сколько угодно раз в таблице
(для просмотра содержимого нажмите на ссылку)

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

g91

g54g0x10
T1
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T2
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T3
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T4
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T5
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T6
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T7
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T8
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


g54g0x10
T9
(debug, Tcur=%d#<_current_tool> Pcur=%d#<_current_pocket> || Tsel=%d#<_selected_tool> Psel=%d#<_selected_pocket>)
M6
G43H1
g4p1


G49
g90
g54g0x0y0z0
m2

2023-06-08 18-25-15.jpg (3035 просмотров) <a class='original' href='./download/file.php?id=208046&sid=44cce7a10b47352205adca24bc2fc2f5&mode=view' target=_blank>Загрузить оригинал (89.8 КБ)</a>

ex71 писал(а): это не канает:
tool=1, poc=1 X=-5;
tool=1, poc=2, x=-35
то есть наоборот, покеты могут повторяться, а номера нет, они должны быть уникальны, иначе будет ошибка
tool=1, poc=1 X=-5;
tool=2, poc=1, x=-35
итд

Позицию для поворотки, в ремапе, естественно надо будет брать не из iocontrol.0.tool-prep-number, а из пина iocontrol.0.tool-prep-pocket
SV76 писал(а): T7g43h7 привязываем 1 свело
T8.....
T9....
В программе делам вызов интрумента без м6
Зачем? офсет G43H1 > G43H2 >G43H3 переключается без смены инструмента, и без подготовки к следующему

Re: Линейный магазин

Добавлено: 08 июн 2023, 18:59
ex71
hmnijp писал(а): всё прекрасно работает, я проверял
2.9.2 не берет. Как и 2.7.14 не брала - если номера в tool или pocket повторяются, при внесении данных в таблицу в статусной строке таблицы появляется красная надпись, а при попытке сохранения выдает сообщение типа "номер не уникален для tool" и аналогичное для pocket.
в ремапе у меня G код только. Никакой связи с другим компонентами нет.

Re: Линейный магазин

Добавлено: 08 июн 2023, 19:55
hmnijp
ex71 писал(а): 2.9.2 не берет
Наверное 2.8.2..

Глянул исходники - скрипт bin/tooledit.tcl https://github.com/LinuxCNC/linuxcnc/bl ... t.tcl#L884
в версии 2.9 запрещает присвоение нескольких номеров инструментов одному покету, только если включен random_toolchander. в других случаях проверки нет - то есть в новых версиях 2.9-2.10 вполне можно использовать такой способ)
В версии 2.8 и ранее проверка всегда есть, то есть в ней действительно нельзя повторять покеты) ругается только тулэдитор, остальному в общем пофиг на это) (если кому-то очень нужно, могут поправить этот скрипт в старых версиях)
2023-06-08 20-55-04.jpg (3017 просмотров) <a class='original' href='./download/file.php?id=208047&sid=44cce7a10b47352205adca24bc2fc2f5&mode=view' target=_blank>Загрузить оригинал (196.35 КБ)</a>

Re: Линейный магазин

Добавлено: 12 июн 2023, 10:23
Rionet
А можете пояснить на последней картинке FRONT и BACK что означают как обрабатываются?
я тут недавно мучался с задним инструментом когда ось Z надо разворачивать.. может оно уже есть из коробки?

Re: Линейный магазин

Добавлено: 12 июн 2023, 14:22
ex71
Rionet писал(а): 12 июн 2023, 10:23 А можете пояснить на последней картинке FRONT и BACK что означают как обрабатываются?
я тут недавно мучался с задним инструментом когда ось Z надо разворачивать.. может оно уже есть из коробки?
это угол для отображения иконки в окне просмотра. По заданным радиус и двум углам будет отображена режущая пластина. Ну актуально для токарника.
ориентация - одна из 9 точек привязки режущей кромки к отображаемой иконке.