Совсем простой вопрос:
Можно ли несколько раз подряд использовать одну и ту же функцию из набора G54-G59? Например, так:
G54 X1 Y1
....
G54 X2 Y2

Сообщений в теме: 19
#1
OFFLINE
Отправлено 18 Февраль 2011 - 23:42
#2
OFFLINE
Отправлено 18 Февраль 2011 - 23:57
не совсем понятно...
зачем дважды ,если пока не отменить выбор той же например G54 выбором другой системы ,так и будет считать от неё и еще раз выбирать необязательно...или я не так понял вопрос?
зачем дважды ,если пока не отменить выбор той же например G54 выбором другой системы ,так и будет считать от неё и еще раз выбирать необязательно...или я не так понял вопрос?
Сообщение отредактировал MiG: 19 Февраль 2011 - 00:08
| cncservice |
#3
OFFLINE
Отправлено 19 Февраль 2011 - 03:03
Там фишка в том, что функция одна (G54), а параметры разные (X,Y). По сути задача состоит в том, чтобы по ходу выполнения программы переопределять ноль детали. Я хочу это использовать для того, чтобы многократно вызывать подпрограмму со смещением начальной точки исполнения.
#4
OFFLINE
Отправлено 19 Февраль 2011 - 11:14
G54 это Х1Y1...G59 это X6Y6
то-есть как вы будете задавать в одну систему координат сразу два разных значения одновременно?
G54 пишется без параметров ,туда не подставить X1Y1 или X2Y2
вам надо не одну и ту-же функцию ,а разные использовать
например
G54
G0 X10 Y15
.....
G55
G0 X10 Y15
....
то-есть как вы будете задавать в одну систему координат сразу два разных значения одновременно?
G54 пишется без параметров ,туда не подставить X1Y1 или X2Y2
вам надо не одну и ту-же функцию ,а разные использовать
например
G54
G0 X10 Y15
.....
G55
G0 X10 Y15
....
Сообщение отредактировал MiG: 19 Февраль 2011 - 13:07
| cncservice |
#5
OFFLINE
Отправлено 19 Февраль 2011 - 14:12
G54 будет висеть по всей программе пока ее не отменить.
G55 отменит G54.
Думаю так
G54
G0 X0 Y0
Уходим в подпрограмму
……..
G55
G0 X10 Y10
Уходим в подпрограмму
……..
G56
G0 X20 Y20
Уходим в подпрограмму
……..
И т.д.
G55 отменит G54.
Думаю так
G54
G0 X0 Y0
Уходим в подпрограмму
……..
G55
G0 X10 Y10
Уходим в подпрограмму
……..
G56
G0 X20 Y20
Уходим в подпрограмму
……..
И т.д.
#6
OFFLINE
Отправлено 19 Февраль 2011 - 14:20
ну я про тоже и написал вроде 
все так кроме того что G0 с разными координатами (если правильно понял вы имели ввиду смещение нулевой точки)
не прокатит ,координаты нулевых точек задаются в таблице смещения системы координат G54-G59 заранее а не в уп

все так кроме того что G0 с разными координатами (если правильно понял вы имели ввиду смещение нулевой точки)
не прокатит ,координаты нулевых точек задаются в таблице смещения системы координат G54-G59 заранее а не в уп
| cncservice |
#7
OFFLINE
Отправлено 19 Февраль 2011 - 15:00
........... G54-G59 заранее а не в уп
Верно.

