Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос К Гуру По G-кодам (g54-g59)
Все о станках с ЧПУ > Станки с ЧПУ, Hobby CNC > Программное обеспечение
mycnc
Коды G54-G59 - Переключиться на заданную оператором систему координат.
Код задает новое смещение программных координат относительно машинных.

На мой программистский взгляд - после того, как задано новое смещение, его необходимо
применить и спозиционироваться в какие-нибудь программные координаты (но с новым смещением).
То есть, после команд G54-G59 должна следовать команда позиционирования G0.

Это подтверждается многочисленными примерами из книжек, википедии и тп. Например

G54 G0 X0 Y0 Z100


или

N90 Y1
N95 X1.5 Y1.5
N100 G80 G00 Z1
N102 G54 (Reset work coordinate system)
N105 X0 Y0


Однако, встретил пример программы, где это не так -

N1G40G49G80
(Horizontal Roughing)
N2(Tool Diameter = 4 Length = 10 )
N3G21T1M6
N4S4851M3
N5G90G0X-22.3071Y0.9085
N6G43Z17.0746H1
N7G54
N8G1
X-22.3054Y-5.489Z14.7461F1200
N9X-22.2781Y-5.6961Z14.6701


Здесь, после G54 следует линейная интерполяция и применять новое смещение придется на ней.
Мне кажется, это некорректный код, но насколько я прав?
dedo
%
O10010 (MSG,TP Name:8mm)
N1 (MSG, Date:26/1/20011)
N2 ( (PM Version:4.800 CB01100;Machine:HassVF3)
N3 G90 G40 G80 G49
N4 (Tool Type:ENDMILL)
N5 T1 M06 (Tool Dia:8,Tip:0)
N6 G00 G54
N7 G43 H1
N8 Z4. M08
N9 S2000 M03
N10 X0 Y0
N11 Z4.
N12 Y1.016
N13 Z1.
N14 G01 Z-.5 F20

Начало кода для Hass, стандартный пост.
Я не гуру в этом вопросе,
Выскажу такое соображение.
Постпроцессора сегодня пытаются писать многие, в том числе и не гуру.
Поэтому в некоторых кодах может быть все что угодно.
Может быть, Вам имеет смысл привязаться к какому нибудь стандартному посту.
Например Fanuc.
mycnc
Цитата(dedo @ 26.1.2011, 11:11) *
N6 G00 G54
N7 G43 H1
N8 Z4. M08

Начало кода для Hass, стандартный пост.


Здесь все хорошо.

Я, собственно, и добавляю коды для Fanuc / EMC / Nist
Просто для тестирования достаю g-коды из разных источников, а
при обнаружении глюков пытаюсь выяснить причины.

Спасибо за ответ и за добрые слова.
trace
Цитата(mycnc @ 26.1.2011, 9:36) *
Коды G54-G59 - Переключиться на заданную оператором систему координат.
Код задает новое смещение программных координат относительно машинных.

На мой программистский взгляд - после того, как задано новое смещение, его необходимо
применить и спозиционироваться в какие-нибудь программные координаты (но с новым смещением).
То есть, после команд G54-G59 должна следовать команда позиционирования G0.


При применении G54-G59 новое смещение уже применено и взято из таблицы смещений.
А команда G0- это быстрое позиционирование, а не обнуление. (из другой оперы)

Цитата(mycnc @ 26.1.2011, 9:36) *
N7G54
N8G1X-22.3054Y-5.489Z14.7461F1200
N9X-22.2781Y-5.6961Z14.6701

Здесь, после G54 следует линейная интерполяция и применять новое смещение придется на ней.
Мне кажется, это некорректный код, но насколько я прав?

Строка N8 и далее будет отрабатываться уже в смещенных координатах. Код корректный.
mycnc
Цитата(trace @ 26.1.2011, 23:49) *
При применении G54-G59 новое смещение уже применено и взято из таблицы смещений.
А команда G0- это быстрое позиционирование, а не обнуление. (из другой оперы)


Строка N8 и далее будет отрабатываться уже в смещенных координатах. Код корректный.


С командой G0 вопросов нет.
Вопрос в том - когда станок физически должен переместиться в новую систему координат?

То есть, например, мы стоим в точке (100,100,100) и смещение например равно 0
(машинные и программные координаты совпадают).
При команде G54 добавляется смещение из таблицы (например 200,200,50).
Программные координаты при этом не меняются, но машина должна спозиционироваться в новые
машинные координаты (вероятно (300,300,150)).
Вопрос - КОГДА???

Возможны варианты реализации -
1) Во время выполнения G54?
2) Во время выполнения следующей за G54 командой перемещения?

Судя по примерам Fanuc/Haas - они идут по варианту 2. И этот вариант более строгий с точки зрения
написания G-кодов.

Хотя, конечно, можно реализовать оба варианта.

Сейчас все понятно, спасибо за ответы.
trace
Цитата(mycnc @ 27.1.2011, 9:37) *
Вопрос в том - когда станок физически должен переместиться в новую систему координат?

Станок физически остается на месте. А координаты получают при команде G54 приращение.
И двигаться он начинает уже в новых координатах.

Цитата(mycnc @ 27.1.2011, 9:37) *
Хотя, конечно, можно реализовать оба варианта.

