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

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

selenur писал(а):
MAX3000 писал(а):selenur, LINES отрабатывает не так как раньше.
Раньше на изменении координаты Y срабатывал, а сейчас на изменении яркости.
8-1.jpg
Раньше было лучше.
Я забыл профиль поправить (как временная мера):

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

# Настройка для лазерного выжигателя S - с профилем#
$.$
"G90"
"G0 F800"
"G0 X0 Y0"
"G1 F500"
"S0"
"M3"
LINES
{
	POINTS
	{
		[SKIP_FIRST_POINT]
		"G1 X"[X'#0.##'] "Y"[Y'#0.##'] "S"[S]
	}
}
"M5"
"G0 X0 Y0"
"M30"
Вот так должно быть уже лучше.
У меня копия старого алгоритма осталась, могу его 4-м фильтром добавить :-)

А новый алгоритм конечно ещё с косячками, которые почти поправил, но это нужно было для возможности легкого добавления дополнительного функционала, например скоро появится возможность задавать значение яркости, до которой это будет считаться холостым ходом, что собственно позволит сократить время выжигания.
Не не, не нужно добавлять, я подожду, мне не к спеху.
Старая версия генерит отлично - пока ей попользуюсь.
Я описал замеченное - от чего желательно избавиться.
А без G0 S0 по ветке LINES края будут подпалены.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

MAX3000 писал(а):Я описал замеченное - от чего желательно избавиться.
Уже избавился вроде от всех косяков :-)
2017-02-07_223721.jpg (1776 просмотров) <a class='original' href='./download/file.php?id=102475&mode=view' target=_blank>Загрузить оригинал (299.06 КБ)</a>
MAX3000 писал(а):А без G0 S0 по ветке LINES края будут подпалены.
А вот тут непонятно....... :wik:

Я как планирую сделать:
2017-02-07_224113.jpg (1776 просмотров) <a class='original' href='./download/file.php?id=102476&mode=view' target=_blank>Загрузить оригинал (455.4 КБ)</a>
Если подряд идут точки которые имеют значение S=0 то эти точки хочу просто удалять, и оставлять только последнюю у которой S=0, но после неё следующая точка имеет значение S не равное нулю.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
y-u-r
Кандидат
Сообщения: 68
Зарегистрирован: 18 дек 2016, 06:43
Репутация: 4
Настоящее имя: Юрий
Контактная информация:

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

Сообщение y-u-r »

Ёлки палки.... Да когда же контур будут учить вырезать.......
:hehehe:
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

y-u-r писал(а):Ёлки палки.... Да когда же контур будут учить вырезать.......
:hehehe:
Вероятнее всего сразу после этого ;-)
Мой сайт: 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 »

Для тестов теперь доступна 40-я версия: https://github.com/selenur/ToolsGenGkod ... 40/v40.zip
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

selenur писал(а):
MAX3000 писал(а):А без G0 S0 по ветке LINES края будут подпалены.
А вот тут непонятно....... :wik:
Это касательно кода:

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

LINES
{
   POINTS
   {
      [SKIP_FIRST_POINT]
      "G1 X"[X'#0.##'] "Y"[Y'#0.##'] "S"[S]
   }
}
В данном случае переход по Y будет происходить с S последней точки, что приводит к поджигу края.
Лучше чтоб переход проходил с S0 (команда G0 в блоке LINES):

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

LINES
{
"G0 X"[X'#0.##'] "Y"[Y'#0.##'] "S0"
   POINTS
   {
      [SKIP_FIRST_POINT]
      "G1 X"[X'#0.##'] "Y"[Y'#0.##'] "S"[S]
   }
}
Сейчас потестирую новую версию.
Спасибо!
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

MAX3000 писал(а): В данном случае переход по Y будет происходить с S последней точки, что приводит к поджигу края.
Лучше чтоб переход проходил с S0 (команда G0 в блоке LINES):
А теперь понял, поправлю.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
raddd
Почётный участник
Почётный участник
Сообщения: 1564
Зарегистрирован: 10 фев 2015, 08:50
Репутация: 540
Настоящее имя: Alexey Rodionov
Откуда: Беларусь Минский р-н
Контактная информация:

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