Там фишка в том, что функция одна (G54), а параметры разные (X,Y). По сути задача состоит в том, чтобы по ходу выполнения программы переопределять ноль детали. Я хочу это использовать для того, чтобы многократно вызывать подпрограмму со смещением начальной точки исполнения.
Может лучше работать в G91.
G91
X0 Y0
Подпрограмма
X100Y100
Подпрограмма
X200Y200
Подпрограмма
Тока там с начальной точкой X Y нужно посчитать.
Сообщение отредактировал valery_k: 19 Февраль 2011 - 15:07
#8
OFFLINE
Отправлено 19 Февраль 2011 - 15:10
точно...так будет проще
чтоб понятнее топикстартеру было - пояснение
а если одна заготовка и в ней несколько одинаковых деталей делать ,с известными
расстояниями между деталями -то в приращениях самое то
чтоб понятнее топикстартеру было - пояснение
если заготовок на станке несколько -лучше с G54-G59 делать(то-есть с разными ,заранее выставленными по заготовкам нулями) ,G90 - абсолютный размер.
Отсчет перемещения производится относительно выбранной нулевой точки.
G91 - размер в приращениях
Отсчет перемещения производится относительно предыдущей запрограммированной точки.
Отсчет и индикация координат может выполняться в абсолютной (G90) или относительной (G91) cистеме. При включении ЧПУ активна функция G90 абсолютного отсчета. В режиме с G90 все перемещения осей отсчитываются от нуля программы. Знаки + и - абсолютных координат указывают положение осей относительно нуля программы.
В относительном режиме - G91 все перемещения отсчитываются от текущего положения осей. Заданные в кадре перемещения - это расстояния, которые надо пройти. Знаки + и - указывают направление движения.
Синтаксис
G90
G91
а если одна заготовка и в ней несколько одинаковых деталей делать ,с известными
расстояниями между деталями -то в приращениях самое то
Сообщение отредактировал MiG: 19 Февраль 2011 - 16:19
| cncservice |
#9
OFFLINE
Отправлено 19 Февраль 2011 - 17:06
Спасибо за разъяснения! Я никак не мог смириться с тем, что смещение нуля программируется только оператором.
Программировать в приращениях в моем случае не получается (я пишу не уп, а генератор уп. В силу особенностей входной информации, не все что можно написать "ручками" удается сгенерировать), видимо, придется работать с нулем станка (G92).

#10
OFFLINE
Отправлено 19 Февраль 2011 - 23:02
%
O00001
G90
G49
M3 S2000
G54
G0 Z5.000
G0 X0.00 Y0.00
M98 P00002
G90
G0 Z5.000
G0 X0.00 Y100.00
M98 P00002
G90
G0 Z5.000
G0 X100.00 Y0.00
M98 P00002
G90
G0 Z5.000
G0 X100.00 Y100.00
M98 P00002
G90
G0 Z5.000
G0 X0.00 Y0.00
M05
M30
O00002
G1 Z-3.600 F40
G91
G1 X10.00 F500
Y10.00
X-10.00
Y-10.00
M99
%
Чета с G92 у меня не получается.?
O00001
G90
G49
M3 S2000
G54
G0 Z5.000
G0 X0.00 Y0.00
M98 P00002
G90
G0 Z5.000
G0 X0.00 Y100.00
M98 P00002
G90
G0 Z5.000
G0 X100.00 Y0.00
M98 P00002
G90
G0 Z5.000
G0 X100.00 Y100.00
M98 P00002
G90
G0 Z5.000
G0 X0.00 Y0.00
M05
M30
O00002
G1 Z-3.600 F40
G91
G1 X10.00 F500
Y10.00
X-10.00
Y-10.00
M99
%
Чета с G92 у меня не получается.?

Сообщение отредактировал valery_k: 20 Февраль 2011 - 03:01
#11
OFFLINE
Отправлено 20 Февраль 2011 - 05:08
у меня тоже не вышло...ни разу не было нужды в этой функции и если и знал про неё что-то ,то уже забылvalery_k
Чета с G92 у меня не получается.?