Оба варианта не о том, на мой взгляд.
Либо я Вас не понимаю.
retaler
После G54 может ити G0 а также и G1,
работает и в том и в другом случае.
TEREX
На sinumeric 3 после G59 задаются новые координаты

G59 X0 Z-20 (в программе) новый ноль пункт с Z-20

G0 Ускоренное перемещение м/мин

G1 Прямолинейное перемещение

На 840 стойке

TRANS X0 Z-20 (в программе) новый ноль пункт с Z-20

G54-G57 Смещение ноля, но значение смещения задаётся в параметрах инструмента, а не в программе обработки
npo100
Вопрос был задан не совсем понятно, но правильные ответы есть. Смещение нуля (плавающий ноль) это всего лишь координаты нулевой точки (детали или приспособления), которые отсчитываются от машинного нуля (ноль станка). Значения команд G54-G59 указываются в таблицах, например в Sin 840 она находится меню->параметры->СНТ (смещение нулевой точки), в Fanuc 3-х кратное нажатие клавиши offset. Особняком стоит команда G53, которая действует только в кадре, где она прописана, таким образом отсчет координат ведется относительно нуля станка. Система вычисляет новую нулевую точку сразу после считывания команд G54-G59, а как потом двигаться в нее или другие точки зависит от программиста (справедливы любые команды движения G0, G1, G2, G3).
mycnc
Цитата(npo100 @ 4.7.2011, 10:05) *
Вопрос был задан не совсем понятно, но правильные ответы есть. Система вычисляет новую нулевую точку сразу после считывания команд G54-G59, а как потом двигаться в нее или другие точки зависит от программиста (справедливы любые команды движения G0, G1, G2, G3).


Большое спасибо за ответы. Вопрос был пол-года назад и давно решен. Вероятно, надо было информировать и закрыть тему. Буду иметь в виду.

Проблема была в особенностях реализации look-ahead, но это уже программисткие штучки и мало кому интересны.
MaxiCNC
Как правильно?

Вариант 1) G0 G90 G54 X-12.686 Y6.029 S22000 M3
Вариант 2) G90 G54 G0 X-12.686 Y6.029 S22000 M3
TEREX
Цитата(MaxiCNC @ 28.12.2013, 6:39) *
Как правильно?

Вариант 1) G0 G90 G54 X-12.686 Y6.029 S22000 M3
Вариант 2) G90 G54 G0 X-12.686 Y6.029 S22000 M3

Вы хотите активировать G54 со значениями X-12.686 Y6.029?
Или X-12.686 Y6.029 начало траектории?

А порядок записи в одном кадре не важен.

Я записываю так:
выход в начальную точку:
G0 G90 G54 X-12.686 Y6.029
запуск шпинделя:
M3 S22000

Если это начало УП нужно указать инструмент.
MaxiCNC
Цитата(TEREX @ 28.12.2013, 21:16) *
Вы хотите активировать G54 со значениями X-12.686 Y6.029?
Или X-12.686 Y6.029 начало траектории?


Да вот кто бы знал что это. Если бы порядок в одном кадре был важен, то скорее всего было бы так: G90 G54 G0 X-12.686 Y6.029 S22000 M3. В этом случае все интуитивно понятно: G90 - абсолютные координаты, G54 - выбор системы координат(сами координаты хранятся уже в ЧПУ), G0 - позиционирование на холостом ходу.
TEREX
Цитата(MaxiCNC @ 30.12.2013, 4:35) *
Да вот кто бы знал что это.

Тот, кто программировал.
Если читать не размышляя о замыслых программиста, это точка с координатамии X-12.686 Y6.029, в которую инструмент приходит со скоростью запрограммированой под G0, с учетом смещения заложенном в G54 и с обсолютой величиной от ноля G90.
По вопросу, обои варианты выполнятся станком одинаково.

Как правильно?
Если бы порядок в одном кадре был важен, ...
Astro
Здравтсвуйте, форумчане!
Подскажиет, пожалуйста, как пользоваться правильно командами G54-59.
Возможно ли с их помощью делать обработку сразу нескольких клонов одной детали - допустим, мне надо сделать 4 звезды, но ж-код написан только для одной, так вот возможна ли обработка по другим нулям в атоматическом режиме? То есть как закончил с одной - переключить ноль и начать программу заново (автоматически).
Программа управления - МАСН3.
retaler
Цитата(Astro @ 27.4.2015, 18:18) *
Здравтсвуйте, форумчане!
Подскажиет, пожалуйста, как пользоваться правильно командами G54-59.
Возможно ли с их помощью делать обработку сразу нескольких клонов одной детали - допустим, мне надо сделать 4 звезды, но ж-код написан только для одной, так вот возможна ли обработка по другим нулям в атоматическом режиме? То есть как закончил с одной - переключить ноль и начать программу заново (автоматически).
Программа управления - МАСН3.

Возможно, но для этих целей лучше применить G92. Вот пример программы на 4 детали.
Astro
Цитата(retaler @ 28.4.2015, 0:39) *
Возможно, но для этих целей лучше применить G92. Вот пример программы на 4 детали.

Вот спасибо большое!!! это получается сначала подводим фрезу к нулям необходимым, записываем координаты (на бумажку), а потом дорабатываем основную программу, так?
Кстати всех с Днем Победы!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.