Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
olbi
Новичок
Сообщения: 5
Зарегистрирован: 11 мар 2018, 11:48
Репутация: 0
Настоящее имя: Leonid
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение olbi »

Здравствуйте! Попытался воспользоваться программой Генерация G-кода, из текста, рисунка, и файлов PLT, DXF (Gen CODE) При нажатии генерация кода-код генерируется (в окне с правой стороны появляются координаты) При нажатии скопировать в буфер ничего не происходит.При попытке перейти стрелкой на другую страницу выходит сообщение - не реализовано пока. ОПЕРАЦИОНКА СЕМЁРКА 64 БИТ. ВОРК ВЕРСИЯ 4. С программой candle v1.1.7 сгенерированный код будет работать?
dovganya
Кандидат
Сообщения: 53
Зарегистрирован: 11 июл 2010, 19:55
Репутация: 1

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение dovganya »

Не много не в тему. Нужен совет, как нарисовать пп. на чпу (именно нарисовать, как на принтере распечатать). Стоит задача с помощью Плоттер и изографа (0.2мм) нарисовать на прозрачной пленке шаблон. Каким Soft-ом лучше воспользоваться именно в создании gcode , в общем кто что посоветует?
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

olbi писал(а):Здравствуйте! Попытался воспользоваться программой Генерация G-кода, из текста, рисунка, и файлов PLT, DXF (Gen CODE) При нажатии генерация кода-код генерируется (в окне с правой стороны появляются координаты) При нажатии скопировать в буфер ничего не происходит.При попытке перейти стрелкой на другую страницу выходит сообщение - не реализовано пока. ОПЕРАЦИОНКА СЕМЁРКА 64 БИТ. ВОРК ВЕРСИЯ 4. С программой candle v1.1.7 сгенерированный код будет работать?
Привет, постараюсь подсказать в ближайшее время, если завтра отпустят из больницы ;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
санчо
Кандидат
Сообщения: 83
Зарегистрирован: 08 авг 2017, 20:28
Репутация: 71
Настоящее имя: алекс
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение санчо »

jurok1402 писал(а):меня интересует программа для станка CNC 3018, чтобы можно было на нём нормально работать с лазером
это смотря какой код ест данная программа
SergK
Новичок
Сообщения: 31
Зарегистрирован: 15 апр 2018, 12:22
Репутация: 2
Настоящее имя: Serg
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение SergK »

Подскажите, что я не настроил. Программа - "Конструктор G-кода версия 3.2.0.12".
Пытаюсь получить G-код для гравировки печатной платы из картинки (формат .BMP).
Перепробовал все пресеты в названиях которых есть "гравировка".
Постоянно получаю G-код, в котором каждая строка (с координатами) повторяется по нескольку раз (вот пример):

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

...
G0 X1.59 Y-0.04 Z5
G1 F50 Z-0.2
X1.59 Y-0.04
X1.59 Y-0.04
X1.59 Y-0.04
X1.6 Y-0.04
X1.6 Y-0.04
X1.6 Y-0.04
X1.6 Y-0.04
X1.6 Y-0.04
X1.6 Y-0.03
X1.61 Y-0.03
X1.61 Y-0.03
X1.61 Y-0.03
X1.61 Y-0.03
X1.61 Y-0.03
X1.61 Y-0.03
X1.61 Y-0.03
X1.62 Y-0.03
...
и так далее.

Да, ещё пробовал пресет (один из первых в меню), на последнем этапе процесс видимо зациклился, после того, как файл результата превысил размер 160МБайт, я нажал кнопку "Остановить". Все кнопки стали не активны, интерфейс перестал реагировать, результирующий файл продолжал расти (ждал долго), помогло только принудительное закрытие программы. При том, что схема всего в несколько выводов от одной микросхемы.
Я не утверждаю, что это повторяемая проблема, возможно случайное стечение факторов. Винда ХР, NET Frame 4.0.
Последний раз редактировалось SergK 15 апр 2018, 13:40, всего редактировалось 1 раз.
SergK
Новичок
Сообщения: 31
Зарегистрирован: 15 апр 2018, 12:22
Репутация: 2
Настоящее имя: Serg
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение SergK »

