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

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

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

Сообщение solo »

спасибо
но насколько я НЕ понимаю все что написано выше то это пользовательский компонент который может запускать по ОЧЕРЕДИ не одновременно Ж коды (которые расположены в файлах lathe_pawn.ngc и 2.ngc , а мне бы хотелось получить независимое исполнение 2-х Ж кодов
я хотел бы управлять двумя манипуляторами ( загрузчиками заготовок ) которые могли работать НЕЗАВИСИМО друг от друга и начинали работу по внешнему датчику наличия заготовки , то есть если есть заготовка , датчик сработал загрузчик (XYZ) переместил заготовку в печку ,
второй загрузчик (ABC) , заготовка вышла с печки , второй датчик сработал , второй манипулятор переместил заготовку на дальнейшую обработку
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

Одновременно нельзя - интерпретатор/планировщик один.
Да и одновременно не всегда будет работать - не всегда есть возможность переключится в режим "исполнения программы".

Манипуляторами надо управлять с помощью ПЛК, "железным" или встроенным в LinuxCNC (HAL, classicladder).
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

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

Сообщение solo »

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

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

Сообщение Serg »

solo писал(а):жалко я так надеялся слепить манипуляторы на шаговиках , теперь придется городить манипуляторы на пневматике с управлением от ардуинки
Что мешает слепить манипуляторы на шаговиках с управлением от ардуинки?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

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

Сообщение solo »

отсутствие знаний и умения писать скетчи для ардуино , я сейчас для программировании ардунок использую
https://flprog.ru/ , для меня эта программа это просто находка , как в свое время было с LinuxCNC (EMC2)
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

solo писал(а):отсутствие знаний и умения писать скетчи для ардуино , я сейчас для программировании ардунок использую
Что-то тут не так с логикой... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

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

Сообщение solo »

ну не знаю
если посмотреть программу ФЛпрог то там скетч составляется при помощи графических логических элементов ( и, или, ..... счетчиков , триггеров, генератор итд и тп) те элементы, что есть в распоряжении не позволяют реализовать работу шагового двигателя с ускорением- замедление , а ШД если крутить без алгоритма ускорения получается медленно
если я составляю скетч для управления пневматикой то там все проще , на выход единичку , и смотри когда сработает нужный вход или ждем определенное время и так далее ( также можно схему нарисовать релейную как в classicladder). то есть в среде ФЛпрог рисуем схему на жесткой логике, запихиваем эту схему в ардуинку и все .
Если бы Вы знали сколько я раз пытался освоить языки программирования , сколько потратил на это времени , но к моему сожалению я понял , что после 40 все новые науки мне даются очень туго , по этому сейчас для себя решил занимать тем где могут быть востребованы знания приобретенные в молодости , что бы не забыть все окончательно :hehehe:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

solo писал(а):если посмотреть программу ФЛпрог то там скетч составляется при помощи графических логических элементов ( и, или, ..... счетчиков , триггеров, генератор итд и тп) те элементы
В HAL всё тоже самое. :)
solo писал(а):Если бы Вы знали сколько я раз пытался освоить языки программирования , сколько потратил на это времени , но к моему сожалению я понял , что после 40 все новые науки мне даются очень туго
Вот сейчас наверно некоторые программисты завидуют.. Они-то программирование знают, а вот HAL им нее даётся... :) А программирование в понимании попроще цифровой схемотехники...

P.S.После 40 жизнь только начинается! Я вон сильно после 40 пошёл за очередным ВО. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

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

Сообщение solo »

UAVpilot писал(а): Я вон сильно после 40 пошёл за очередным ВО. :)
завидую белой завистью и снимаю шляпу перед таким стремлением и желанием .Удачи в прогрызании "гранита знаний"
MaksSavchuk
Опытный
Сообщения: 156
Зарегистрирован: 17 май 2019, 09:56
Репутация: 13
Настоящее имя: Максим Савчук
Контактная информация:

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

Сообщение MaksSavchuk »

UAVpilot писал(а):Вот сейчас наверно некоторые программисты завидуют
Таки да, всегда бежал от лэддеров как черт от ладана, только правоверный ST на PLC юзал ;)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

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

Сообщение nkp »

пример повторения жкода в цикле ,
пока не сработает пин
в hal:

Код: Выделить всё

net step1  motion.digital-in-00
loadusr sim_pin  step1
test_loop.ngc
(233 байт) 358 скачиваний
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

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

Сообщение a321 »

Вопрос про компесацию диаметра инструмента. Есть коды G41, 41.1, 42 & 42.1. отмена кодом 40. Чтобы оно работало надо явно задать использование инструмента (и чтобы он был в таблице инструментов).
задать, например, G42.1 D0.3 для инструмента Т100 диаметром 0.1 и получаем ошибку -

length of cutter compensation entry move is not greater than the tool radius (вроде как это длина входного движения компенсации режущего инструмента не превышает радиуса инструмента). В моей вселенной 0.3 больше, чем 0.1, никаких углов нет вообще, почему не работает?
Вложения
Снимок экрана от 2020-06-05 17-48-46.png (5278 просмотров) <a class='original' href='./download/file.php?id=182233&sid=1610309778ab40c136ba06ef3d671e07&mode=view' target=_blank>Загрузить оригинал (81.84 КБ)</a>
foundsecret
Мастер
Сообщения: 220
Зарегистрирован: 18 мар 2015, 01:49
Репутация: 14
Настоящее имя: Артем
Контактная информация:

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

