Страница 5 из 6
Re: G-коды
Добавлено: 12 дек 2021, 19:07
steals_y2k
при подобном написании уп гораздо проще описать перемещение - радиус текущего инструмента(или переменную, если он не задан в таблице)
Re: G-коды
Добавлено: 17 дек 2021, 18:43
zahar
подскажите, линукс CNC на токарке, пневмо патрон, нужно повторять программу после подачи заготовки, как реализвать? ( кроме накопировать 100 рас прогу) может код есть или еще что-то?
Re: G-коды
Добавлено: 17 дек 2021, 19:32
xenon-alien
zahar писал(а): ↑
подскажите, линукс CNC на токарке, пневмо патрон, нужно повторять программу после подачи заготовки, как реализвать? ( кроме накопировать 100 рас прогу) может код есть или еще что-то?
Пишете параметрическую УП.
Задаете нужное количество повторений.
Мы так титановые винтики точим.
И так тестирую станки.
Самый элементарный код для выравнивания поверхности (не идеал, мне пойдёт).
Код: Выделить всё
G21 (metric - mm)
G17 (ZX - plane)
G64 P0.1
#<_Size_X> = 120 (Rozmir zahotovky po X)
#<_Size_Y> = 60 (Rozmir zahotovky po Y)
#<_Tool_Diameter> = 6 (Diameter Instrumenta)
#<_Step> = [#<_Tool_Diameter>/2] (Shag zmishennia)
#<_Spindle_Speed> = 15000 (Oberty Shpindelia)
#<_F> = 300 (Robocha Podacha)
m3 s[#<_Spindle_Speed>]
g1 y[#<_Size_Y>] f[#<_F>]
(Pochatok cyklu)
O100 do
g1 y[#<_Size_Y>]
g1 x[#<_Size_X> + #<_Step>]
g1 y[#<_Size_Y> - #<_Step>]
g1 x0
#<_Size_Y> = [#<_Size_Y> - #<_Tool_Diameter>]
O100 while [#<_Size_Y> GT 0]
g1 y0
g1 x[#<_Size_X> + #<_Step>]
g0 z0
g0 x0 y0
m5
m30
В документации для ЛЦНЦ можно многое найти.

Ну и второй код для использования всего хода по Z (знак / в начале строки дает возможность пропустить эти строки, если нужен единичный экземпляр, для этого есть копка в интерфейсе.)
Код: Выделить всё
(Titanovyj samorez)
G21 (metric - mm)
G7 (diameter mode)
G18 (ZX - plane)
G95 (F - mm/rev)
/G53 G0 Z-5.5 (otezzhaem ot HOME "0" na -5.5mm)
G54 (coordinate system - P1)
(pereminni znachennja)
#<_Prutok> = 3 (diametr prutka)
#<_L> = 9 (dovzhyna samoriza)
#<_L_TipZ> = 3.5 (konus kinchyka po Z)
#<_L_TipX> = 2 (konus kinchyka po X)
#<_L_Tip_Z> = 5 (zariz kinchyka po Z)
#<_L_Tip_X> = 5 (zariz kinchyka po X)
#<_L_Head> = 1.5 (dovzhyna holovky)
#<_ThreadPitch1> = 0.75 (shag rezby)
#<_ThreadDepth1> = 1.4 (glybyna rezby v diametri)
#<_ThreadHight1> = 1.95 (zovnishnij diametr rezby)
#<_Thread2Pitch_P> = 1.21 (shag rezby)
#<_Thread2Depth_K> = 2 (glybyna rezby )
#<_Thread2Path_J> = 0.5 (hlybyna pershoho prochodu)
#<_Thread2BL_I> = -0.1 (vidstup vid bazovoi linii)
#<_Thread2_L> = 2 (faska na pochatku - L1, abo kinci - L2, abo nide - L0, abo oba - L3)
#<_Thread2_E> = #<_L_Head> (vidstan vid bazovoi linii dlja zadanja konusa)
#<_Cutt_Tool> = 1.5 (shyryna rizcja)
#<_Thread_Tool_Comp> = 1.7 (vidstup do vershyny rizbovoho rizcja = 3.4/2)
#<_ThreadToolComp> = 3 (kompensacia nulja instrumentu do vershyny rezbofrezy)
#<_SpinSpeed> = 1500 (skorost spindelja konusa)
#<_SpinSpeedThread1> = 500 (skorost spindelja rezboferezovanie)
#<_SpinSpeedThread2> = 300 (skorost spindelja rezba 2 zachoda)
#<_SpinSpeedCut> = 1000 (skorost spindelja otrezanie)
#<_DwellSpin> = 3 (sekund na ochikuvannja povorotu shpindelja povorotu)
#<_CutDepth> = 2.4 (hlybyna vrizannja skruhlennja)
#<_RoughCut> = 0.06 (chornovyj prochid)
#<_FinishCut> = 0.02 (chystovyj prochid)
#<_MaxTavel> = 110 (max peremishennja po Z - 112, 120mm - soft limit)
(formulas)
#<_pcs> = ROUND[#<_MaxTavel> / [#<_L> + #<_Cutt_Tool>] - 0.49] (k-sty shtuk)
#<_begin> = [#<_pcs> * [#<_L> + #<_Cutt_Tool>] - [#<_L> + #<_Cutt_Tool>]] (dovzhyna zahalnoi obrobky vsix za cykl minus 1 shtuka)
#<_L_Thread> = [#<_L>-#<_L_Head>]
#<_SafeDist> = [#<_Prutok> + 0.5]
#<_2ndThreadDist> = [#<_ThreadPitch1> / 2] (zmishennja rizby druhogo zachoda osnona rizba /2 )
(Pochatok cyklu)
/O100 do
t1 m6 g43 (tool 1 - cut )
G10 L20 P1 z[#<_Cutt_Tool>] (zadanie tekushei pozicii znachenia 1.5 - rizec)
m3 s[#<_SpinSpeed>]
m5
/#<_pcs> = [#<_pcs> - 1]
/O100 while [#<_pcs> GT 0]
;t4 m6 g43 (tool 4 - thread , polozhytelnyj X)
;G49 (otmena kompensacii instumenta)
m0 (Pause)
;g0 z[#<_begin> + #<_Cutt_Tool>]
G53 G0 Z-5.5 (otezzhaem v nachalo machinnix koordinat na -5.5mm)
m30
Re: G-коды
Добавлено: 18 дек 2021, 18:07
steals_y2k
zahar писал(а): ↑
нужно повторять программу после подачи заготовки,
есть два варианта-
1. о1234 repeat[число повторов]
o<мойфайл> call
o1234 endrepeat
2.
#x=1
o2345 while [x le число повторов]
o<мойфайл> call
x=x+1
o2345 endwhile
ну, это чтобы не вставлять в цикл то, что надо выполнить.
ничего нового, было ранее всё вроде

Re: G-коды
Добавлено: 14 янв 2022, 12:22
zahar
steals_y2k писал(а): ↑18 дек 2021, 18:07
zahar писал(а): ↑
нужно повторять программу после подачи заготовки,
есть два варианта-
1. о1234 repeat[число повторов]
o<мойфайл> call
o1234 endrepeat
2.
#x=1
o2345 while [x le число повторов]
o<мойфайл> call
x=x+1
o2345 endwhile
ну, это чтобы не вставлять в цикл то, что надо выполнить.
ничего нового, было ранее всё вроде

[/quote
прошу простить балбеса)) но не пойму куда вставлять саму программу движений станка . объясните пожалуйта
Re: G-коды
Добавлено: 06 мар 2022, 18:42
steals_y2k
в мойфайл.ngc
Re: G-коды
Добавлено: 09 фев 2023, 05:52
Андрей Силантьев
Здравствуйте уважаемые форумчане!
Несколько месяцев назад всё работало прекрасно. Вчера написал УП в Арткаме 2018 как всегда. Но при загрузке в nc studio в поле УП (поле справой стороны) вместо привычного кода я увидел каракули. Версия windows 98. Подскажите с чем это связано? Может вирус забрался типо червя?
Re: G-коды
Добавлено: 09 фев 2023, 09:54
steals_y2k
скорее всего, кодировка, русские буквы..
Re: G-коды
Добавлено: 03 апр 2023, 09:31
sidor094
Есть ли команда для синхронизации со шпинделем 2 осей при этом главной должна быть не ось Z а ,например ось А и плюс X?Это нужно для нарезания червячной фрезой. Сейчас пока для себя модифицировал G33 .То есть та координата которая указывается первой будет главной.
Например g33 c200 x100 k2 будет синхронизировать ось С cо шпинделем с шагом 2 а координата X будет крутиться в 2 раза медленнее координаты C.Может кто-то может подсказать правильную команду плдобных действий для совместимости с широкораспространенными системами чпу
Re: G-коды
Добавлено: 15 дек 2023, 17:23
OK0
Казалось бы элементарная вещь... G02,G03. Не могу найти объяснение некоторого противоречия. Устанавливаем начальную и конечную точку и центр окружности. Но мы не можем произвольно задать координаты центра. Эта точка должна быть равноудалена от начальной и конечной (это же дуга). Значит одна из координат должна рассчитываться (какая?) и проверяться (кем? с какой погрешностью?). Ни в ГОСТе, ни в статьях не нашел никаких пояснений. Правильно ли я понимаю, что фраза "центр окружности может быть в любом месте" - это вредная глупость?
Re: G-коды
Добавлено: 15 дек 2023, 17:50
kfmut
OK0 писал(а): ↑
Казалось бы элементарная вещь...
Способов задания дуг достаточно много, открываете документацию по программированию вашего контроллера и смотрите какие поддерживаются. Правильное положение точек проверяется контроллером, погрешность задаётся в настройках контроллера, если больше, то вываливается в ошибку. Начальная точка дуги определяется предыдущей командой движения, конечная и центры - вы задаёте сами, в параметрах команды, что здесь не так?

Re: G-коды
Добавлено: 15 дек 2023, 18:02
OK0
ОК, спасибо. Я в своем сообщении задал вопрос. Если я вас правильно понял, - ваш ответ положительный...
Re: G-коды
Добавлено: 15 дек 2023, 18:29
Mamont
В некоторых чпу системах центр окружности может быть не равноудален.
Мач3 к примеру будет рисовать спираль Архимеда. Ругнется если радуис окажется равным нулю
Re: G-коды
Добавлено: 15 дек 2023, 18:53
OK0
Mamont писал(а): ↑15 дек 2023, 18:29
центр окружности может быть не равноудален.
Интересный факт. Полезный. Хотя звучит как "число Пи в военное время может достигать..."

Значит и в ГОСТе и, тем более, в учебных статьях необходимо именно к этому способу задания дуги ставить жирное примечание "относительные координаты центра должны удовлетворять следующему условию..." ОК.
Редактирование готового G кода
Добавлено: 18 мар 2024, 09:31
Ivanmig
Всем добрый день! только осваиваю ЧПУ, работаю во Fusion 360. Cam модуль мне очень нравится, мне всё понятно. Но есть ограничение в скорости холостых перемещений\быстрых перемещений (Не знаю как правильно называется) Короче, хобийная версия программы накладывает ограничения и не генерирует всё что связано с G0 командами.По этой причине скорость холостого хода у меня всегда равна скорости фрезерования... Очень сильно раздражает на Сложных УП c кучей перемещений. Есть ли возможность отредактировать готовый G-код в стороннем редакторе и добавить в автоматическом\полуавтоматическом режиме скорость этих перемещений.
Re: G-коды
Добавлено: 18 мар 2024, 10:23
vtgmfg
вместо г0 выдает г1?
теоретически можно отловить все перемещения к/на высоте безопасности
Re: G-коды
Добавлено: 18 мар 2024, 14:02
xvovanx
vtgmfg писал(а): ↑18 мар 2024, 10:23
вместо г0 выдает г1?
теоретически можно отловить все перемещения к/на высоте безопасности
В процессе работы g0 перемещения уже будут ниже высоты безопасности...
Re: G-коды
Добавлено: 18 мар 2024, 14:21
vtgmfg
ну это спуск и подъем. если не заставлять КАМ перемещаться ниже.
Re: G-коды
Добавлено: 18 мар 2024, 19:20
xvovanx
vtgmfg писал(а): ↑
ну это спуск и подъем. если не заставлять КАМ перемещаться ниже.
Я про ситуацию, скажем, фрезеровки кармана в кармане, либо углублений в кармане. Там горизонтальный G0 и спуск/подъем будет в глубине первого кармана не поднимаясь на высоту безопасности
Re: G-коды
Добавлено: 18 мар 2024, 19:37
vtgmfg
наверное все таки от КАМ зависит. в солидкаме есть опции обычно, когда понимаешь что делаешь делать переходы не на высоте безопасности, а на безопасном отступе или чето типа. в принципе да - если КАМ уверен в своей оценке ситуации - он может эту опцию и не предлагать.