Шутка да?
Я ведь написал: "... При том, что схема всего в несколько выводов от одной микросхемы. ..."
SergK
Новичок
Сообщения: 31
Зарегистрирован: 15 апр 2018, 12:22
Репутация: 2
Настоящее имя: Serg
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение SergK »

Это не будет выглядеть как юзание по одному месту, это выглядит как замирание. Т.е. фрезеровка идёт рывками.
В принципе, такой код (повторяющиеся строки с координатами) выглядит как обрезка разрядности параметра.
Т.е. если предположить, что программа вычисляла координаты "до тысячной", а при выводе в файл обрезает "до сотки", вот так оно и будет выглядеть.
Но как от этого избавиться, где настроить? Либо что-бы вычисляла сразу с точностью "до соток", либо выводила в файл - "до тысячной"...
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

Сегодня вечером постараюсь всем ответить
В файлах с правил генерации G-кода, у меня есть ошибки в циклах, из-за чего, при некоторых стечениях обстоятельств, цикл уходит в бесконечность. Это постараюсь исправить.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

Есть много разных способов, вот недавно такой попался
https://www.youtube.com/watch?v=FhU73AdThnk
Есть варианты со сканированием поверхности.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение xvovanx »

jurok1402 писал(а):как Вы добиваетесь (и добивались ли вообще), чтобы плата выглядела "как с магазина" после гравировки!? У меня в данном направлении абсолютно ничего не получилось, либо вздыбится текстолит при гравировке, либо фреза уйдёт на пол миллиметра глубже...
Профрезеруйте сначала подкладку (жертвенный стол), а потом на него крепите текстолит. Я сначала руками чуть выгибаю середку, чтоб углами прижался и пузырем не торчал. Поищите поиском темы про изготовление плат, там много обсуждали все нюансы.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

olbi писал(а):Здравствуйте! Попытался воспользоваться программой Генерация G-кода, из текста, рисунка, и файлов PLT, DXF (Gen CODE) При нажатии генерация кода-код генерируется (в окне с правой стороны появляются координаты) При нажатии скопировать в буфер ничего не происходит.При попытке перейти стрелкой на другую страницу выходит сообщение - не реализовано пока. ОПЕРАЦИОНКА СЕМЁРКА 64 БИТ. ВОРК ВЕРСИЯ 4. С программой candle v1.1.7 сгенерированный код будет работать?
Привет! имеется в виду версия 2.0.0.51, скачанная тут: https://github.com/selenur/ToolsGenGkode/releases ???
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

jurok1402 писал(а):Вообще за что тебя в больнице держат- то...
Может вопрос и не по теме но меня интересует программа для станка CNC 3018, чтобы можно было на нём нормально работать с лазером.
Программы которые здесь обсуждались сгодятся для таких целей?!?
максимально чего я добился- выжигание по фанере рисунка 56Х65 мм за 3 часа. Вроде как за такое время я его нарисовать мог выжигателем с 3-мя перекурами.
Пользовался софтом, который идёт с станком по умолчанию.
Да камни неожиданно из почек вышли, в свободное плавание :-)

Основной нюанс состоит в том что используются прошивки для контроллеров, и сами программы, такие, что не позволяют перекрыть на 100% возможные пожелания пользователей, а управляющие программы рассчитаны на работу лишь с конкретной прошивкой, в связи с чем, просто так поменять управляющую программу не всегда возможно.
Например на текущий момент неплохо у многих знакомых зарекомендовала вот эта программа: http://lasergrbl.com работает с прошивкой GRBL 1.1
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

SergK писал(а):Подскажите, что я не настроил. Программа - "Конструктор G-кода версия 3.2.0.12".
Пытаюсь получить G-код для гравировки печатной платы из картинки (формат .BMP).
Перепробовал все пресеты в названиях которых есть "гравировка".
Постоянно получаю G-код, в котором каждая строка (с координатами) повторяется по нескольку раз (вот пример):

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

