компенсация диаметра фрезы

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Dmaster
Мастер
Сообщения: 1272
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Dmaster »

Закину сюда. Выявил ОЧЕНЬ нужную особенность.
Как известно Linuxcnc Включает с помошью G41 указанный выше корректор.. G43T?H? и всё. Параметр D не обязателен.
"The D word is optional; if there is no D word, the radius of the tool currently in the spindle will be used."
http://www.linuxcnc.org/docs/2.4/html/g ... c:G41,-G42


НО! если у вас random-toolchange и есть включение G41 в программе больше одного раза, ТО! всё будет глчить, пока не указать D.
Причем глючить будет с ошибкой в правом углу экрана "Length of cutter compensation entry move is not greater than the tool radius." И ни фига не ссылаясь на строку.

То есть

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

G54 
g43t1h1m6
g0x0y0
g41
(код)
g40
M2
(тут будет всё впорядке)

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

G54 
g43t2h2m6
g0x0y0
g41
(код)
g40
m2 
(И тут всё выполнит.)

НО ЕСЛИ СОЕДИНИТЬ В ОДНУ ПРОГУ

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

G54 
g43t1h1m6
g0x0y0
g41
(код)
g40
G55 
g43t2h2m6
g0x0y0
g41
(код)
g40
m2 
Вывалит ошибку.
Если добавить параметр D, то всё в порядке.
" Linux CNC - наше всё"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Nick »

У меня вот такое работает:

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

F1000
G1 X30
G54 
t1m6
g43h1
g0x0y0
g41 D1
G1 Y30
g40
G55 
G1 X0
t2m6
g43h2
g41 D1
G1 Y0
g40
m2 
Такое ощущение, что это связано с перемещениями... Если поставить последнее перемещение меньше радиуса, то от последней точки мы отъедем меньше чем на радиус инструмента, соответсвено будем ближе к углу (начальной точке), чем можем (должны быть не ближе радиуса)... наверное от этого и ошибка.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

2.7.0-preЧегототам нормально отрабатывает, компенсацию правильную делает.

P.S.
Dmaster писал(а):G43T?H? и всё
У G43 нет параметра T, но у M6 есть...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

Nick писал(а):Если поставить последнее перемещение меньше радиуса, то от последней точки мы отъедем меньше чем на радиус инструмента, соответсвено будем ближе к углу (начальной точке), чем можем (должны быть не ближе радиуса)... наверное от этого и ошибка.
Ну да, оно ж английским по белому пишет, что длина подхода меньше радиуса инструмента - т.е. оно желает стартовать находясь рядом с заготовкой, а не внутри её.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

а я вообще не понимаю, КАК можно работать с компенсацией (G41, G42) НЕ указав радиус.
тоесть откуда LCNC знает какая щас стоит фреза и насколько отступать, нужно просто сразу взять за правило указывать ВСЕ параметры, вне зависимости используется он или нет, наипростейший способ чтобы это телал сам САМ.

пример после моего поста
(---------- TOOL CHANGE -----------)
(TOOL 14 - DIA 50.0 - FACE MILL - FCUTTER)
M6 T14
G0 G90 G54 J1.
G43 H14 D64 G0 X-387. Y-19.2 Z50. S700 M3
M8
M98 P3 (FM-FACEMILL)

(---------- TOOL CHANGE -----------)
(TOOL 5 - DIA 6.0 - END MILL - FREZA D6)
M6 T5
G0 G90 G54 J1.
G43 H5 D55 G0 X-332.49 Y-19.2 Z50. S6000 M3
M8
M98 P4 (P-CONTOUR)
Всё просто! если знаешь КАК!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

NightV писал(а):тоесть откуда LCNC знает какая щас стоит фреза и насколько отступать
Из таблицы инструментов.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

UAVpilot писал(а):Из таблицы инструментов.

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

G54 
g43t1h1m6
g0x0y0
g41
(код)
g40
M2
где? только длинна (h1)
должна выглядеть
g43t1h1d1m6
Последний раз редактировалось NightV 27 июн 2014, 23:46, всего редактировалось 1 раз.
Всё просто! если знаешь КАК!
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

Nick писал(а):У меня вот такое работает:
Nick писал(а):g41 D1
а вот тут есть
Всё просто! если знаешь КАК!
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

NightV писал(а):g43t1h1d1m6
а вообще и так тоже не совсем "кошерно"
нужно как я показал в примере
1) М6 Т1 - сначала сменили инструмент
2) G43 H1 D1 - потом применили параметры длинны и радиуса

