Оптимизация холостых ходов

Почитайте чем отличаются M3 и M4 при работе лазера. Да и что такое лазерный режим.
И где же (про М3 и М4) ? В настройках grbl есть команда $32 = 0 (Laser-mode enable, boolean). Если включен - то 1. Прекрасно отрабатывается и в УП. Пользуюсь.
Ваши сообщения автоматически объединены:

Потому как она оптимизирует ещё и команды G-кода.
А это очень хорошо, приводит к стандартному порядку.
 
  • Последнее редактирование:
Последнее редактирование:
И где же (про М3 и М4) ?
Посмотрите ещё раз предыдущее сообщение. Я там ссылку добавил.

А это очень хорошо, приводит к стандартному порядку.
Вот считаю полностью наоборот. Ибо привык к другому стандарту. Где в каждой строке движения есть команды G0 или G1.
 
То, что не в каждой строке прописываются команды G0 и G1 это не стандарт, а то что называется "допускается опускать если значение не меняется". А я писал о порядке команд в строке, т.е. G X Y Z F S .

Спасибо что добавили ссылку, ознакомлюсь.
 
Ну да. Но писать, скажем, G F Y не камильфо.
И как я понял, при работе с лазером
команды M4 и $32 =1 практически идентичны если нет полной остановки?
 
  • Последнее редактирование:
Последнее редактирование:
И как я понял, при работе с лазером команды M4 и $32 =1 практически идентичны если нет полной остановки?
Нет.
$32 =1 - это включение режима. (не должно быть в УП)
M4 - это именно команда включения лазера. (должна быть в УП)
Т.е. если очень надо, можно подъехать к какой-то точке медленно, используя G1 и только потом включить лазер.
 
$32 =1 - это включение режима. (не должно быть в УП)
И тем не менее она работает и не пережигает линии на резких поворотах. Кроме того позволяет рисовать линии с разной интенсивностью при изменении мощности.
А команда M4, как я понял из описания, поддерживает количество тепла в каждой точке когда изменяется скорость движения и в основном предназначена для резки.
 
  • Последнее редактирование:
Последнее редактирование:
И тем не менее она работает и не пережигает линии на резких поворотах.
Ещё раз, $32 =1 - это команда конфигурации. Может быть подана один раз из терминала за всё время существования станка.

А команда M4, как я понял из описания, поддерживает количество тепла в каждой точке когда изменяется скорость движения и в основном предназначена для резки.
Команда M4 - включает лазер в динамическом режиме. И может подаваться хоть для каждой траектории отдельно, в паре с M5 естественно .
Динамический режим управляет мощностью лазера в зависимости от фактической скорости при разгонах и торможениях.
И предназначен в основном для гравировки. Т.к. именно занижает мощность лазера при маленькой скорости.
Для резки используется команда М3. При этом на лазер сразу идёт сигнал соответствующий мощности указаной в команде S.
И то там есть нюансы в зависимости от используемой аппаратуры.
 
Ладно. Вспомним школьный курс физики. Связь между количеством теплпла и энергией однозначная. Только одна измеряется в калориях, а другая - в джоулях. Попробуем в энергии и обозначим её как Q, мощность как P, время как T, скорость как V, путь как S.
Тогда Q=P*T ; T=S/V Вместе Q=P*S/V
Стало быть этот режим меняет мощность так, чтобы при разной скорости энергия на отрезке S была одинаковая. Не так ли?
Команду $32 =1 и обратно $32 =0 можно подавать столько раз, сколько выдержит флэш память микропроцессора. А это будет дольше, чем развалится железо стокового станка. Микросхемами фирмы Atmel я занимался много лет, в том числе Mega128, которая стоит в моём контроллере станка.
И особенность этой команды в том, что она не тормозит движение при изменении мощности, как это происходит при фрезеровке. И может подаваться всего 1 раз в начале УП. Если в следующий раз нужно будет фрезеровать, то можно подать эту команду $32 = 0 или из УП или через терминал, кому как нравится.
 
  • Последнее редактирование:
Последнее редактирование:
Команду $32 =1 и обратно $32 =0
Не придумывайте ерунды. $$ не команды, а параметры станка. Параметр $32 переключает режим лазер-шпиндель. Подробности в справочнике, а вам предупреждение.
 
Команду $32 =1 и обратно $32 =0 можно подавать столько раз, сколько выдержит флэш память микропроцессора.
Этот параметр хранится не во флэше, а в EEPROM, а там ресурса в 100000 перезаписей хватит не только вам, а и правнукам.
 