Сообщение raddd »

Пора уже автору звание-самый терпеливый разработчик!
Столько изменений по поросьбам трудящихся!
Ну а кроме шуток, медальку выписать можно!
||||||||||||
||||||||||||
y-u-r
Кандидат
Сообщения: 68
Зарегистрирован: 18 дек 2016, 06:43
Репутация: 4
Настоящее имя: Юрий
Контактная информация:

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

Сообщение y-u-r »

Однозначно !!!!
Медаль конечно хорошо..... :thinking:
Но как говорят : Лучше деньгами.... :hehehe:
У товарища пополнение в семье - расходная статья возросла .
Предлагаю сброситься по этому случаю. Кто сколько - для себя пусть каждый сам решит .
А автор проекта приобретет например памятную вещицу от игрушки - до коляски (в зависимости от суммы ).
Потом приятно будет посмотреть и вспомнить - Это ребята с форума помогли.
Опять же всем будет + ......
Жена лишний раз к компу отпустит !!! .... :D
Предлагаю после данного поста "selenur" обновить здесь данные своей банковской карты.......
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

selenur, оптимизировал полученный файл (версия программы - 39).

В архиве:
g-kode-test1.nc - файл сгенерированный программой.
g-kode-test1-optimizirovan.nc - оптимизированный файл.
лазер Bright - S-Профиль.txt - файл профиля.
50х50px_5st_0.15dt-BlackObvodka.bmp - подопытная картинка.

В TotalCommander (Файл - Сравнение по содержимому) хорошо видно разницу:
9-1.jpg (1740 просмотров) <a class='original' href='./download/file.php?id=102538&mode=view' target=_blank>Загрузить оригинал (323.07 КБ)</a>
Все, что красное - то лишнее.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

MAX3000 писал(а):selenur, оптимизировал полученный файл (версия программы - 39).

В архиве:
g-kode-test1.nc - файл сгенерированный программой.
g-kode-test1-optimizirovan.nc - оптимизированный файл.
лазер Bright - S-Профиль.txt - файл профиля.
50х50px_5st_0.15dt-BlackObvodka.bmp - подопытная картинка.

В TotalCommander (Файл - Сравнение по содержимому) хорошо видно разницу:
9-1.jpg
Все, что красное - то лишнее.
В 40-й версии уже должно именно так быть ;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

selenur, в 40-й версии опять теряется последняя точка и переход по Y происходит по S последней точки:
9-2.jpg (1733 просмотра) <a class='original' href='./download/file.php?id=102542&mode=view' target=_blank>Загрузить оригинал (48.7 КБ)</a>
Это то что сразу заметил.
А более детально разберу попозже, но,похоже ситуация такая же как и в 39-й версии, только "-" в Y уже отсутствует.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

MAX3000 писал(а):selenur, в 40-й версии опять теряется последняя точка и переход по Y происходит по S последней точки:
9-2.jpg
Это то что сразу заметил.
А более детально разберу попозже, но,похоже ситуация такая же как и в 39-й версии, только "-" в Y уже отсутствует.
переход на новую линию сделаю чтобы S = 0, а вот с последней точкой там вроде чисто математический нюанс, например имеем рисунок 5х5 пикселей (условно 1 пиксель это 1 мм), рисунок начинается в точке с координатами 0;0 а не 1;1 в связи с чем противоположная точка в пятой строке, и пятом столбце имеет координаты 4;4. Я конечно могу все данные сместить на 1 мм по обоим осям, что-бы совпадало.;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