а так
G43 H1 D51 G0 X-3 Y-19 Z50. S6000 M3
то вообще "на ходу" применяется
Всё просто! если знаешь КАК!
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Сергей Саныч »

Компенсация радиуса интересна, когда ручками пишешь G-код.
Иначе пусть CAM сам всё считает.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

Сергей Саныч писал(а):Компенсация радиуса интересна, когда ручками пишешь G-код
неугадал ;) компенсация интересна: когда нужно точно поймать размер детали.
я всегда когда прогоняю первую деталь, даю радиус чуть больше чем есть, делаю корректировку радиуса... прогоняю еще раз туже заготовку (только ту часть программы где работает эта фреза), и снова делаю корректировку радиуса а не переделываю программу...
тоесть путь фрезы пишем так какой должна быть деталька, а сколько отступить пусть решает станок, это одинаково относится как вручную, так и с помощью САМ
а если фреза с переточки то темболее, с 2-4 раз прогона программы, можно поймать сотку в размере детали.
тоже самое и на токарке.
слава богу детальки с такими допусками делаем редко... в основном это какие нить разработчики, медицина или оборонка :silent:
Всё просто! если знаешь КАК!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

NightV писал(а):где? только длинна (h1)
должна выглядеть
g43t1h1d1m6
h1 - это не длина, а ссылка на инструмент №1.
Длина и радиус находятся в таблице инструмента - файл tool.tbl
NightV писал(а):2) G43 H1 D1 - потом применили параметры длинны и радиуса
G43 - это коррекция длины, тут не может быть радиуса.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

я по твоему зря пыхтел, пол вечера вписывал и выресовывал это красным? :hehehe:
NightV писал(а):g43t1h1d1m6
D1 это что по твоему, и это не параметр для G43! с таки же успехом можем писать и так:
G43 H1
D51
просто даем системе знать какой Dх щас используем
а уже потом через кучу кода "вдруг" начинаем применять G41-G42... и о чудо!!! Изображение сволочь таинственным способом знает какая фреза стоит в цанге!
Всё просто! если знаешь КАК!
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

UAVpilot писал(а):G43 - это коррекция длины, тут не может быть радиуса
а то я вчера родился....
ну незнаю может в LCNC это прокатывает.... просто в пром станках эти параметры указываются отдельно... я могу указать H1 D2.. начнет работать с длинной первого инструмента а радиусом второго....
Всё просто! если знаешь КАК!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

NightV писал(а):просто даем системе знать какой Dх щас используем
А в чём вообще глубинный смысл набора t1h1d1? Это-же равносильно простому t1.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

UAVpilot писал(а):Это-же равносильно простому t1
нет, неравносильно, на всех станках что я встречал эти параметры (T1, H1, D1) независимы...
незнаю в чем смысл, но я это стал использовать... на токарке.. (я самоучка, не знаю правильно это или нет)
затачиваю сверло как фрезу, то-есть под прямым углом....
сначала сверлю (Т0101) ноль сверла в центре.
потом (отскакиваю навсякий случай) переключаюсь что Т01 теперь Т0102 (окумовсий формат) тоесть инструмент тотже но отступы берем на инструмент 2, в котором забиты отступы на другой инструмент... ну само-собой что длинна таже а вот диаметр другой, и я этим-же сверлом растачиваю и прохожу чистовой проход.
сверло повернуто одним зубом так что похоже на расточной...
работал так много по алюминию, пластикам и бронзе.... фокус ни разу не подвел :)

кстате бывает что иногда нужно быстро сделать детальку и заменить фрезу на сверло например(на фрезере).... просто отбиваю его на другую ячейку Н, отработали.. загружаю старую программу, вставляю обратно цангу с фрезой и погнали дальше...
____________________
а ну ка попробуй вписать
М6 Н1
или
G43 T1
:)
а D кроме как G41 g42 вообще больше никто не использует... ну... на моих станках :thinking:
Всё просто! если знаешь КАК!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

NightV писал(а):тоесть инструмент тотже но отступы берем на инструмент 2
я про возможность использовать компенсацию от другого инструмента, а про то, что
g43t1h1d1m6
и
g43t1m6
сделают одно и тоже.
И вообще не понимаю почему надо записывать команды в таком извращённом нелогичном виде? Почему не писать так, как рекомендовано стандартом:
m6t1
g43
строчки вроде бесплатные, можно не экономить, да и запись логически понятнее...
NightV писал(а):а ну ка попробуй вписать
зачем?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение NightV »

