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

VikNik

МЕСТНЫЙ
ПРОВЕРЕННЫЙ
Регистрация
27.11.2021
Сообщения
36
Реакции
59
Баллы
38
Город
Кировск
Область
Ленинградская
  • Причина: Замена файлов на обновлённые
Причина: Замена файлов на обновлённые
Добрый день всем.
На просторах этого форума периодически появляются вопросы об оптимизации управляющих программ (УП) и, в частности, о сокращении длин холостых ходов. С этой проблемой, когда головка станка мечется из конца в конец заготовки, сталкиваются практически все.
В большинсве случаев такие УП генерируются из векторных файлов.
Некоторые "монстры" типа Aspire в режиме <быстрая гравировка> имеют какую-никакую оптимизацию и они стараются перенести объекты в УП с учётом сокращения длин холостых ходов, но это не всегда срабатывает. А более "лёгкие" и простые в освоении программы, типа CarbideCreate или GCodeConstructor переносят объекты в УП в том порядке, в котором они расположены в исходном векторном файле.
Я попытался для себя решить эту проблему и сваял пограммку для оптимизации холостых ходов. Владею станком CNC3018MAX с прошивкой 1.1f. Все решения заточены по него. А поскольку проблема не только моя - решил поделиться с сообществом.
Приложены сама программа и её краткое описание. Вопросы и пожелания принимаю. Радикальной переработки программы не обещаю.
 

Вложения

  • idl_optim.pdf
    236.7 KB · Просмотры: 6
  • idl_optim2.zip
    450.4 KB · Просмотры: 3
  • Последнее редактирование:
Последнее редактирование:
Вопросы и пожелания принимаю.
В программу не удалось встроить прогресс_бар, поэтому приходится немногопоскучать.
Размер файла и текущая позиция указателя в файле позволит определить процент выполнения.

ЗЫ.
Попробовал софтину - не получилось.
Сперва зарядил УП в мильён строк - фигвам
Bilderman 2025.01.24 23-10-31.png
затем в 0.5 мильёна, выдало аналогичное.
Ну ОК, дофига, так дофига...
Засунул файл в 24 килострок, насчитало 500 трасс, позволило задать обороты и прочие параметры, говорит "готово", результат вот -
G90G21
G00Z5
M3S5000
X0Y0

G00Z5
X0Y0
M5
M30

Замену G0 на G00 и G1 на G01 выполнил, как указано в хэлпе.
Оптимизировало, конечно, оверкардинально :)
 
Размер файла и текущая позиция указателя в файле позволит определить процент выполнения.

ЗЫ.
Попробовал софтину - не получилось.
Сперва зарядил УП в мильён строк - фигвам
Bilderman 2025.01.24 23-10-31.png
затем в 0.5 мильёна, выдало аналогичное.
Ну ОК, дофига, так дофига...
Засунул файл в 24 килострок, насчитало 500 трасс, позволило задать обороты и прочие параметры, говорит "готово", результат вот -
G90G21
G00Z5
M3S5000
X0Y0

G00Z5
X0Y0
M5
M30

Замену G0 на G00 и G1 на G01 выполнил, как указано в хэлпе.
Оптимизировало, конечно, оверкардинально :)
Уважаемый Олег.
Если можете - пршлите в личку ваш файлик для анализа. Вполне возможно, что в Вашем файле есть ещё какие то команды, которые не нужны для сортировки, но не отбрасываются при вводе.
Процент выполнения определить - не проблема. Проблема в выводе этой информации на монитор.
 
Проблема в выводе этой информации на монитор.
Ну, вы же выдаёте пользователю диалоговые окна для ввода параметров, что мешает показать окно с прогрессбаром?
Как по мне, удобнее, что бы программа имела одно общее окно, где можно выбрать файл, указать какие-то параметры для работы и в нём же видеть ход или какие-то статусы выполнения.
 
Спасибо автору что напомнил.
Тоже "напрягали" холостые проходы на лазере. Сделал макрос для CorelDRAW. С помощью чата GPT.
Проверил вроде работает. Все кривые должны быть разъеденены и разгруппированы. Выделить нужные и запустить макрос.
Вот до:
1737807785516.png
Вот после:
1737807821769.png

Макрос во вложении.
 

Вложения

  • макрос.txt
    2.8 KB · Просмотры: 3
По просьбе автора обновлены файлы в первом сообщении.
 
Какой максимальный размер файла? Попробовал на 8,39 Мб, сказала, что большой
 
Какой максимальный размер файла? Попробовал на 8,39 Мб, сказала, что большой
Программа считает не размер файла, а число строк, содержащих команды перемещения по осям X и Y. Остальные строки она игнорирует. Таких строк должно быть меньше 50000.
 
Ограничения по количеству строк искусственное. Просто прогу я писал для себя. Гравировка для меня хобби. Размеры поделок для знакомых и друзей редко превышают формат А5 и не доходят до А4. Если Вам нужно - моментом сделаю версию с необходимым размером буфера и перешлю в личку.
 
сделаю версию с необходимым размером буфера и перешлю в личку
Зачем же в личку, сделайте доступным для всех, не у всех же размер формата А5 у коих и поболее будет!
 
Зачем же в личку, сделайте доступным для всех, не у всех же размер формата А5 у коих и поболее будет!
О`кей.
Держите версию на 200000 рабочих строк. Ожидаемому времени сортировки пока не верьте, оно почти првильно расчитывается под мой процессор с частотой 3.6 ГГц. Через некоторое время сделаю под любой.
Для чего тогда выкладывали? :cautious:
Для выяснения интереса и доработки с целью распространения.
 

Вложения

  • idl_optim3.zip
    450.4 KB · Просмотры: 4
А вот в этом варианте программа определяет тактовую частоту Вашего процессора и с погрешностью примерно 10% вычисляет время, необходимое для сортировки. Признком того, что программа трудится, а не выпала, является её иконка в трэе с правой стороны -синенький кружочек с буквой А.
 

Вложения

  • idl_optim4.zip
    450.6 KB · Просмотры: 1
Сверху Снизу
Обнаружен блокировщик рекламы AdBlock

МЫ ДОГАДЫВАЕМСЯ, ЧТО РЕКЛАМА ВАС РАЗДРАЖАЕТ!

Конечно, Ваше программное обеспечение для блокировки рекламы отлично справляется с блокировкой рекламы на нашем сайте, но оно также блокирует полезные функции. Мы стараемся для Вас и не обязываем Вас донатить и скидывать денег на наши кошельки, чтобы пользоваться форумом, но реклама это единственное, что позволяет поддерживать проект и развивать его.

Спасибо за Ваше понимание!

Я отключил свой AdBlock    Нет, я не буду ничего отключать