selenur писал(а):
MAX3000 писал(а):selenur, в 40-й версии опять теряется последняя точка и переход по Y происходит по S последней точки:
9-2.jpg
Это то что сразу заметил.
А более детально разберу попозже, но,похоже ситуация такая же как и в 39-й версии, только "-" в Y уже отсутствует.
переход на новую линию сделаю чтобы S = 0, а вот с последней точкой там вроде чисто математический нюанс, например имеем рисунок 5х5 пикселей (условно 1 пиксель это 1 мм), рисунок начинается в точке с координатами 0;0 а не 1;1 в связи с чем противоположная точка в пятой строке, и пятом столбце имеет координаты 4;4. Я конечно могу все данные сместить на 1 мм по обоим осям, что-бы совпадало.;-)
А в каком виде в программе картинка представленна? - в виде массива?
Mass[X][Y]=Bright
???
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

MAX3000 писал(а):А в каком виде в программе картинка представленна? - в виде массива?
Mass[X][Y]=Bright
???
Нет не так, постараюсь вечером расписать....
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

Все, разобрался.
selenur, похоже ты прав.
Вот набросал простенькую схему:
10-1.jpg (1717 просмотров) <a class='original' href='./download/file.php?id=102552&mode=view' target=_blank>Загрузить оригинал (180.66 КБ)</a>
При смене яркости съезжаем с предыдущей точки с потушенным лазером - G1 X Y S0 (можно G0 X Y S0).
Затем включаем лазер с SX и двигаем до конца отрезка - G1 X Y SX.
И опять тушим лазер и перемещаем на следующую точку - G1 X Y S0 (можно G0 X Y S0).
Ну и одиночные точки точно также: переместили лазер с S0 - влючили с SX не двигая - переместили с S0 на следующую точку.
А в 35-й версии точка отрезком отрисовывалась, длиной в ширину пикселя.
Ну и переход по Y лучше делать с S0 - G0 X Y S0 (можно G1 X Y S0).
Сегодня нарисую 5х5 картинку посмотрим что 40-я версия сгенерирует.
Результаты сброшу.
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2989
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 437
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

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

Сообщение Rom327 »

y-u-r писал(а):Однозначно !!!!
Медаль конечно хорошо..... :thinking:
Но как говорят : Лучше деньгами.... :hehehe:
У товарища пополнение в семье - расходная статья возросла .
Предлагаю сброситься по этому случаю. Кто сколько - для себя пусть каждый сам решит .
А автор проекта приобретет например памятную вещицу от игрушки - до коляски (в зависимости от суммы ).
Потом приятно будет посмотреть и вспомнить - Это ребята с форума помогли.
Опять же всем будет + ......
Жена лишний раз к компу отпустит !!! .... :D
Предлагаю после данного поста "selenur" обновить здесь данные своей банковской карты.......
Поддерживаю полностью! Надо отблагодарить человека! Старается для всех! (Я про программу!) А дети это вообще здорово!!! Поздравляю!!! :good: И супруге привет огромный!!!
Так,что Сергей, поделись номерочком своей банковской карты, можно в личку!
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
MAX3000
Опытный
Сообщения: 107
Зарегистрирован: 17 дек 2015, 11:12
Репутация: 18
Настоящее имя: MaX
Контактная информация:

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

Сообщение MAX3000 »

А вот и результат.
Проверил вышеприведенную схему:
10-1.jpg (1682 просмотра) <a class='original' href='./download/file.php?id=102621&mode=view' target=_blank>Загрузить оригинал (180.66 КБ)</a>
НЕ ПОДХОДИТ!

Вот что получилось:
Test-5x5.jpg (1682 просмотра) <a class='original' href='./download/file.php?id=102622&mode=view' target=_blank>Загрузить оригинал (96.66 КБ)</a>
В режиме лазера ($32=1) одиночных точек нет вообще - даже лазер не моргает.

Файл для станка:
Test_5x5_S32-0.rar
(236 байт) 254 скачивания
vasibori
Новичок
Сообщения: 22
Зарегистрирован: 25 окт 2016, 11:07
Репутация: 1
Настоящее имя: Василий
Откуда: Тольятти
Контактная информация:

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

Сообщение vasibori »

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

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

Сообщение selenur »

vasibori писал(а):надеюсь кошелек на яндекс деньгах в программе правильный указан,а то перевел и не знаю Сергею или нет
спасибо ;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Ответить

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