UAVpilot писал(а):g43t1h1d1m6
и
g43t1m6
сделают одно и тоже
Dmaster писал(а):Вывалит ошибку.
Если добавить параметр D, то всё в порядке
?
Всё просто! если знаешь КАК!
Аватара пользователя
ukr-sasha
Мастер
Сообщения: 3401
Зарегистрирован: 21 мар 2011, 07:47
Репутация: 2181
Настоящее имя: Украинец Александр Григорьевич
Откуда: Киев, Украина
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение ukr-sasha »

Поддержу NightV.
Вот фрагмент рабочей программы для Kflop со сменой инструменты и компенсацией на длину:
(для просмотра содержимого нажмите на ссылку)

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

N1 (  NC FILE : Serdtsevina matritsa 23.12.13  )
N2 (  DATE : 20 .03 .12  &  TIME - 20 :53 :20  )
N3 (  PMPost VERSION : 6.3.2579.0  )
N4 (  MACHINE TOOL : Ukr-Sasha  &  MODEL : UkrCNC  )
N5 (  CONTROLLER : Dynomotion  &  SERIES : KFlop  )
N6 (  OPTION FILE : Fanuk-KMotion-4axis  )
N7 (  OUTPUT WP : Tsentr zagotovki verh  )
N8 (  OUTPUT UNITS : MM  )
N9 G90 G21 G17 G40 G49 G80
N10 G54
N11 T1 M6
N12 G43 H1
N13 G49
N14 ( ================= )
N15 (  TOOLPATH : Viborka materiala levaya D=5  )
N16 (  STRATEGY USED : Offset_area_clear  )
N17 (  TOOLPATH WP : 1  )
N18 ( S2800  )
N19 ( ================= )
N20 (  TOOL TYPE : ENDMILL  )
N21 (  TOOL NAME : Endmill D=5  )
N22 (  TOOL DIA.: 5  &  TIP RAD.: 0  & LENGTH : 25  )
N23 T1 M6
N24 G43 H1
N25 S2800 M3
N26 G0 X-66.91761  Y2.27806    Z30.20000   A0.00000   
N27 Z5.20000   
N28 G1 X-79.93594  Y2.27199    Z2.90496    F400
N29 X-80.02017  Y2.26839    Z2.89010   
N30 X-80.10457  Y2.25759    Z2.87510   
N31 X-80.18819  Y2.23953    Z2.86001   
N32 X-80.27011  Y2.21433    Z2.84490   
Компенсацию на радиус не используем, не смогли корректно настроить постопроцессор. А сейчас без надобности. Но формат комманды аналогичный.

А вот пример кода из поставки программы Kmotion:
(для просмотра содержимого нажмите на ссылку)

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

(This demo shows the usage of:                   )
(   . fixture offsets                            )
(   . Tool Radius compensation                   )
(   . Tool Length compensation                   )
(                                                )
( A Box is drawn without and with compensations  )
( and both are repeated at two fixture offsets   )

G20 (inches mode)
F30
G0 x0y0z0 (Draw a box) 
G1 x1
y1
x0
y0
G0 x-1y0
D3G42 (Select tool - Radius Comp On - Tool is on Right of contour)
G43 H3 (Tool #3 length comp On) 
G1 x0y0 (Draw a box) 
x1
y1
x0
y0
z1.5 (Bring tool up)
G40 (radius comp off)
G49 (length comp off)
G10L2P2x-2y-2z0
G55
G0 x0y0z0 (Draw a box) 
G1 x1
y1
x0
y0
G0 x-1y0
D3G42 (Select tool - Comp On - Tool is on Right of contour)
G43 H3 (Tool #3 length comp On) 
G1 x0y0 (Draw a box) 
x1
y1
x0
y0
z1.5 (Bring tool up)
G40 (radius comp off)
G49 (length comp off)
G54 (fixture offset off)
G0x-2.5y-2.5z1.5
M2
Вот обясняет разработчик работу команд. Кстати, интерпретатор на основе ЕМС.
http://dynomotion.com/Help/KMotionCNC/KMotionCNC.htm
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: компенсация диаметра фрезы

Сообщение Serg »

NightV писал(а):?
Там-же выяснили, что это из-за положения инструмента относительно заготовки при включении компенсации... :wik:
ukr-sasha писал(а):Поддержу NightV.
В чём именно? ;)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Ответить

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