Страница 22 из 22

Re: FAQ по Gcode, примеры

Добавлено: 05 июл 2021, 15:50
steals_y2k
менять точно можно. я привязывал и иным способом, с учётом высоты датчика. но тот способ потом был переделан по какой-то причине.

Re: FAQ по Gcode, примеры

Добавлено: 05 июл 2021, 19:09
kfmut
steals_y2k писал(а): 05 июл 2021, 15:50 менять точно можно. я привязывал и иным способом, с учётом высоты датчика. но тот способ потом был переделан по какой-то причине.
Ага, понял, спасибо! :good:

Re: FAQ по Gcode, примеры

Добавлено: 02 авг 2021, 12:18
ex71
Подскажите, зачем в таблице инструментов поле pocket?
и можно ли его использовать для унификации 8ми поз. револьверки в коде смены инструмента.
Хочется чтобы в покет хранился номер позиции на револьверке, куда я этот инструмент всегда ставлю (допустим вместо аналогичного).
Ну к примеру есть 2 расточных резца, я их ставлю в одну позицию, но всегда один из них. При этом в таблице приходится менять номера под реально установленный.
Пару раз были ситуации когда я их в таблице перепутал, п длина у них сильно разная...
А так бы в коде один резец всегда бы был Т14, а второй Т15 и на них бы написал маркером.

Re: FAQ по Gcode, примеры

Добавлено: 26 сен 2021, 01:53
antoxa-kylibin
Есть простая задача, измерение длины инструмента. Есть датчик длины инструмента. Вопрос, как сделать так, чтобы станок по программе поехал к датчику и измерял вылет инструмента, и это значение занес в таблицу инструментов в соответствующую ячейку? Скорее всего логично, чтобы эта "подпрограмма" работала для текущего активного инструмента. Например, я в MDI дал команду М6 Т1, при ручной смене инструмента ЕМС говорит воткните инструмент №1 и нажмите продолжить. И после этого как вариант было бы удобно нажать соответствующую кнопку пользовательского макроса, который и производит измерение вылета инструмента. Не смещение по Z активной системы координат, а именно вылет инструмента. По идеи это должна быть короткая программка в которой прописаны безопасные перемещения к датчику инструмента, затем движение по Z в сторону датчика в режиме probe и в момент касания датчика нужно измеренное значение записать в какую то переменную, которая отвечает за вылет текущего номера инструмента. Тут еще такой момент есть, что значение вылета инструмента, должно считаться относительно чего-то, например торца шпинделя без инструмента. Т.е. изначально нужно как-то сделать привязку датчика и пустого шпинделя, чтобы после этого уже измерять разницу между пустым шпинделем и с инструментом и значение этой разницы записывать в нужные ячейки таблицы инструментов....Могут возникнуть вопросы у многих, а нафига это надо так заморачиваться? Но могу пояснить для чего это все. Если шпиндель имеет сменные оправки, то правильно работать именно с вылетом инструмента, чтобы рабочая система координат оставалась неизменной, кроме того за счет корректоров длины инструмента можно по факту подстроить разные инструменты между собой, чтобы не было ступенек по высоте, если эти инструменты "перекрывают" одну область обработки. А эта "подпрограмма" нужна для автоматизации процесса измерения длины инструмента.....Ну еще как вариант, если пользоваться вылетами инструмента, то можно 1 раз выяснить значение по Z для плоскости стола станка и в дальнейшем это значение просто вписывать в нужную рабочую систему координат, если у нас 0 по Z для управляющей программы задан от поверхности стола станка......Возможно на мой вопрос уже есть готовое решение, но я не в курсе.....Просьба к знающим людям, помочь мне с решением этой задачи.....

Re: FAQ по Gcode, примеры

Добавлено: 26 сен 2021, 07:51
steals_y2k
g10 l11 p[номер инструмента] z[#текущая высота в системе координат]

Re: FAQ по Gcode, примеры

Добавлено: 26 сен 2021, 18:18
antoxa-kylibin
Эта команда записывает значение по Z в таблицу инструмента? А как сделать чтобы система считала текущий инструмент и записала для этого инструмента результат?

Re: FAQ по Gcode, примеры

Добавлено: 26 сен 2021, 22:40
ex71
так ты же сам пишешь M6 Tx
antoxa-kylibin писал(а): то правильно работать именно с вылетом инструмента, чтобы рабочая система координат оставалась неизменной
так все нормальные операторы так делают )

Re: FAQ по Gcode, примеры

Добавлено: 26 сен 2021, 23:53
xenon-alien
antoxa-kylibin писал(а): А как сделать чтобы система считала текущий инструмент и записала для этого инструмента результат?
G43 M6 Tx?

Re: FAQ по Gcode, примеры

