Исходный код вики G2, G3: Круговое перемещение
Версия 7.1 от knetyaga на 2021/04/27 13:35
Последние авторы
| author | version | line-number | content |
|---|---|---|---|
| 1 | Дуга окружности или спирали задаётся с помощью команд (% style="color: rgb(160,190,45);" %)//**G2**//(%%) (вращение по часовой стрелке) или (% style="color: rgb(160,190,45);" %)//**G3**//(%%) (вращение против часовой стрелки) с текущей скоростью подачи. Направление вращения определяется относительно положительного направления оси, вокруг которой происходит вращение. Ось окружности или спирали должна быть параллельна оси X, Y или Z системы координат. Эта ось (или, соответственно, плоскость, перпендикулярная оси) выбирается с помощью команд (% style="color: rgb(160,190,45);" %)//**G17**//(%%)//**[[doc:PUMPUBLIC.G17 - G19\.1: Выбор рабочей плоскости]]**// (ось Z, плоскость XY), (% style="color: rgb(160,190,45);" %)//**G18**//(%%)//**[[doc:PUMPUBLIC.G17 - G19\.1: Выбор рабочей плоскости]]**// (ось Y, плоскость XZ) или (% style="color: rgb(160,190,45);" %)//**G19**//(%%)//**[[doc:PUMPUBLIC.G17 - G19\.1: Выбор рабочей плоскости]]**// (ось X, плоскость YZ). | ||
| 2 | |||
| 3 | Чтобы задать спираль, укажите параметр оси, перпендикулярной плоскости интерполяции. Например, для плоскости (% style="color: rgb(160,190,45);" %)//**G17**//(%%)//**[[doc:PUMPUBLIC.G17 - G19\.1: Выбор рабочей плоскости]]**// укажите значение Z. Это вызовет движение по оси Z до указанного значения в процессе круговой интерполяции в плоскости XY. | ||
| 4 | (% style="letter-spacing: 0.0px;" %)Чтобы задать дугу, которая описывает больше одного полного оборота, используйте параметр P, который определяется как число полных оборотов плюс заданная дуга. Параметр P должен быть целым числом. Если параметр P не указан, результат такой же, как при задании P1: будет выполнен только один полный или частичный оборот. Например, если задана дуга в 180 градусов с параметром P2, результирующее перемещение будет составлять 1 ½ оборота. | ||
| 5 | |||
| 6 | Если строка G-кода задаёт дугу и содержит движение поворотной оси, поворотная ось движется с постоянной скоростью таким образом, чтобы вращение начиналось и заканчивалось одновременно с движением по XYZ. Подобные команды используются редко. | ||
| 7 | (% style="letter-spacing: 0.0px;" %)Центр дуги задаётся в абсолютных либо относительных координатах (устанавливается командами (% style="letter-spacing: 0px; color: rgb(160, 190, 45)" %)//**G90.1**//(% style="letter-spacing: 0.0px;" %)//**[[doc:PUMPUBLIC.G90\.1, G91\.1: Задание режима абсолютных/относительных координат для центра дуги]]**// и (% style="letter-spacing: 0px; color: rgb(160, 190, 45)" %)//**G91.1**//(% style="letter-spacing: 0.0px;" %)//**[[doc:PUMPUBLIC.G90\.1, G91\.1: Задание режима абсолютных/относительных координат для центра дуги]]**// соответственно). | ||
| 8 | |||
| 9 | Для определения дуги допустимы два формата: задание центра и задание радиуса. | ||
| 10 | |||
| 11 | {{warning title="Является ошибкой:"}} | ||
| 12 | * не установлена скорость подачи; | ||
| 13 | * параметр P не является целым числом. | ||
| 14 | {{/warning}} | ||
| 15 | |||
| 16 | ===== Формат дуги с указанием центра ===== | ||
| 17 | |||
| 18 | (% style="color: rgb(160,190,45);" %) | ||
| 19 | //**G2 or G3 axes offsets**// | ||
| 20 | |||
| 21 | Формат дуги с указанием центра является более точным по сравнению с форматом с указанием радиуса и предпочтителен для использования. | ||
| 22 | |||
| 23 | Для задания дуги используется указание конечной точки дуги и смещение центра дуги относительно текущей позиции. Конечная точка дуги может совпадать с текущей позицией. В режиме инкрементального позиционирования центра (используется по умолчанию) координаты центра задаются относительно начала дуги. В режиме абсолютного позиционирования центра координаты центра задаются относительно текущего начала координат. | ||
| 24 | |||
| 25 | (% style="margin-left: 30.0px;color: rgb(160,190,45);" %) | ||
| 26 | //**XY-plane (G17)**// | ||
| 27 | //**G2 or G3 <X- Y- Z- I- J- P->**// | ||
| 28 | |||
| 29 | (% style="margin-left: 30.0px;color: rgb(160,190,45);" %) | ||
| 30 | //**XZ-plane (G18)**// | ||
| 31 | //**G2 or G3 <X- Z- Y- I- K- P->**// | ||
| 32 | |||
| 33 | (% style="margin-left: 30.0px;color: rgb(160,190,45);" %) | ||
| 34 | //**YZ-plane (G19)**// | ||
| 35 | //**G2 or G3 <Y- Z- X- J- K- P→**// | ||
| 36 | |||
| 37 | {{warning title="Является ошибкой:"}} | ||
| 38 | * не установлена скорость подачи; | ||
| 39 | * не заданы смещения центра; | ||
| 40 | * если дуга спроецирована на текущую плоскость интерполяции, расстояние от текущей позиции до центра отличается от расстояния от конечной точки до центра на более чем 0.5 мм или (0.005 мм и 0.1% от радиуса). | ||
| 41 | {{/warning}} | ||
| 42 | |||
| 43 | //Пример построения дуги~:// | ||
| 44 | |||
| 45 | (% style="color: rgb(160,190,45);" %)//**G0 X0 Y0**//(%%) | ||
| 46 | (% style="color: rgb(160,190,45);" %)//**G2 X1 Y1 I1 F10**//(%%) (дуга по часовой стрелке в плоскости XY) | ||
| 47 | |||
| 48 | (% class="auto-cursor-target" style="text-align: center;" %) | ||
| 49 | [[image:attach:image2019-6-4_11-22-15.png]]Пример построения дуги | ||
| 50 | |||
| 51 | //Пример построения спирали~:// | ||
| 52 | |||
| 53 | (% style="color: rgb(160,190,45);" %)//**G0 X0 Y0 Z0**//(%%) | ||
| 54 | (% style="color: rgb(160,190,45);" %)//**G17 G2 X10 Y16 I3 J4 Z-1** //(%%)(спираль с перемещением по Z) | ||
| 55 | |||
| 56 | //Пример использования параметра P~:// | ||
| 57 | |||
| 58 | (% style="color: rgb(160,190,45);" %)//**G0 X0 Y0 Z0**//(%%) | ||
| 59 | (% style="color: rgb(160,190,45);" %)//**G2 X0 Y1 Z-1 I1 J0.5 P2 F25**// | ||
| 60 | |||
| 61 | В формате дуги с указанием центра радиус дуги не указывается, но он может быть легко вычислен как расстояние между центром дуги и начальной либо конечной точкой. | ||
| 62 | |||
| 63 | ===== Формат дуги с указанием радиуса ===== | ||
| 64 | |||
| 65 | (% style="color: rgb(160,190,45);" %) | ||
| 66 | //**G2 or G3 axes R- <P→**// | ||
| 67 | |||
| 68 | Для задания дуги используется указание конечной точки дуги и радиуса дуги. Команда (% style="color: rgb(160,190,45);" %)//**G2**//(%%) axes R-, где R – радиус дуги. Положительное значение радиуса показывает, что дуга поворачивается менее чем на 180 градусов, отрицательное – более чем на 180 градусов. | ||
| 69 | |||
| 70 | Не рекомендуется задавать дуги в формате с указанием радиуса, если они близки к полной окружности или полуокружности, так как в этом случае небольшое изменение в положении конечной точки приводит к намного большему изменению в положении центра дуги. | ||
| 71 | |||
| 72 | {{warning title="Является ошибкой:"}} | ||
| 73 | * не указаны оба параметра осей для выбранной плоскости интерполяции; | ||
| 74 | * конечная точка дуги совпадает с начальной точкой. | ||
| 75 | {{/warning}} | ||
| 76 | |||
| 77 | //Пример построения дуги~:// | ||
| 78 | |||
| 79 | (% style="color: rgb(160,190,45);" %)//**G17 G2 X10 Y15 R20 Z5**//(%%) (формат дуги с указанием радиуса) |