Команду $32 =1 и обратно $32 =0 можно подавать столько раз, сколько выдержит флэш память микропроцессора.
Grbl — это высокопроизводительная прошивка с открытым исходным кодом для управления движением станков с ЧПУ. Он интерпретирует команды G-кода для точного управления перемещениями осей станка с ЧПУ. Для предварительной настройки GRBL используются его системные параметры $, которые устанавливаются перед началом работы с G -кодом. М3 или М4 (команды G-кода в управляющей программе) в режиме лазера включают разные алгоритмы внутри GRBL работы с мощностью лазера, учитывающие его скорость перемещения или нет, которые там прописаны заранее разработчиками, но включаются только соответствующими командами G-кода, если параметр $32 был предварительно (перед работой с G-кодом) выставлен на 1. В данном случае это М3 и М4. У нас есть форумчане, которые имели желание копаться внутри Grbl и знают о нём не по наслышке.
 
а вам предупреждение.
ОК. Не будм заводить рака за камень и обвинять друг друга в невежестве. А вернёмся к оптимизации.
Ответов по существу немного. УП, которую мне переслал ЮрийВ, помогла понять, что я в своей программе недостаточно тщательно анализирую строки с командой G0. Пообещал исправиться.
По поводу программы из поста # 39 ответил только он же и в применении к ППМ и своей горячо любимой GGEasy.
Я же предполагал что эта программа пригодится тем, кто занимается не ППМ, а сувенирами типа магнитиков на холодильник, где не нужна точность, а должна быть приличная картинка с минимальными затратами на изготовление, особенно если этих сувениров не один. Она даёт очень приличное сокращение времени изготовления, до 2 и более раз. Но увы...
 
В архиве прикрепляю сам файл УП до работы с вашей программой.
Как и обещал в посте # 74 доработал программу так, чтобы она нормально общалась с УП, переданной Вами.
Всё, вроде, получилось неплохо. Даже пожелания Candle подвигать ось Z чтобы показать трассы выполнил.
Но возник один вопрос и одно обстоятельство.
Вопрос такой - а нельзя ли использовать другой сендер кроме Candle? Напрмер LaserGrbl или bCNC, которым не нужно трогать ось Z чтобы показывать процесс выполнения УП?
А обстоятельство такое. Скорость перемещения на рабочем ходу (подача) у Вас испольуется один раз на всю УП в первой команде рабочего хода. И всё ОК. Но при моей оптимитизации порядок вывода трасс изменяется. И задание подачи оказывается не в первой команде, а гораздо дальше. В аттачменте прведён файл, который показывет этот порядок относительно Вашего. В девятой трасе.
Запускаю станок. При запуске у него стартовое значение подачи F=0. Станок доходит до начала первой трассы и встаёт намертво с выключенным лазером. Подача то ноль. Так что если кто собирается пользоваться этой программой - учтите это обстоятельство е перенесите установку подачи в заголовок УП, как это сделано в УП платы EP=32.nc в посте # 26.
 

Вложения

  • _L-D0.05MM_t.zip
    11.3 KB · Просмотры: 1
  • optim_laser_v3.zip
    450.3 KB · Просмотры: 2
Но возник один вопрос и одно обстоятельство.
Вопрос такой - а нельзя ли использовать другой сендер кроме Candle? Например LaserGrbl или bCNC, которым не нужно трогать ось Z чтобы показывать процесс выполнения УП?
А обстоятельство такое. Скорость перемещения на рабочем ходу (подача) у Вас используется один раз на всю УП в первой команде рабочего хода. И всё ОК. Но при моей оптимизации порядок вывода трасс изменяется. И задание подачи оказывается не в первой команде, а гораздо дальше. В аттачменте приведён файл, который показывает этот порядок относительно Вашего. В девятой трасе.
Вы же выше согласились, что для УП от GGEasy оптимизация не нужна от слова совсем, акромя обрезки контура с мостами, где ваша программа и так работает?
Ставим точку и все дела. :)

То есть, кто пользуется GGEasy, уже поняли, что им оптимизировать её G-код, кроме одного исключения (обрезка контура с мостами), не нужно, так как GGEasy об этом уже позаботилась.

А то получается, что не вы программу свою должны подстроить под пользователей, а пользователи вашей программы должны ещё под вас и подстраиваться - менять Candle на что-то другое. Жил-поживал пользователь, а тут вы приходите и говорите: "Дайте, пожалуйста, попить, а то так есть хочется, что переночевать негде."

А так у меня открылся один из ваших архивов:

_L-D0.5MM_t_txt.jpg
Что в принципе и верно. Зачем вам допиливать вашу программу для GGEasy, тратить время, если для обрезки с мостами она и так работает, а для других G-кодов от GGEasy её применять и не надо?
 
Сверху Снизу