Добавлено: 27 сен 2021, 10:12
steals_y2k
считывание g43 hx, если речь о высоте.
есть же справочник😏

Re: FAQ по Gcode, примеры

Добавлено: 27 сен 2021, 11:07
rry
ex71 писал(а): 26 сен 2021, 22:40 так ты же сам пишешь M6 Tx
antoxa-kylibin писал(а): то правильно работать именно с вылетом инструмента, чтобы рабочая система координат оставалась неизменной
так все нормальные операторы так делают )
расскажите, почему я не нормальный оператор? Почему не нормально смещать систему координат по Z на длину инструмента и на конце инструмента у меня всегда 0?

после каждой смены инструмента у меня по датчику происходит замер длины нового инструмента и смещение Z0 на самый конец инструмента.
получается всё точно без ступенек, единственный дополнительный шаг найти смещение между нулём заготовки и высотой датчика, но это уже на автомате делаю

Re: FAQ по Gcode, примеры

Добавлено: 27 сен 2021, 19:05
ex71
rry писал(а): Почему не нормально смещать систему координат по Z на длину инструмента и на конце инструмента у меня всегда 0?
представьте себе ситуацию, что кроме фрезерного станка существуют еще например токарный. Где смещение задается в двух координатах X (диаметр) и Z (ось). Тогда ответ на ваш вопрос сам к вам придет. У вас диаметр фрезы учитывается только в коде, но задав к примеру корректор диаметра фрезы можно компенсировать отжим или износ/переточку фрезы.
В собственном станке можно вообще что угодно делать. А в целом мире есть "основы" разработанные не просто так, а для универсальности.
Ну в целом результат тот же, просто удобнее когда нули на базовой плоскости. А у вас получается не "0 на конце" а режущая кромка на нуле. Просто вы подгоняете инструмент в базовую плоскость и меняете коррекцию высоты шпинделя/стола. Ступенек и не будет, если датчик длины отрабатывает точно с одинаковой погрешностью.
rry писал(а): но это уже на автомате делаю
ну естественно - это считается автоматически, а значение коррекции хранится в ЧПУ или задается в коде.

Re: FAQ по Gcode, примеры

Добавлено: 28 сен 2021, 01:00
antoxa-kylibin
steals_y2k писал(а): 27 сен 2021, 10:12 считывание g43 hx, если речь о высоте.
есть же справочник😏
Я наверное не совсем правильно мысль озвучил. Хотел сказать, какой командой происходит запись текущего значения Z в корректор длины инструмента? Про G43 Hx в курсе, но все равно спасибо за ответ. Тут скорее всего G10 L11 надо изучать....

Re: FAQ по Gcode, примеры

Добавлено: 28 сен 2021, 08:15
steals_y2k
ну да, g10 l10 и g10 l11, вторая точно.
надо г10 изучать ;)

Re: FAQ по Gcode, примеры

Добавлено: 15 сен 2022, 10:11
kurtkobat
Понимает ли мач3 команду goto?

Re: FAQ по Gcode, примеры

Добавлено: 15 сен 2022, 11:29
kfmut
kurtkobat писал(а): Понимает ли мач3 команду goto?
Там вроде есть вызовы подпрограммы с нужной метки по M98 и возврат в основную программу на нужную метку по M99, картинки правда с доков на 4-ый

Re: FAQ по Gcode, примеры

Добавлено: 15 сен 2022, 22:58
vitzin
goto,не как не связанно с подпрограммой,это старт программы
с нужного места,скажем со строки такой то,
и да,Mach 3 понимает,с какой строки ему начинать работу, но goto там
нигде не найдёшь, это не Heidenhein и консортен.

Re: FAQ по Gcode, примеры

Добавлено: 03 фев 2023, 21:57
egorjiv1
Подскажите пожалуйста будет работать следующий код или нет
G53 G90 G92 X10 Y10 Z10 A180

Re: FAQ по Gcode, примеры

Добавлено: 03 фев 2023, 22:31
lkbyysq
egorjiv1 писал(а): 03 фев 2023, 21:57 Подскажите пожалуйста будет работать следующий код или нет
G53 G90 G92 X10 Y10 Z10 A180
По идее ошибку фиксировать не за что. Значит работать будет.
А что Вы хотите-то от этой комбинации команд?

Re: FAQ по Gcode, примеры

Добавлено: 26 фев 2023, 23:42
egorjiv1
Хотел избавиться от софт пределов по оси А для ddcs v3.1, так как они не могут превышать диапазон -99999; 99999, как Вы понимаете для поворотной оси это капля в море. Проверил этот код, но результата не было, но проблема решилась проще простого, просто лимит по минимуму и максимуму устанавливаются в ноль и лимиты становятся бесконечными, как я понимаю в пределах допустимой разрядности контроллера ddcs