...
G0 X1.59 Y-0.04 Z5
G1 F50 Z-0.2
X1.59 Y-0.04
X1.59 Y-0.04
X1.59 Y-0.04
...
и так далее.
Получение печатной платы из рисунка конечно не очень хорошая идея, но если делается, то нужно использовать при сохранении платы как рисунок, как можно большее значение DPI, это значительно повышает качество.
После получения векторных данных из рисунка, в модуле 900, выбирается файл правил генерации G-кода (метка 1):
2018-04-15_225053.png (2075 просмотров) <a class='original' href='./download/file.php?id=137173&mode=view' target=_blank>Загрузить оригинал (71 КБ)</a>
Если откроем файл правил, то в выделении (метка 2), мы можем видеть, что будет применяться форматирование значения, и количество символов решетки после точки, означает сколько символов будет после решетки, тебе достаточно поправить например как "#0.####" но это навряд-ли нужно, т.к. большинство станков, уже неспособна нормально позиционироваться с шагом 0.001, как мне кажется где-то ты допустил ошибку в преобразовании рисунка.
Если выложишь рисунок, и значение DPI этого рисунка, я тут опишу как получить G-код.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
SergK
Новичок
Сообщения: 31
Зарегистрирован: 15 апр 2018, 12:22
Репутация: 2
Настоящее имя: Serg
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение SergK »

Спасибо за развёрнутый ответ.
Более или менее стало понятно.
Использовал BMP, размер 378х189 пикселей, 600 DPI, размер платы 16х8 мм.
На 3 этапе (модуль 3), в разделе масштабирование получил "Исходный размер" 347.952х166.968 мм.
Указал "Новый размер" 16х8 мм.
Видимо из-за этого пошли проблемы с разрядностью.
С этим кодом делать уже ничего не нужно, Это первая моя гравировка печатной платы, и я гравировал плату тем, что получил (G-кодом с повторами строк и разрядностью "до сотки").
Результат - не супер круто, но опыт получен. Дорожки 0.3 с промежутком 0.3 (для микросхемы в корпусе TSSOP) получились.
Ждал гравировки правда долго... :)
Из-за повторов строк, гравировка платы размером 16х8 мм продолжалась 1.5 часа.... :)
За прогу спасибо, буду изучать дальше.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

SergK писал(а):Из-за повторов строк, гравировка платы размером 16х8 мм продолжалась 1.5 часа....
Если выложишь рисунок, и расскажешь какой файл правил использовал в модуле 900, я могу подсказать как оптимизировать траекторию.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
SergK
Новичок
Сообщения: 31
Зарегистрирован: 15 апр 2018, 12:22
Репутация: 2
Настоящее имя: Serg
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение SergK »

selenur писал(а):
SergK писал(а):Из-за повторов строк, гравировка платы размером 16х8 мм продолжалась 1.5 часа....
Если выложишь рисунок, и расскажешь какой файл правил использовал в модуле 900, я могу подсказать как оптимизировать траекторию.
Пробовал разные варианты уже более "осознанно".
Выбрал пресет 00004 - контур рисунка с заливкой. На третьем шаге выставил 600 DPI. При создании циклических сдвигов, шаг 0.05, выбрал все 17 траекторий, вариант "+", "Вычислить", пред.просмотр - результат устраивает.
Вот "модуль оптимизации траекторий (301)" - совсем не понял, что делает. Количество точек вроде не меняет. При изменении настроек, "Траекторий 82, точек 99350" в пред.просмотре - не меняется.
Далее модуль 900, выбирал правила 002-PСB Гравировка и 008 - Гравировка. Код правил показался мне идентичным.
Увеличивал количество "#", да появились тысячные, это именно их не хватало в "повторяющихся строках" когда символов "#" было только два.
Итоговый файл содержит 99682 строки, размер файла почти 1.5 МБайт.
Как-то так...
Вложения
126.PNG
126.PNG (1.04 КБ) 2019 просмотров
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение selenur »