| cncservice |
#12
OFFLINE
Отправлено 20 Февраль 2011 - 16:11
Хотелось бы все-таки разобраться в этом вопросе.
Если будет ясность, дайте знать пожалуйста.
Если будет ясность, дайте знать пожалуйста.
#13
OFFLINE
#14
OFFLINE
Отправлено 20 Февраль 2011 - 18:10
Вот фрагмент кода, который генерирует моя прога для вырубного станка. Станок старый, поэтому система программирования на нем несколько отличается от стандартной. Чтобы было понятнее оставил комментарии. Обращаю внимание, что слово L указывает кол-во повторений подпрограммы, номер которой указывает слово Q.
% O000001 T1 M80 (Набрать инструмент. Толщина листа 2) F20 M06 (Вставить инструмент.) G92 X150 Y0 (Установка нуля к положению штифта.) M00 (Установить лист.) G54 (Cмещение нуля детали.) L2 Q1 (Вызов подпрограммы.) G92 X120 Y75 (Установка нуля.) L1 Q2 (Вызов подпрограммы.) G92 X127.84 Y131.09 (Установка нуля.) G92 (Точка нуля ==> в исходное состояние) M20 (Отмена всех функций вырубки и высечки.) M02 (Конец программы.) P1 % X40 Y20 M25 (Вырубка.) X60 Y40 M25 (Вырубка.) X50 Y55 M25 (Вырубка.) G92 X15 Y45 (Установка нуля.) M02 (Конец программы.) P2 % X172.5 Y110 M25 (Вырубка начального отверстия.) G03 X127.84 Y106.09 I-22.5 J0 E14.92 (Вырубка ряда отверстий по окружности.) G01 (Возвращение к линейной интерполяции.) G92 X127.84 Y81.09 (Установка нуля.) M02 (Конец программы.)
#15
OFFLINE
Отправлено 20 Февраль 2011 - 18:40
то - есть G92 X100 Y 100 - установит ноль (подпрограммы) по этим координатам относительно нуля станка или G54? или сместит ноль станка с соответствующим смещением и в таблице смещений G54-G59?
а G92 - (Точка нуля ==> в исходное состояние) это так и понять"исходное состояние)" то-есть отмена предъидущей установки нуля G92 X...Y... и вернет все как было?
а G92 - (Точка нуля ==> в исходное состояние) это так и понять"исходное состояние)" то-есть отмена предъидущей установки нуля G92 X...Y... и вернет все как было?
Сообщение отредактировал MiG: 20 Февраль 2011 - 19:24
| cncservice |
#16
OFFLINE
Отправлено 20 Февраль 2011 - 20:14
Ситуация такая,
G92 смешение нуля, значение указывается в одной строчке
G92 X10
G92 X30Y10
G92 без параметра, читается как ошибка.
G92 не связанно с G54.
У меня в Mach происходит следующее,
По G92 смешение происходит, но ноль в этой точке не устанавливается..?
Возможно, зависит от стойки.
На неделе, если доеду, попробую на Fanuc и NC201.
G92 смешение нуля, значение указывается в одной строчке
G92 X10
G92 X30Y10
G92 без параметра, читается как ошибка.
G92 не связанно с G54.
У меня в Mach происходит следующее,
По G92 смешение происходит, но ноль в этой точке не устанавливается..?
Возможно, зависит от стойки.
На неделе, если доеду, попробую на Fanuc и NC201.
#17
OFFLINE
Отправлено 20 Февраль 2011 - 23:15
Вообще-то, G92 без параметров это возвращение к физической нулевой точке станка, т.е. к той точке, которая задается датчиками (например, микровыключателями). При этом снимаются все коррекции и смещения нуля.G92 без параметра, читается как ошибка.
G92 с параметрами интерпретируется следующим образом: указанные в качестве параметров значения координат становятся текущими.
#18
OFFLINE
Отправлено 20 Февраль 2011 - 23:44
Разобрался с G92
%
O00001
G90G49G40G80
G54
M6 T1
G43 H1
M03 S15000
G0 Z5.000
G0 X0.00 Y0.00
M98 P00002 (Уходим в подпрограмму)
G0 Z5.000 (Вернулись и переместились по Y100)
Y100
G92Y0 (Установили нулевую точку в Y100)
M98 P00002 (Уходим в подпрограмму)
G0 Z5.000
X100.00
G92 X0
M98 P00002
G0 Z5.000
X100.00 Y100.00
G92X0 Y0
M98 P00002
G92.1 (отменяемG92)
G0 Z5.000
G0 X0.00 Y0.00
M05
M30
O00002 (подпрограмма)
G0 Z0.1
G1 Z-1.00 F40
G1 X10.00 F2500
y10.00
X0.00
Y0.00
M99
%
7.7 Отступы G52 & G92
Есть два дальнейших варианта задания отступа Управляемой Точки используя G-коды G52 и G92.
Когда вы используете G52 вы говорите Mach3 что для любого значения Управляемой Точки (например X=0 Y=0) вы хотите отступить реальную позицию станка добавляя данные значения X, Y и/или Z.
Когда вы используете G92, вы говорите Mach3 что вы хотите чтобы текущие координаты Управляемой Точки приняли значение X, Y и/или Z.
Ни G52 ни G92 не двигают инструмент, они просто добавляют другой набор отступов к началу координат Текущей Координатной Системы.
Зависит от стойки.

