Требуется помощь по некоторым G-кодам
-
- Новичок
- Сообщения: 3
- Зарегистрирован: 07 мар 2019, 15:41
- Репутация: 0
- Настоящее имя: Jegor
- Контактная информация:
Требуется помощь по некоторым G-кодам
Здравствуйте, не знаю, как у вас всё устроено тут, но мне требуется помощь по G кодам. Мне 17 лет, учусь на оператора фрезерного станка с ЧПУ, и мне надо знать, как работают следующие коды:
G41, G28, G90, G91, M0, M1, у учителя спрашивать об этом бесполезно, он не видит во мне потенциала и помогать не хочет. Что именно мне надо разобрать в этих кодах:
Как работает код G41, для чего его пишут и что будет, если не отменить его, то есть после каждого прохода необходимо отключать компенсацию и запускать следующую, а для чего?
Почему в программируемом нуле (G28) пишется код G91, а не G90? Пример: G28 G91 X10. Y25.
В каких случаях надо работать с абсолютным позиционированием (G90), а в каких случаях с относительным позиционированием (G91)? Ведь в основном мы используем код G90 при написании программы, а не G91.
В каких случаях используют M0, а в каких случаях M1? На сколько мне известно, M0 пишется в конце программы, когда нам надо будет заменить деталь либо ее перевернуть, но таким же макаром можно использовать код M1, но M1 пишется после каждой операции для замера детали или проверки программы.
На этом все, заранее благодарю за ответ.
G41, G28, G90, G91, M0, M1, у учителя спрашивать об этом бесполезно, он не видит во мне потенциала и помогать не хочет. Что именно мне надо разобрать в этих кодах:
Как работает код G41, для чего его пишут и что будет, если не отменить его, то есть после каждого прохода необходимо отключать компенсацию и запускать следующую, а для чего?
Почему в программируемом нуле (G28) пишется код G91, а не G90? Пример: G28 G91 X10. Y25.
В каких случаях надо работать с абсолютным позиционированием (G90), а в каких случаях с относительным позиционированием (G91)? Ведь в основном мы используем код G90 при написании программы, а не G91.
В каких случаях используют M0, а в каких случаях M1? На сколько мне известно, M0 пишется в конце программы, когда нам надо будет заменить деталь либо ее перевернуть, но таким же макаром можно использовать код M1, но M1 пишется после каждой операции для замера детали или проверки программы.
На этом все, заранее благодарю за ответ.
- cncmybox
- Мастер
- Сообщения: 334
- Зарегистрирован: 14 янв 2015, 21:15
- Репутация: -19
- Настоящее имя: Алексей
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
http://planetacam.ru/college/learn/16-1/
там и про остальное почитать можно. вторая ссылка в поиске https://www.google.com/search?q=g-коды
отсюда там и про остальное почитать можно. вторая ссылка в поиске https://www.google.com/search?q=g-коды
Бди! (с) Козьма Прутков
-
- Новичок
- Сообщения: 3
- Зарегистрирован: 07 мар 2019, 15:41
- Репутация: 0
- Настоящее имя: Jegor
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
cncmybox, я уже сидел на этом сайте, ничего из вышеперечисленного я не нашел, по поводу G28 G91 не понятно, каким образом инструмент может столкнуться с деталью или частями станка? Опять же, недосказанная информация. Ничего из того, что я хочу знать - там не написано.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
А тоже вопрос задам! Напомню, я неуч, G-коды знаю только понаслышке.
Станок отработал одну программу, надо запустить следующую на этой же заготовке с этой же фрезой. В шапке программ имеется смена инструмента (кадр N30) и компенсация (кадр N50): Мне надо вторую программу запустить с того положения фрезы, где она остановилась, без измерения длины.
Что для этого нужно удалить? Если удаляю оба этих кадра, LinuxCNC ругается, что программа вылетает за пределы по Z. Оставить G43? Но ведь компенсация уже сделана в первой программе. Боюсь фрезу сломать...
Станок отработал одну программу, надо запустить следующую на этой же заготовке с этой же фрезой. В шапке программ имеется смена инструмента (кадр N30) и компенсация (кадр N50): Мне надо вторую программу запустить с того положения фрезы, где она остановилась, без измерения длины.
Что для этого нужно удалить? Если удаляю оба этих кадра, LinuxCNC ругается, что программа вылетает за пределы по Z. Оставить G43? Но ведь компенсация уже сделана в первой программе. Боюсь фрезу сломать...
- Predator
- Мастер
- Сообщения: 9583
- Зарегистрирован: 18 июл 2013, 18:26
- Репутация: 2531
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Так и запускай дальше, зачем удалять G43, это компенсация на вылет инструмента? Только не забывай указывать "H2", иначе компенсация не будет работать.
Кстати, начальные координаты X, Y во второй программе, совпадают с последними координатами в первой?
Кстати, начальные координаты X, Y во второй программе, совпадают с последними координатами в первой?
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
H2 - это некая внутренняя переменная, содержащая результат замера длины фрезы? Я ранее не сказал - пользуюсь плагином для LinuxCNC для автоизмерения (T2 M6).Predator писал(а):Только не забывай указывать "H2", иначе компенсация не будет работать.
Неа, однозначно не совпадают. Кроме этого я временно могу отогнать портал в сторону, чтобы не мешал, после чего нужно продолжить работу.Predator писал(а):Кстати, начальные координаты X, Y во второй программе, совпадают с последними координатами в первой?
В общем задача-то в том, чтобы многоэтапную обработку выполнить только с одним измерением длины фрезы, ибо повторяемость показаний датчика оставляет желать лучшего.
- kalinvick
- Мастер
- Сообщения: 1105
- Зарегистрирован: 30 янв 2015, 15:38
- Репутация: 1134
- Откуда: Москва
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Может не совсем по теме, но все таки...Sovereign писал(а):В каких случаях надо работать с абсолютным позиционированием (G90), а в каких случаях с относительным позиционированием (G91)? Ведь в основном мы используем код G90 при написании программы, а не G91.
Когда я впервые столкнулся со станком ЧПУ, это был 2000 год. И машинка, которая у меня тогда была - это был лазер, который управлялся через LPT порт от компьютера DELL Intel 8086. Про память компьютера и диск даже сказать нечего
Так вот тогда в программе принципиально использовался код G91.
Потому что, для слабой машины вычислить каждый приращение координаты проще и быстрее, чем считать абсолютную координату.
Точность ниже, скорость вычисления выше.
Если ставили в программе G90, то управляющий комп достаточно быстро зависал и станок вставал.
Сейчас, в связи с тем, что вычислительные мощности компьютеров и стоек, настолько выросли, что с этой точки зрения особой разницы нет, в как считать координаты - относительно или абсолютно.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Ага, на пару машинных инструкций, на фоне остальных десятков-сотен тысяч это конечно сильно упрощает расчёты.kalinvick писал(а):Потому что, для слабой машины вычислить каждый приращение координаты проще и быстрее, чем считать абсолютную координату.
Это что-то из области шаманства и прочих духов. Даже при включении G91 ЧПУ всё равно считает (и показывает) абсолютные координаты осей, хотя бы для того, чтоб было где оказаться после возврата в G90.
Скорее просто баг в софте, который проявлялся при активной G90.kalinvick писал(а):Если ставили в программе G90, то управляющий комп достаточно быстро зависал и станок вставал.
Относительные координаты (G91) просто удобны при написании УП "руками", типа "следующие 10мм проточить глубже на 2мм".
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 8408
- Зарегистрирован: 02 окт 2012, 07:37
- Репутация: 3628
- Откуда: Красногорск
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Скорее всего потому , что в данном случае понятнее вести отсчет по инкрементальным координатамSovereign писал(а):Почему в программируемом нуле (G28) пишется код G91, а не G90? Пример: G28 G91 X10. Y25
То есть задается смещение от хоум позиции на конкретное расстояние
Этот код применяют для установки осей станка в желаемое положение операратора, для смены инструмента, для подхода стола к оператору и подобных вещей
- kalinvick
- Мастер
- Сообщения: 1105
- Зарегистрирован: 30 янв 2015, 15:38
- Репутация: 1134
- Откуда: Москва
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Спорить с программистом не буду.UAVpilot писал(а):Ага, на пару машинных инструкций, на фоне остальных десятков-сотен тысяч это конечно сильно упрощает расчёты
Но скажу так - чпу не было.
Стойки не было.
Был комп х86.
Проги тоже были не ахти. Самописные однако.
Теоритезировать было не нужно, надо было работать и получать денешку.
Техника была не самая лучшая.
Несовпадение начала и конца участка резки контура герба - орла, размером в метр на метр составляло примерно 15-20 мм.
Работали, однако и зарабатывали.
Без знания машинных инструкций.
Г-коды тогда увидел первый раз.
- Мастерю
- Мастер
- Сообщения: 520
- Зарегистрирован: 17 фев 2019, 13:45
- Репутация: 34
- Настоящее имя: Сергей
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Чем такой "ЧПУ", не лучше бы лобзиком пилить?kalinvick писал(а):Несовпадение начала и конца участка резки контура герба - орла, размером в метр на метр составляло примерно 15-20 мм.
- Мастерю
- Мастер
- Сообщения: 520
- Зарегистрирован: 17 фев 2019, 13:45
- Репутация: 34
- Настоящее имя: Сергей
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Хм... Вы бы хоть почитали автора.kalinvick писал(а):это был 2000 год
Пацана тогда еще не свете не было, что же вы ему рассказываете про "прошлый век"? Давайте помолчим и дадим слово профессиональным программистам. А так, чем мы отличаемся отSovereign писал(а):Мне 17 лет
???Sovereign писал(а):у учителя спрашивать об этом бесполезно, он не видит во мне потенциала и помогать не хочет
Вот так молодым на корню отбиваем все желание работать умом и ручками. Хватит, уже наплодили всяких манагеров!
А Егору удачи!
- Мастерю
- Мастер
- Сообщения: 520
- Зарегистрирован: 17 фев 2019, 13:45
- Репутация: 34
- Настоящее имя: Сергей
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Если вам требуется выполнить простую операцию, например, вырезать прямоугольную деталь со сторонами, скажем, 30х40 мм, то в таком случае, гораздо проще задать команды в относительных координатах, не считая абсолютных значений (их ПО ЧПУ рассчитает самостоятельно). А если вы выполняете какие-то операции по заранее заданным (известных вам) точкам, то, естественно, проще задавать абсолютные координаты этих точек. Опять же, при необходимости, станок сам будет рассчитывать совместный ход осей.Sovereign писал(а):В каких случаях надо работать с абсолютным позиционированием (G90), а в каких случаях с относительным позиционированием (G91)? Ведь в основном мы используем код G90 при написании программы, а не G91.
Учитесь пользоваться нормативными документами и прочей умной литературой. Учителя тоже люди и им иногда свойственно ошибаться. Я тоже когда-то учился и у меня тоже были учителя. Бывали случаи, что в ответ на свой вопрос я слышал полную ахинею! Ну, бывает...Sovereign писал(а):В каких случаях используют M0, а в каких случаях M1? На сколько мне известно, M0 пишется в конце программы, когда нам надо будет заменить деталь либо ее перевернуть, но таким же макаром можно использовать код M1, но M1 пишется после каждой операции для замера детали или проверки программы.
Последний раз редактировалось Мастерю 09 мар 2019, 16:49, всего редактировалось 2 раза.
- Predator
- Мастер
- Сообщения: 9583
- Зарегистрирован: 18 июл 2013, 18:26
- Репутация: 2531
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Н - Это компенсация на вылет инструмента (цифра это номер инструмента), она подхватывает вылет инструмента из таблицы offset.Argon-11 писал(а):H2 - это некая внутренняя переменная, содержащая результат замера длины фрезы
- Predator
- Мастер
- Сообщения: 9583
- Зарегистрирован: 18 июл 2013, 18:26
- Репутация: 2531
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Пока ты снова не померяешь инструмент с таким же номером, его длина хранится в таблице offset и не меняется. Правда не знаю, как там в linuxcnc, после выключения компа, сохраняются данные или нет.Argon-11 писал(а):задача-то в том, чтобы многоэтапную обработку выполнить только с одним измерением длины фрезы,
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Теперь понял логику, спасибо!
-
- Новичок
- Сообщения: 3
- Зарегистрирован: 07 мар 2019, 15:41
- Репутация: 0
- Настоящее имя: Jegor
- Контактная информация:
Re: Требуется помощь по некоторым G-кодам
Всем спасибо за ответ, кое-что я уяснил.