FAQ по Gcode, примеры
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: FAQ по Gcode, примеры
менять точно можно. я привязывал и иным способом, с учётом высоты датчика. но тот способ потом был переделан по какой-то причине.
-
- Мастер
- Сообщения: 1249
- Зарегистрирован: 30 янв 2021, 21:34
- Репутация: 147
- Настоящее имя: Максим
- Откуда: г.Тверь
- Контактная информация:
Re: FAQ по Gcode, примеры
Ага, понял, спасибо!steals_y2k писал(а): ↑05 июл 2021, 15:50 менять точно можно. я привязывал и иным способом, с учётом высоты датчика. но тот способ потом был переделан по какой-то причине.
-
- Мастер
- Сообщения: 705
- Зарегистрирован: 18 май 2019, 13:23
- Репутация: 96
- Настоящее имя: Андрей
- Контактная информация:
Re: FAQ по Gcode, примеры
Подскажите, зачем в таблице инструментов поле pocket?
и можно ли его использовать для унификации 8ми поз. револьверки в коде смены инструмента.
Хочется чтобы в покет хранился номер позиции на револьверке, куда я этот инструмент всегда ставлю (допустим вместо аналогичного).
Ну к примеру есть 2 расточных резца, я их ставлю в одну позицию, но всегда один из них. При этом в таблице приходится менять номера под реально установленный.
Пару раз были ситуации когда я их в таблице перепутал, п длина у них сильно разная...
А так бы в коде один резец всегда бы был Т14, а второй Т15 и на них бы написал маркером.
и можно ли его использовать для унификации 8ми поз. револьверки в коде смены инструмента.
Хочется чтобы в покет хранился номер позиции на револьверке, куда я этот инструмент всегда ставлю (допустим вместо аналогичного).
Ну к примеру есть 2 расточных резца, я их ставлю в одну позицию, но всегда один из них. При этом в таблице приходится менять номера под реально установленный.
Пару раз были ситуации когда я их в таблице перепутал, п длина у них сильно разная...
А так бы в коде один резец всегда бы был Т14, а второй Т15 и на них бы написал маркером.
- antoxa-kylibin
- Мастер
- Сообщения: 786
- Зарегистрирован: 22 июн 2017, 13:18
- Репутация: 107
- Настоящее имя: Антон
- Откуда: г. Воронеж
- Контактная информация:
Re: FAQ по Gcode, примеры
Есть простая задача, измерение длины инструмента. Есть датчик длины инструмента. Вопрос, как сделать так, чтобы станок по программе поехал к датчику и измерял вылет инструмента, и это значение занес в таблицу инструментов в соответствующую ячейку? Скорее всего логично, чтобы эта "подпрограмма" работала для текущего активного инструмента. Например, я в MDI дал команду М6 Т1, при ручной смене инструмента ЕМС говорит воткните инструмент №1 и нажмите продолжить. И после этого как вариант было бы удобно нажать соответствующую кнопку пользовательского макроса, который и производит измерение вылета инструмента. Не смещение по Z активной системы координат, а именно вылет инструмента. По идеи это должна быть короткая программка в которой прописаны безопасные перемещения к датчику инструмента, затем движение по Z в сторону датчика в режиме probe и в момент касания датчика нужно измеренное значение записать в какую то переменную, которая отвечает за вылет текущего номера инструмента. Тут еще такой момент есть, что значение вылета инструмента, должно считаться относительно чего-то, например торца шпинделя без инструмента. Т.е. изначально нужно как-то сделать привязку датчика и пустого шпинделя, чтобы после этого уже измерять разницу между пустым шпинделем и с инструментом и значение этой разницы записывать в нужные ячейки таблицы инструментов....Могут возникнуть вопросы у многих, а нафига это надо так заморачиваться? Но могу пояснить для чего это все. Если шпиндель имеет сменные оправки, то правильно работать именно с вылетом инструмента, чтобы рабочая система координат оставалась неизменной, кроме того за счет корректоров длины инструмента можно по факту подстроить разные инструменты между собой, чтобы не было ступенек по высоте, если эти инструменты "перекрывают" одну область обработки. А эта "подпрограмма" нужна для автоматизации процесса измерения длины инструмента.....Ну еще как вариант, если пользоваться вылетами инструмента, то можно 1 раз выяснить значение по Z для плоскости стола станка и в дальнейшем это значение просто вписывать в нужную рабочую систему координат, если у нас 0 по Z для управляющей программы задан от поверхности стола станка......Возможно на мой вопрос уже есть готовое решение, но я не в курсе.....Просьба к знающим людям, помочь мне с решением этой задачи.....
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: FAQ по Gcode, примеры
g10 l11 p[номер инструмента] z[#текущая высота в системе координат]
- antoxa-kylibin
- Мастер
- Сообщения: 786
- Зарегистрирован: 22 июн 2017, 13:18
- Репутация: 107
- Настоящее имя: Антон
- Откуда: г. Воронеж
- Контактная информация:
Re: FAQ по Gcode, примеры
Эта команда записывает значение по Z в таблицу инструмента? А как сделать чтобы система считала текущий инструмент и записала для этого инструмента результат?
-
- Мастер
- Сообщения: 705
- Зарегистрирован: 18 май 2019, 13:23
- Репутация: 96
- Настоящее имя: Андрей
- Контактная информация:
Re: FAQ по Gcode, примеры
так ты же сам пишешь M6 Tx
так все нормальные операторы так делают )antoxa-kylibin писал(а): ↑ то правильно работать именно с вылетом инструмента, чтобы рабочая система координат оставалась неизменной
- xenon-alien
- Почётный участник
- Сообщения: 4510
- Зарегистрирован: 01 янв 2013, 13:13
- Репутация: 920
- Настоящее имя: Daniel
- Откуда: Закарпатская обл. Украина
- Контактная информация:
Re: FAQ по Gcode, примеры
G43 M6 Tx?antoxa-kylibin писал(а): ↑ А как сделать чтобы система считала текущий инструмент и записала для этого инструмента результат?
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: FAQ по Gcode, примеры
считывание g43 hx, если речь о высоте.
есть же справочник
есть же справочник
-
- Мастер
- Сообщения: 212
- Зарегистрирован: 25 дек 2020, 12:01
- Репутация: 35
- Настоящее имя: Victor
- Контактная информация:
Re: FAQ по Gcode, примеры
расскажите, почему я не нормальный оператор? Почему не нормально смещать систему координат по Z на длину инструмента и на конце инструмента у меня всегда 0?ex71 писал(а): ↑26 сен 2021, 22:40 так ты же сам пишешь M6 Txтак все нормальные операторы так делают )antoxa-kylibin писал(а): ↑ то правильно работать именно с вылетом инструмента, чтобы рабочая система координат оставалась неизменной
после каждой смены инструмента у меня по датчику происходит замер длины нового инструмента и смещение Z0 на самый конец инструмента.
получается всё точно без ступенек, единственный дополнительный шаг найти смещение между нулём заготовки и высотой датчика, но это уже на автомате делаю
-
- Мастер
- Сообщения: 705
- Зарегистрирован: 18 май 2019, 13:23
- Репутация: 96
- Настоящее имя: Андрей
- Контактная информация:
Re: FAQ по Gcode, примеры
представьте себе ситуацию, что кроме фрезерного станка существуют еще например токарный. Где смещение задается в двух координатах X (диаметр) и Z (ось). Тогда ответ на ваш вопрос сам к вам придет. У вас диаметр фрезы учитывается только в коде, но задав к примеру корректор диаметра фрезы можно компенсировать отжим или износ/переточку фрезы.
В собственном станке можно вообще что угодно делать. А в целом мире есть "основы" разработанные не просто так, а для универсальности.
Ну в целом результат тот же, просто удобнее когда нули на базовой плоскости. А у вас получается не "0 на конце" а режущая кромка на нуле. Просто вы подгоняете инструмент в базовую плоскость и меняете коррекцию высоты шпинделя/стола. Ступенек и не будет, если датчик длины отрабатывает точно с одинаковой погрешностью.
ну естественно - это считается автоматически, а значение коррекции хранится в ЧПУ или задается в коде.
- antoxa-kylibin
- Мастер
- Сообщения: 786
- Зарегистрирован: 22 июн 2017, 13:18
- Репутация: 107
- Настоящее имя: Антон
- Откуда: г. Воронеж
- Контактная информация:
Re: FAQ по Gcode, примеры
Я наверное не совсем правильно мысль озвучил. Хотел сказать, какой командой происходит запись текущего значения Z в корректор длины инструмента? Про G43 Hx в курсе, но все равно спасибо за ответ. Тут скорее всего G10 L11 надо изучать....
-
- Мастер
- Сообщения: 939
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: FAQ по Gcode, примеры
ну да, g10 l10 и g10 l11, вторая точно.
надо г10 изучать
надо г10 изучать
- kurtkobat
- Кандидат
- Сообщения: 89
- Зарегистрирован: 01 мар 2017, 20:52
- Репутация: 3
- Настоящее имя: Dmitriy
- Контактная информация:
Re: FAQ по Gcode, примеры
Понимает ли мач3 команду goto?
Иногда в мозгах включается G04 Х500, но это нужда что бы сделать правильно
-
- Мастер
- Сообщения: 1249
- Зарегистрирован: 30 янв 2021, 21:34
- Репутация: 147
- Настоящее имя: Максим
- Откуда: г.Тверь
- Контактная информация:
Re: FAQ по Gcode, примеры
Там вроде есть вызовы подпрограммы с нужной метки по M98 и возврат в основную программу на нужную метку по M99, картинки правда с доков на 4-ый
- vitzin
- Мастер
- Сообщения: 410
- Зарегистрирован: 27 фев 2020, 14:16
- Репутация: 55
- Настоящее имя: viktor vizin
- Контактная информация:
Re: FAQ по Gcode, примеры
goto,не как не связанно с подпрограммой,это старт программы
с нужного места,скажем со строки такой то,
и да,Mach 3 понимает,с какой строки ему начинать работу, но goto там
нигде не найдёшь, это не Heidenhein и консортен.
с нужного места,скажем со строки такой то,
и да,Mach 3 понимает,с какой строки ему начинать работу, но goto там
нигде не найдёшь, это не Heidenhein и консортен.
-
- Новичок
- Сообщения: 3
- Зарегистрирован: 05 окт 2020, 01:37
- Репутация: 0
- Контактная информация:
Re: FAQ по Gcode, примеры
Подскажите пожалуйста будет работать следующий код или нет
G53 G90 G92 X10 Y10 Z10 A180
G53 G90 G92 X10 Y10 Z10 A180
-
- Новичок
- Сообщения: 3
- Зарегистрирован: 05 окт 2020, 01:37
- Репутация: 0
- Контактная информация:
Re: FAQ по Gcode, примеры
Хотел избавиться от софт пределов по оси А для ddcs v3.1, так как они не могут превышать диапазон -99999; 99999, как Вы понимаете для поворотной оси это капля в море. Проверил этот код, но результата не было, но проблема решилась проще простого, просто лимит по минимуму и максимуму устанавливаются в ноль и лимиты становятся бесконечными, как я понимаю в пределах допустимой разрядности контроллера ddcs