Поведение оси Z при G31

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
vse
Новичок
Сообщения: 4
Зарегистрирован: 16 июл 2018, 08:11
Репутация: 0
Настоящее имя: Дмитрий
Контактная информация:

Поведение оси Z при G31

Сообщение vse »

Доброго времени суток.
Проблема следующая:
- отработка на плазменной резке контроля высоты по PROBE;
- в MDI забиваем G31 и до появления сигнала, двигатель жестко останавливается, высоту зафиксировали;
- далее в самой программе точно такой же кадр по G31, но после сигнала с датчика плазматрон на свободном выбеге проезжает еще сколько то миллиметров, соответственно высота уже не та да и в датчик постоянно ударяется.
Подскажите куда копать, почему разное поведение оси Z при MDI и Автомат?
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Поведение оси Z при G31

Сообщение FLUKE »

Выложи G-Code, только не большой детальки.
vse
Новичок
Сообщения: 4
Зарегистрирован: 16 июл 2018, 08:11
Репутация: 0
Настоящее имя: Дмитрий
Контактная информация:

Re: Поведение оси Z при G31

Сообщение vse »

N0000 (Filename: 27.tap)
N0010 (Post processor: Mach2 plasma Исправлен 12 мм+2мм.post)
N0020 (Date: 16.07.2018)
N0030 G21 (Units: Metric)
N0040 G53 G90 G40
N0050 F1
N0060 S300
N0070 (Part: ДЕТАЛЬ РАМЫ №2 2шт)
N0080 (Process: Плазма, Unnamed Level 1, Plasma, 2 mm прорез)
N0090 M06 T0 F1100 (Plasma, 2 mm прорез)
N0100 G00 Z4.0000
N0110 X430.9996 Y33.0298
N0120 Z5.9000
N0130 G04 P300
N0140 G31 Z-50
N0150 G92 Z-10
N0160 G00 z+9
N0170 Z6.0000
N0180 M03
N0190 G04 P700
N0200 G01 Z5.9000 F500
Ну и дальше по тексту. Проблемы на 140 кадре
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Поведение оси Z при G31

Сообщение FLUKE »

Я не пользуюсь G31, но чёт тут не совсем понятно. Куча движух по Z. Если не ошибаюсь, то на 160 кадре резак должен опуститься на 1мм вниз от точки качания. Пробуй в MDI вбить последовательно строчки со 140.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Поведение оси Z при G31

Сообщение aftaev »

vse писал(а):Подскажите куда копать, почему разное поведение оси Z при MDI и Автомат?
Мож в автомате скорость поиска меньше?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
vse
Новичок
Сообщения: 4
Зарегистрирован: 16 июл 2018, 08:11
Репутация: 0
Настоящее имя: Дмитрий
Контактная информация:

Re: Поведение оси Z при G31

Сообщение vse »

aftaev писал(а):скорость поиска
Поясните пожалуйста.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Serg »

В кадре 140 скорость движения 1100мм/мин, задана в кадре 90.
После выполнения программы (в MDI) скорость будет 500мм/мин, задана в кадре 200.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Поведение оси Z при G31

Сообщение FLUKE »

UAVpilot писал(а):В кадре 140 скорость движения 1100мм/мин, задана в кадре 90.
После выполнения программы (в MDI) скорость будет 500мм/мин, задана в кадре 200.
А, почему тогда
vse писал(а):плазматрон на свободном выбеге проезжает еще сколько то миллиметров, соответственно высота уже не та да и в датчик постоянно ударяется.
:thinking:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Serg »

С этим уже надо к спецам по Mach3, а я его даже ни разу не скачивал. :)

Выбег в несколько милиметров обычно из-за большой скорости бывает (ускорение ведь из УП не поменять?).
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Поведение оси Z при G31

Сообщение FLUKE »

При низком ускорении мач заранее тормозить начинает. Если шаговик, то всё чётко должно быть. если серва, тут варианты.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Serg »