Описание примера получения траектории:
Прежде всего я используя конструктор пресетов, создал пресет с вот такой последовательностью модулей:
2018-04-18_012056.png (1962 просмотра) <a class='original' href='./download/file.php?id=137370&mode=view' target=_blank>Загрузить оригинал (12.05 КБ)</a>
После этого выбираю пресет.
И далее последовательность нажатий:
2018-04-18_012145.png (1962 просмотра) <a class='original' href='./download/file.php?id=137371&mode=view' target=_blank>Загрузить оригинал (31.92 КБ)</a>
1)выбираем файл
2)нажимаем вычислить
3) переходим дальше
2018-04-18_012358.png (1962 просмотра) <a class='original' href='./download/file.php?id=137372&mode=view' target=_blank>Загрузить оригинал (23.81 КБ)</a>
4) нажимаем вычислить, что-бы из рисунка получить контуры
5) переходим дальше
2018-04-18_012517.png (1962 просмотра) <a class='original' href='./download/file.php?id=137373&mode=view' target=_blank>Загрузить оригинал (50.94 КБ)</a>
6) ставим флаг
7) указываем DPI с которым сохранялся рисунок
8) нажимаем вычислить
9) смотрим что получилось
10)переходим дальше
2018-04-18_012807.png (1962 просмотра) <a class='original' href='./download/file.php?id=137374&mode=view' target=_blank>Загрузить оригинал (109.42 КБ)</a>
11) в любом месте кликаем правой кнопкой мышки, и выбираем выделить всё
12) нажимаем кнопку установить генерацию траекторий во внутрь
13-14-15) задаем шаг и количество возможных траекторий
16) запускаем вычисление
17) смотрим результат
18) обращаем внимание на результат
19) переходим дальше
2018-04-18_013041.png (1962 просмотра) <a class='original' href='./download/file.php?id=137375&mode=view' target=_blank>Загрузить оригинал (92.11 КБ)</a>
20) тут пока документации нет просто сделай так.
21) и так
22) запускаем вычисление
23) смотрим результат, насколько упростилась траектория
24) видно что стало меньше точек, а результат не поменялся
25) переходим дальше
2018-04-18_013155.png (1962 просмотра) <a class='original' href='./download/file.php?id=137376&mode=view' target=_blank>Загрузить оригинал (28.18 КБ)</a>
26) выбираем файл
27) нужное нам правило
28) генерируем текст с G-кодом
2018-04-18_013421.png (1962 просмотра) <a class='original' href='./download/file.php?id=137377&mode=view' target=_blank>Загрузить оригинал (176.39 КБ)</a>
Вот результат в программе просмотра.

В итоге получили файл размером 55 кбайт, который содержит 4300 строк.
Что-бы не разбираться как пользоваться конструктором пресетов, приложил файл пресета:
Печатная плата из рисунка.zip
(937 байт) 233 скачивания
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
SergK
Новичок
Сообщения: 31
Зарегистрирован: 15 апр 2018, 12:22
Репутация: 2
Настоящее имя: Serg
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение SergK »

12) нажимаем кнопку установить генерацию траекторий во внутрь
Мой фрезер пока не умеет наносить медное покрытие на текстролит.
Я наверное пока буду указывать траекторию наружу...

Спасибо. Оптимизация помогла, 92 траектории, 16500 точек и файл 250КБ (при точности - до тысячной).

Добавить бы ещё во внутренний цикл правила "Гравировка" сравнение строк перед записью в файл.
Типа сравнивать текущую с предыдущей, если разные, то запись, одинаковые - пропуск записи.
Что-то типа этого:

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

str0 = ""
    for indxP = 0, arr.Items.Count-1, 1 do
        point = arr.Items[indxP]
         str1 = "X" .. point.Xf .. " Y" .. point.Yf
        If str0 != str1 then FILE:AddLine(str1)
        str0 = str1
    end
Только я не знаю, что тут за язык используется, и какой у него его синтаксис...
Конечно этот вариант замедлит формирование файла, но как "аварийный" вариант правила, был бы уместен.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение xvovanx »

Сергей, добрый день!
Не хотелось бы сильно напрягать, но хотелось бы в программе скорректировать два момента: 1- при векторном предпросмотре колесиком мышки меняем увеличение, хотелось бы как по привычке в большинстве графических КАД программ- колесико к себе-увеличиваем картинку, от себя- уменьшаем (в вашей программе наоборот). И 2- при запуске программы окно открывается в левом верхнем углу. Может можно где в файле самому прописать расположение окна или сделать открытие окна проги в месте открытой папки? (при работе с двумя мониторами прога улетает в "чужой" монитор :D )
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Генерация G-кода, из текста, рисунка, и файлов PLT, DXF

Сообщение Serg »

xvovanx писал(а):хотелось бы как по привычке в большинстве графических КАД программ- колесико к себе-увеличиваем картинку, от себя- уменьшаем (в вашей программе наоборот).
Например в SolidWorks и в Inventor увеличение колесом работает по разному и разработчики обоих утверждают, что именно их вариант самый логичный.. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Ответить

Вернуться в «Windows / Mach»