Сообщение foundsecret »

Nick писал(а):

G61 и G64

Коды G61 и G64 используются для переключения режимов обработки углов.
G61 - exact path mode означает что EMC2 будет стараться следовать заданной траектории вне зависимости от скорости прохождения <=> будет тормозить вплоть до полной остановки на каждом угле, чтобы станок мог пройти по траектории с заданными ускорениями по осям.
G61.1 - exact stop mode, гарантирует правильность траектории, останавливается на конце каждого сегмента.
G64 P(допуск скругления) Q(допуск упрощения) - мода при которой EMC2 будет стараться поддержать наибольшую скорость для прохождения траектории с заданными допусками на скругление углов и упрощение траектории. Параметр Р задает максимальное расстояние до траектории при скруглении углов. Параметр Q задает допуск при котором два практически параллельных прямолинейных сегмента будут заменяться одним.

Пример Gcode

Код: Выделить всё

%
G61 (exact path mode)
G01 X0 Y0 f3000
G01 X100
G64 P10 (скругление с допуском 10мм)
G01 Y100
G64 P30 (скругление с допуском 30мм)
G01 X0
G01 X0 Y0
%
emc lookahead blending.png
Что интересно, если использовать скругление меньше радиуса инструмента, то это никак не скажется на внешних углах, они останутся острыми, скруглятся только внутренние углы, которые и так будут скруглены радиусом инструмента.
emc lookahead blending tolerance.png


Привет!

А как узнать значение по умолчанию?

Можно ли получить значение по умолчанию в скрипте? Или какой-то командой сбросить на значение по умолчанию для G64 после G61.1
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2857
Откуда: Тюмень
Контактная информация:

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

Сообщение Сергей Саныч »

foundsecret писал(а):А как узнать значение по умолчанию?
По умолчанию - G64 без параметров. То есть прохождение с постоянной скоростью, без ограничений на точность траектории.
G64 - without P means to keep the best speed possible, no matter how far away from the programmed point you end up.
http://www.linuxcnc.org/docs/html/gcode ... #gcode:g64
Чудес не бывает. Бывают фокусы.
foundsecret
Мастер
Сообщения: 220
Зарегистрирован: 18 мар 2015, 01:49
Репутация: 14
Настоящее имя: Артем
Контактная информация:

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

Сообщение foundsecret »

Спасибо!
kfmut
Мастер
Сообщения: 1249
Зарегистрирован: 30 янв 2021, 21:34
Репутация: 147
Настоящее имя: Максим
Откуда: г.Тверь
Контактная информация:

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

Сообщение kfmut »

Уважаемые, а не могли бы черкнуть пару строк за общераспространённое использование позиции G30 в линуксцнц при ручной смене инструмента в фрезерах? Если такое вообще имеется?

Насколько вообще норм использовать G30 как позицию для физической смены инструмента в шпинделе, а G59.3 для измерения этого инструмента? Меня пытаются убедить, что в красе-и-гордости народного станкостроения общей практикой по M6 является просто поднять голову по Z до машинного нуля, а после смены отправить в G59.3 для измерения, и пофиг где сейчас находится шпиндель в плоскости XY. Если нужно что-то большое, то каждый волен поменять свой постпроцессор :D
steals_y2k
Мастер
Сообщения: 938
Зарегистрирован: 29 окт 2017, 14:08
Репутация: 60
Настоящее имя: Makc
Откуда: Ярославль
Контактная информация:

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

Сообщение steals_y2k »

я по г53 смену делаю.
а потом-да, 59.3 и измерение
kfmut
Мастер
Сообщения: 1249
Зарегистрирован: 30 янв 2021, 21:34
Репутация: 147
Настоящее имя: Максим
Откуда: г.Тверь
Контактная информация:

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

Сообщение kfmut »

steals_y2k писал(а): 05 июл 2021, 12:09 я по г53 смену делаю.
а потом-да, 59.3 и измерение
Как я понял в лцнц используется скриптик для M6, в котором каждый может всё что угодно написать, или есть м.б. какие-нить рекомендации в документации на этот счёт? Откуда взялась привязка к позиции G59.3 в скриптах по смене инструмента? Что-то в справке лцнц по g-коду не видно чтобы её как-то выделяли :wik:
steals_y2k
Мастер
Сообщения: 938
Зарегистрирован: 29 окт 2017, 14:08
Репутация: 60
Настоящее имя: Makc
Откуда: Ярославль
Контактная информация:

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

Сообщение steals_y2k »

используется либо скрипт, либо компонент-тут кто во что горазд. документация? какая? зачем?

привязка взялась из тех же машинных координат, как мне помнится. пробовал разные варианты-этот самый удобный показался.
по привязке встречается информация в кусках G10 L1/10/11, да и здесь в вики тоже есть информация вроде.
kfmut
Мастер
Сообщения: 1249
Зарегистрирован: 30 янв 2021, 21:34
Репутация: 147
Настоящее имя: Максим
Откуда: г.Тверь
Контактная информация:

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

Сообщение kfmut »

steals_y2k писал(а): используется либо скрипт, либо компонент-тут кто во что горазд. документация? какая? зачем?
Да мне просто интересно, товарищ, который вышеозначенные концепты задвигает с тем "как должно быть и менять не моги", в линуксцнц чего-нить шарит или просто где-то что-то слышал, я-то сам не шарю, можно на уши навешать почти всё что угодно :thinking:
Ответить

Вернуться в «LinuxCNC»