FLUKE писал(а):При низком ускорении мач заранее тормозить начинает.
А как он заранее узнает, когда сработает датчик касания?..
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vse
Новичок
Сообщения: 4
Зарегистрирован: 16 июл 2018, 08:11
Репутация: 0
Настоящее имя: Дмитрий
Контактная информация:

Re: Поведение оси Z при G31

Сообщение vse »

Двигателя сервы. То что большая скорость вариант отпадает, потому как в MDI даже на максимальной скорости останавливается идеально, плюс минус десятки от минимальной скорости. А во время работы по программе, такое ощущение, что при получении сигнала с датчика касания, Мач отпускает двигатель в свободное плавание и он (двигатель) по инерции едет вниз какое то расстояние.
Проблема в том, что при отработке одного и того же кода G31 (по сути линейное перемещение) двигатель при MDI и выполнении программы ведет себя по разному. Может это какой-то глюк самой программы?
Evghenii
Новичок
Сообщения: 6
Зарегистрирован: 12 июн 2018, 15:50
Репутация: 0
Настоящее имя: Евгений
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Evghenii »

vse писал(а):Двигателя сервы. То что большая скорость вариант отпадает, потому как в MDI даже на максимальной скорости останавливается идеально, плюс минус десятки от минимальной скорости. А во время работы по программе, такое ощущение, что при получении сигнала с датчика касания, Мач отпускает двигатель в свободное плавание и он (двигатель) по инерции едет вниз какое то расстояние.
Проблема в том, что при отработке одного и того же кода G31 (по сути линейное перемещение) двигатель при MDI и выполнении программы ведет себя по разному. Может это какой-то глюк самой программы?
У меня такая же проблема, но мач конечно же не отпускает двигатель в свободное плавание. По моим наблюдениям при выполнении кода G31 ускорение с которым останавливается ось Z раз в 10 меньше чем установлено в motor tuning. Соответственно чем выше скорость оси Z при поиске уровня металла тем большее расстояние проезжает ось Z после срабатывания датчика Probe и наоборот.
Я об этой проблеме спрашивал у кого только можно, никто с такой проблемой не сталкивался. Вы первый Дмитрий у кого такая же проблема.
Я думал заменить код G31 в управляющей команде на макрос, который выполнял бы ту же функцию, т.е. опускал ось Z (можно даже со скоростью свободного перемещения) и останавливался после срабатывания датчика (например на input#1), но пока что сам не могу его написать и ничего похожего в интернете не нашел.
Евжений
Мастер
Сообщения: 1097
Зарегистрирован: 05 апр 2016, 20:18
Репутация: 126
Настоящее имя: Жэзэрэл
Откуда: Там, сям.
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Евжений »

Evghenii писал(а):Я думал заменить код G31 в управляющей команде на макрос
Вот состряпал, проверил, работает. Но только на компе, станка нет. Срабатывание входа кнопкой имитируется.

code"G1G91Z-100F100" 'опускаемся в приращениях на 100 мм вниз с подачей 100 мм/мин
While(IsActive(input1)) 'едет вниз и ждёт срабатывания входа 1
Wend
DoOEMButton(1003) 'как только сработал, нажимается кнопка стоп
Sleep(100) 'пауза 0,1 сек
Code"G92Z10" 'в остановившемся месте координата принимает значение 10 (по Z), т.е. 10 это толщина бруска
Sleep(100) 'пауза 0,1 сек
Code"G0G91Z5" 'поднимаемся в приращениях на 5 мм вверх
While(IsMoving) 'ждём окончания движения
Wend
Code"G90" 'переключаемся в абсолютные перемещения

Это минимальный набор, надо допиливать.
Evghenii
Новичок
Сообщения: 6
Зарегистрирован: 12 июн 2018, 15:50
Репутация: 0
Настоящее имя: Евгений
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Evghenii »

Нашел в интернете макрос, который должен выполнять функцию кода G31, но пока он у меня не работает, по крайней мере в симуляции.
https://en.cs-lab.eu/technical-support/ ... ve-to-g31/
Евжений
Мастер
Сообщения: 1097
Зарегистрирован: 05 апр 2016, 20:18
Репутация: 126
Настоящее имя: Жэзэрэл
Откуда: Там, сям.
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Евжений »

Что-то прям немного обидно.
Evghenii
Новичок
Сообщения: 6
Зарегистрирован: 12 июн 2018, 15:50
Репутация: 0
Настоящее имя: Евгений
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Evghenii »

Евжений писал(а):Что-то прям немного обидно.
Твоя работа не пропала зря, за основу макроса я взял твой код.

code"G0Z-100" 'опускаемся на -100 мм вниз со скоростью свободного переезда
While(IsActive(input1)) 'едет вниз и ждёт срабатывания входа 1
Wend
DoOEMButton(1003) 'Стоп
DoOEMButton(1000) 'Пуск; иначе выполнение всего УП остановиться
Sleep(30) ' на всякий случай, чтобы успели подгрузиться следующие строки кода УП после макроса.

Этот код работает, проверил на станке.

Один маленький минус: время работы по текущей УП на счетчике после макроса каждый раз обнуляется, из-за остановки и повторного запуска УП в самом макросе.

Есть ли команда которая может прервать выполнение функции code и перейти к выполнении следующей команды, вместо комбинации: DoOEMButton(1003) 'Стоп; DoOEMButton(1000) 'Пуск ?
DmS
Новичок
Сообщения: 1
Зарегистрирован: 26 дек 2016, 10:20
Репутация: 0
Настоящее имя: Бондаренко Дмитрий Сергеевич
Контактная информация:

Re: Поведение оси Z при G31

Сообщение DmS »

Всем добрый день.

Если позволите, то задам тут пару вопросов, не создавая новой темы.
Самодельный станок по классической схеме, контроллер китайский USB DDSM5 (плюс плагин под него в мач3). Не могу заставить работать скрипт автопоиска нуля. Скрипт классический, тут на форуме брал.
Суть проблемы такая - если дать команду G31 Z-20 вручную, то каретка едет вниз до замыкания probe и останавливается без перелета (ну либо почти, зависит от скорости). Т.е. вполне корректно отрабатывает команду.
Если выполняем скрипт, то получаем приличный перелет миллиметра в три, а то и больше, но все же остановка есть. Но после этого - зависание скрипта. Я так понимаю в цикле while wend? Ждет пока движение закончится, хотя по факту уже нет движения осей?

И еще одна проблема сюда же - команда G31 выполняется до тех пор пока не будет замыкания пробника, даже если явно указано, что ехать вниз надо на 5мм к примеру.

Мач версии Version R3.043.066. Скрипты пробовал разные, результат один - виснут. Подскажите, куда копать надо, где баг сидит?

И факультативно, еще одна проблемка есть. Если нажать кнопку ref all home, то базируются только оси Z и X. Но если щелкнуть на вкладке diagnostics конпку Ref Y, то эта ось успешно базируется.
Скрипт для ref all home не менял, т.е. там все по умолчанию. Кто сталкивался с такой бедой?
gennadiy
Кандидат
Сообщения: 64
Зарегистрирован: 03 ноя 2013, 22:28
Репутация: 32
Откуда: Брест
Контактная информация:

Re: Поведение оси Z при G31

Сообщение gennadiy »

USB и Mach3? LPT и Mach3 - 100% успеха.
Евжений
Мастер
Сообщения: 1097
Зарегистрирован: 05 апр 2016, 20:18
Репутация: 126
Настоящее имя: Жэзэрэл
Откуда: Там, сям.
Контактная информация:

Re: Поведение оси Z при G31

Сообщение Евжений »

gennadiy писал(а):LPT и Mach3 - 100% успеха
Да ну? Чтобы эта связка нормально заработала нужно чтобы звёзды на небе в эдакую непростую комбинацию сошлись.
Ответить

Вернуться в «Windows / Mach»