%
O00001
G90G49G40G80
G54
M6 T1
G43 H1
M03 S15000
G0 Z5.000
G0 X0.00 Y0.00
M98 P00002 (Уходим в подпрограмму)
G0 Z5.000 (Вернулись и переместились по Y100)
Y100
G92Y0 (Установили нулевую точку в Y100)
M98 P00002 (Уходим в подпрограмму)
G0 Z5.000
X100.00
G92 X0
M98 P00002
G0 Z5.000
X100.00 Y100.00
G92X0 Y0
M98 P00002
G92.1 (отменяемG92)
G0 Z5.000
G0 X0.00 Y0.00
M05
M30
O00002 (подпрограмма)
G0 Z0.1
G1 Z-1.00 F40
G1 X10.00 F2500
y10.00
X0.00
Y0.00
M99
%
7.7 Отступы G52 & G92
Есть два дальнейших варианта задания отступа Управляемой Точки используя G-коды G52 и G92.
Когда вы используете G52 вы говорите Mach3 что для любого значения Управляемой Точки (например X=0 Y=0) вы хотите отступить реальную позицию станка добавляя данные значения X, Y и/или Z.
Когда вы используете G92, вы говорите Mach3 что вы хотите чтобы текущие координаты Управляемой Точки приняли значение X, Y и/или Z.
Ни G52 ни G92 не двигают инструмент, они просто добавляют другой набор отступов к началу координат Текущей Координатной Системы.
Вообще-то, G92 без параметров это возвращение к физической нулевой точке станка, ........
Зависит от стойки.
Сообщение отредактировал valery_k: 21 Февраль 2011 - 02:28
#19
OFFLINE
Отправлено 20 Февраль 2011 - 23:55
Вполне возможно, просто других интерпретаций в литературе и в интернете я лично не встречал.Зависит от стойки.
#20
OFFLINE
Отправлено 21 Февраль 2011 - 00:01
valery_k ,leonid
спасибо за разъяснение
не получалось из-за
"G92 с параметрами интерпретируется следующим образом: указанные в качестве параметров значения координат становятся текущими." , неправильно думал что указанные значения становяться нулем
спасибо за разъяснение

не получалось из-за
"G92 с параметрами интерпретируется следующим образом: указанные в качестве параметров значения координат становятся текущими." , неправильно думал что указанные значения становяться нулем
Сообщение отредактировал MiG: 21 Февраль 2011 - 00:09
| cncservice |
Темы с аналогичным тегами G59, G54
Фрезерно-гравировальное оборудование →
Программные вопросы →
Вопросы по стойке SYNTEC →
Геометрия в G55 по X больше чем в G54 на 1-2ммАвтор karambas , 12 Фев 2025 ![]() |
|
![]()
|
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных