- Абсолютные и относительные координаты
- Программирование в абсолютной и относительной системах отсчета.
- В чем заключается программирование в абсолютных координатах
- Gcode G91 и Gcode G90: Абсолютное и инкрементное программирование ЧПУ
- В чем разница между Абсолютной и Инкрементной системами координат?
- Переключение между Относительными (gcode G91) и Абсолютными координатами (gcode G90)
- Пример абсолютного программирования G90 GCode
- Пример относительного программирования G91 GCode
- Как Вы Тестируете Свой G-Код, Прежде Чем Поместить Его На Машину?
- Какой режим Мой контроллер использует по умолчанию?
- Использование слов UVW для инкрементных координат
- Зачем Мне Использовать Инкрементные и Абсолютные Ходы?
- Консервированные циклы и Автоматический gcode G91
- Используйте редактор G-Wizard для преобразования между абсолютными и относительными координатами
- Рекомендации
- Упражнения
Абсолютные и относительные координаты
При абсолютном способе программирования (команда G90) координаты точек отсчитываются от постоянного начала координат.
При относительном (инкрементальном) способе программирования (команда G91) за нулевое положение каждый раз принимается положение исполнительного органа, которое он занимал перед началом перемещения к следующей опорной точке рис 5. Для этого рассмотрим следующий пример:
Абсолютные координаты | Относительные координаты | |||
Точка | По оси Х | По оси Y | По оси Х | По оси Y |
-5 |
Рис. 4. Абсолютное программирование
Отсчет координат точек для обработки паза идет от одного программного нуля.
Рис. 5. Относительное программирование
Координаты точки Т2 отсчитываются относительно Т1, Т3 относительно Т2, Т4 относительно Т3.
Абсолютное программирование | Относительное программирование |
% О0001 (PAZ ABS) N10 G21 G54; N20 G40 G49 G80 G90; N30 T1 M6; (FREZA D1) N40 G43 H1; (корр. на длину инстр.) N50 S1000 M3; N60 G00 X3. Y8.; N70 G00 Z0.5 M8; N80 G01 Z-1. F25; N90 X3. Y3.; N100 X7. Y3.; N110 X7. Y8.; N120 Z0.5; N130 G91 G28 X0 Y0 Z0; N140 M9 M5; N150 M30; % | % О0001 (PAZ INCR) N10 G21 G54; N20 G40 G49 G80 G91; N30 T1 M6; (FREZA D1) N40 G43 H1; (корр. на длину инстр.) N50 S1000 M3; N60 G00 X3. Y8.; N70 G00 Z0.5 M8; N80 G01 Z-1.5 F25; N90 X0 Y-5.; N100 X4. Y0; N110 X0 Y5.; N120 Z1.5; N130 G28 X0 Y0 Z0; N140 M9 M5; N150 M30; % |
Строки безопасности
Кадры N10 и N20 – это строки безопасности. Строки, содержащие G –коды, которые переводят систему ЧПУ в начальное состояние, отменяют не нужные функции и обеспечивают безопасную работу с УП.
N20 G40 G49 G80 G90
Многие G –коды являются модальными и остаются активными в памяти системы ЧПУ, до тех пор, пока их не отменят. Возможны ситуации, когда не нужный модальный G –код не был отменен. Например, если программа обработки была прервана по каким-либо причинам в середине. Строка безопасности, которая обычно находиться в начале УП или после смены инструмента позволяет «восстановить» забытые G коды и выйти в первоначальный режим работы.
Линейная интерполяция G01
Команда линейной интерполяции G01 управляет векторным перемещением вдоль всех координатных осей станка от текущей позиции до заданного положения с запрограммированной скоростью подачи.
G1 X Y Z F
X = положение конечной точки по оси X.
Y = положение конечной точки по оси X.
Z = положение конечной точки по оси Z.
F = скорость подачи,
Правила и условия применения функции G01:
1. Заданное положение может быть выражено в абсолютных (X, Z) координатах или в приращениях (U, W).
2. G1 – модальный код, который действует до тех пор, пока не будет активирован другой интерполяционный G — код.
3. Команда управления скоростью подачи может быть выражена в виде величины подачи в минуту (код G94) или величины подачи на один оборот шпинделя (код G95).
Круговая интерполяция G02 и G03
Команда круговой интерполяции G02 (по часовой стрелке) и G03 (против часовой стрелке) позволяет задавать перемещение по дуге. Существуют два способа задания круговой интерполяции:
G2 X Y Z R F
Или
G2 X Y Z I, J, К F
X = положение конечной точки по оси X.
Y = положение конечной точки по оси X.
Z = положение конечной точки по оси Z.
F = скорость подачи,
I = расстояние по оси X от точки начала закругления до центра окружности с учетом знака.
J = расстояние по оси X от точки начала закругления до центра окружности с учетом знака.
К = расстояние по оси Z от точки начала закругления до центра окружности с учетом знака.
В кадре с кодом винтовой интерполяции необходимо указывать координаты конечной точки перемещения (дуги). Если кроме X и Yуказана координата Z, то это значит что выполняется винтовая интерполяция. Винтовая интерполяция используется для фрезерования резьбы и плавного врезания инструмента в материал заготовки.
Для полного описания дуги не достаточно задать только координаты ее конечной точки. Необходимо также указать и координаты ее центра (или радиуса) рис 6.
Рис. 6. Использование адресов I, J, К для определение центра дуги
При помощи I, J, К вы указываете относительные (инкрементальные) расстояния от начальной точки дуги до ее центра. При этом в зависимости от расположения дуги, значения могут быть положительными или отрицательными. Пример описания дуг приведен на рис. 7. На дуге №1 значение I положительное, а J отрицательное. На дуге №2 значения I и J положительные.
Рис. 7. Использование адресов I, J, К для определение центра дуги
Более простой способ задания центра дуги основан на применении адреса R. Для однозначного определения формы дуги необходимо указывать соответствующий знак перед числовым значением радиуса. Для дуги, которая больше 180 градусов значение R будет отрицательным. Для дуги, которая меньше 180 градусов значение R будет положительным рис. 8, 9.
Рис. 8. Положительное значение R Рис. 9. Отрицательное значение R
Источник
Программирование в абсолютной и относительной системах отсчета.
Перемещение инструмента в программе можно задавать 2 способами в абсолютной и относительной системах отсчета.
Иногда относительную систему называют приращениями.
Абсолютный способ отсчета координат – положение начала координат фиксировано (неподвижно) для всей программы обработки заготовки. При составлении программы записываются абсолютные значения координат последовательно расположенных точек, заданных от начала координат. При обработке программы координаты каждый раз отсчитываются от этого начала, что исключает накапливание погрешности перемещений в процессе обработки программы.
Относительный способ отсчета координат – за нулевое положение каждый раз принимается положение исполнительного органа, которое он занимает перед началом перемещения к следующей опорной точке. В этом случае в программу записываются приращения координат для последовательного перемещения инструмента от точки к точке. Этот способ отсчета используется в контурных системах ЧПУ. Точность позиционирования исполнительного органа в данной опорной точке определяется точностью обработки координат всех предыдущих опорных точек, начиная от исходной, что приводит к накапливанию погрешностей перемещения в процессе обработки программы.
Деталь, у которой размеры поставлены от определенной базы в данном случае от левого торца детали такую деталь удобней программировать в абсолютной системе отсчета. Однако программировать перемещение предмета в абсолютной системе отсчета при простановке размеров цепочкой неудобно, т.к. оператор вынужден проводить дополнительные подсчеты.
При программировании в относительной системе отсчета соответствующий кадр записывается специальным символом …. Эти кадры записываются также знаком + или – в зависимости от того в каком направлении перемещается инструмент по соответствующей оси.
№ кадра | Содержание кадра |
M3 | |
S5 | |
F30 | |
Z10100 | |
Z10000 | |
Z3000 | |
X500 | |
Z2000 | |
X500 | |
Z5000 | |
X600 | |
X10000 | |
M5 | |
M30 |
Чертеж детали с размерами в относительной системе отсчета (приращениях)
Источник
В чем заключается программирование в абсолютных координатах
Gcode G91 и Gcode G90: Абсолютное и инкрементное программирование ЧПУ
Gcode G90 и gcode G91 сообщают вашему станку с ЧПУ. Следует ли использовать абсолютные или инкрементные координаты.
В чем разница между Абсолютной и Инкрементной системами координат?
Давайте начнем с определения. Абсолютные координаты измеряются от нуля программы, от начала программы. Относительные перемещения измеряются от текущей позиции. Мы только что рассмотрели движения по дуге окружности с использованием G02 и G03. Координаты центра дуги, выраженные через I и J, являются относительными координатами.
А теперь более практичный пример. Предположим, вы находитесь в продуктовом магазине и спрашиваете продавца. В каком отделе находится печенье. Если он ответит: “Иди в проход 14 за печеньем”. Это будет абсолютная координата относительно первого прохода–“нулевая часть”продуктового магазина.
Если вместо этого он ответит: “Это через три прохода вниз”. — это будет инкрементная координата. Мы привыкли к обоим видам в повседневной жизни. И оба они полезны в зависимости от ситуации.
Обратите внимание, что то, что мы могли бы назвать “относительными координатами”. Часто называют координатами инкрементного режима в руководствах по программированию контроллера ЧПУ. Это просто другой способ сказать то же самое.
Переключение между Относительными (gcode G91) и Абсолютными координатами (gcode G90)
Как мы можем переключаться между Относительными и Абсолютными координатами? Обычный способ-использовать gcode G90 для использования абсолютных координат и G91 для использования Относительных координат. Например:
G90 ( Переключение на абсолютные координаты )
G0 X0Y0Z0 ( Перейти к началу программы в 0, 0, 0 )
G91 ( Переключиться на относительные координаты )
G0 X1Y1 ( Переместите одну единицу вправо в X и одну единицу вправо в Y )
G90 ( Возврат к абсолютным координатам )
Предшествующая программа включает в себя как абсолютный ход к X0Y0Z0, так и относительный. Как вы можете видеть, gcode G90 и gcode G91 являются модальными.
Пример абсолютного программирования G90 GCode
В этом и следующем примере я покажу, как вырезать одну и ту же фигуру, прямоугольную. Используя как абсолютные. Так и относительные координаты. Начнем с абсолютных координат GCode G90.
Учитывая 6Вот рисунок нашей части:
Хорошо, а вот несколько примеров gcode:
; Мы предполагаем, что резак находится где-то на безопасном расстоянии над частью. Чтобы мы могли быстро.
G90 ; Убедитесь, что мы находимся в режиме абсолютных координат gcode G90.
G00 ; Используйте скорость порогов.
X1.25 Y1.25 ; Абсолютные координаты прямо над углом
G01 ; Используйте режущую скорость подачи (фактическая скорость подачи и частота вращения шпинделя gcodes не показаны
Z-0,5 ; Погружение на дно кармана
; Теперь мы идем вокруг кармана против часовой стрелки, так что мы поднимаемся фрезерование
— Я не собираюсь показывать все ходы, чтобы очистить лузу, но мы просто обошли периметр. Используя абсолютные ходы.
Результирующие ходы выглядят примерно так:
Пример относительного программирования G91 GCode
Давайте попробуем еще раз с относительными движениями. Вот наш gcode:
; Мы предполагаем, что резак находится где-то на безопасном расстоянии над частью. Чтобы мы могли быстро.
G90 ; Убедитесь, что мы находимся в абсолютном координатном режиме gcode G90. Мы не знаем, где резак, поэтому используем абсолют, чтобы убедиться.
G00 ; Используйте скорость порогов.
X1.25 Y1.25 ; Абсолютные координаты прямо над углом
G01 ; Используйте режущую скорость подачи (фактическая скорость подачи и частота вращения шпинделя gcodes не показаны
G91 ; Теперь мы точно знаем, где находимся, поэтому переключаемся на относительные координаты.
Z-0,5 ; Погружение на дно кармана
; Теперь мы идем вокруг кармана против часовой стрелки, так что мы поднимаемся фрезерование
— Я не собираюсь показывать все ходы, чтобы очистить лузу, но мы просто обошли периметр. Используя абсолютные ходы.
Размеры всегда удобны при вычислении относительных перемещений:
Как Вы Тестируете Свой G-Код, Прежде Чем Поместить Его На Машину?
Конечно, вы можете разрезать Хотите узнать о каком-нибудь программном обеспечении. Которое позволяет вам выполнить 5 основных тестов вашего g-кода. Прежде чем он поступит на машину? Это сэкономит вам много времени и разочарования.
Какой режим Мой контроллер использует по умолчанию?
Интересно, что большинство элементов управления будут запускаться в относительном/инкрементном режиме (G91). Это делается потому, что считается более безопасным, если режим не такой, как вы ожидаете. Другими словами, если вы ожидали абсолютного. Считается более безопасным начать с инкрементного. Чем если бы вы ожидали инкрементного и начать в абсолютном. Правда в том. Что не быть в режиме, который вы ожидаете, не безопасно. Как бы вы ни смотрели на это. Потому что машина сделает что-то неожиданное. Поэтому убедитесь, что одна из первых вещей, которые вы делаете в вашей программе, это установить его либо gcode G90, либо gcode G91, чтобы он делал то. Что вы ожидаете!
Использование слов UVW для инкрементных координат
Некоторые контроллеры позволяют обоим стилям быть активными одновременно с помощью UVW. Мы могли бы написать предыдущую программу таким образом:
G90 ( Переключиться на абсолютные координаты )
G0 X0Y0Z0 ( Переход к началу программы на 0, 0, 0 )
G0 U1V1 ( Переместить одну единицу прямо в X и одну единицу прямо в Y )
Этот формат UVW удобен и немного короче. Мы уже упоминали контроллеры, где I и J относительны, что аналогично UVW. Хотя и предназначено для расположения центра дуги.
Зачем Мне Использовать Инкрементные и Абсолютные Ходы?
Давайте рассмотрим несколько случаев.
Во-первых, все дело в том, как вы хотите думать о своей проблеме. Более естественно думать о том. Что происходит относительно какой-то абсолютной центральной точки или относительно вашего текущего местоположения? Контроллеру ЧПУ все равно, поэтому делайте то, что вам легко.
Во-вторых, предположим, что вы просто читаете отпечаток и вводите g-код. Возможно, будет проще использовать относительные координаты для некоторых точек. Поскольку у вас может не быть легкодоступной абсолютной координаты. Отпечатки обычно обеспечивают размеры относительно соседних объектов. А не относительно некоторого абсолютного начала нулевой части.
Последний пример-при написании подпрограмм. Предположим, у вас есть функция. Которая повторяется несколько раз в вашей программе g-кода. Возможно, вы просверлите отверстие, скошите его. А затем проденьте в него резьбу, например. Эти отверстия расположены по всей пластине, которую вы обрабатываете. Простой способ запрограммировать такую вещь-создать подпрограмму (мы будем говорить о подпрограммах подробно чуть позже. А пока используйте свое воображение). Который предполагает. Что он расположен выше центра отверстия и может просто приступить к выполнению всей работы. Используя относительные координаты. Теперь вы можете просто сделать абсолютный ход. А затем вызвать подпрограмму для каждой лунки и написать код только один раз. Какая экономия времени.
Консервированные циклы и Автоматический gcode G91
Многие законсервированные циклы (например. Циклы бурения) позволяют перечислять координаты так. Чтобы законсервированный цикл выполнялся несколько раз. По одному разу для каждого желаемого времени выполнения цикла. Это позволяет легко делать такие вещи, как сверление нескольких отверстий. Используя список координат отверстий. Как правило, координаты будут относительными. Как если бы код автоматически вставлял G91 спереди. А затем возвращался в тот режим. Который действовал в конце.
Не забудьте проверить документацию вашего контроллера, чтобы узнать, делает ли он это.
Используйте редактор G-Wizard для преобразования между абсолютными и относительными координатами
Это может быть утомительный и подверженный ошибкам процесс преобразования группы g-кода из абсолютного в относительный или наоборот. Но это легко. Если у вас есть программное обеспечение. Чтобы сделать это автоматически. Оказывается, в редакторе G-Wizard есть команда. Которая выполняет это преобразование за вас.
Под редакцией инструментов есть относительная / абсолютная команда. Которая делает его очень простым:
Вы можете конвертировать всю программу или выбранный блок строк.
Рекомендации
Упражнения
1. Напишите программу g-кода, которая подает резак вокруг прямоугольника размером 1 дюйм на 1 дюйм, центр которого равен 1, 1. Используйте абсолютные координаты (gcode G90).
2. Преобразуйте программу, которую вы написали в #1, чтобы использовать относительные координаты (не забудьте включить gcode G91!). Вы можете использовать абсолютную координату. Чтобы добраться до центра прямоугольника в начальном движении G00.
3. Определите, позволяет ли ваш элемент управления перемещать UVW, и если да, перепишите #2, чтобы использовать их без вызова G91 для переключения на относительные координаты.
Источник