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

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
Alexversh
Опытный
Сообщения: 115
Зарегистрирован: 15 апр 2017, 17:27
Репутация: 7
Настоящее имя: Александр
Контактная информация:

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

Сообщение Alexversh »

Сергей, возможно ли в 901 модуль (упр.GRBL) добавить функцию открытия файла УП.
Последний раз редактировалось Alexversh 26 авг 2017, 11:21, всего редактировалось 1 раз.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Хорошо добавлю.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
lenivets
Опытный
Сообщения: 141
Зарегистрирован: 15 окт 2016, 11:20
Репутация: 7
Настоящее имя: Виталий
Откуда: Тульская область Венёв
Контактная информация:

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

Сообщение lenivets »

Alexversh писал(а):Игорь,.........
selenur писал(а):Хорошо добавлю
а я думал что человека под ником selenur зовут Сергей. Я ошибаюсь?
учиться чему то новому всегда сложно , особенно когда в этом не понимаешь.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

2017-08-26_125542.png (3037 просмотров) <a class='original' href='./download/file.php?id=118990&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (86.9 КБ)</a>
;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Alexversh
Опытный
Сообщения: 115
Зарегистрирован: 15 апр 2017, 17:27
Репутация: 7
Настоящее имя: Александр
Контактная информация:

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

Сообщение Alexversh »

Alexversh писал(а):Игорь, возможно ли
Сергей! Прошу прощения! :hehehe:
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Выкладываю для тестов программу с доработанным GRBL модулем: selenur.ru/wp-content/uploads/3.0.0.5.rar
Тестируем крайне аккуратно, с возможностью если что вырубить станок......

Так-же есть следующие особенности:
2017-08-27_002107.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119061&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (32.49 КБ)</a>
Векторные данные представляют собой список траекторий, каждая траектория содержит список точек, и специальное поле "tag" - в которое некоторые модули могут записывать текстовую метку.
Только модули имеющие код от 102(гербер) и 104(сверловка) заполняют это поле.
2017-08-27_002219.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119062&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (218.46 КБ)</a>
При выборе гербер файла, программа спрашивает что это будет траектория платы, или траектория контуров платы, от этого зависит какая будет метка у траекторий установлена.
2017-08-27_002338.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119063&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (164.52 КБ)</a>
В модуле 500, который объединяет данные, можно увидеть что есть траектории радиосхемы (для гравировки), траектории сверловки, и траектории фрезеровки контуров платы.

Возможность измерения длины инструмента/сканирования пока не работает!!!!

Порядок выполнения сверловки
2017-08-27_002426.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119064&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (291.09 КБ)</a>
Тут появятся только траектории с меткой "DRILL"
1) Выбираем диаметр
2) Если нужно можно выделить нужное отверстие
3) И нажать кнопку, что-бы сверло в плоскости XY переместилось в эту точку
4) Сверловка подразумевает что высота по Z=0 на уровне печатной платы, поэтому глубину сверловки указывать отрицательную. Высота подхода Z, это высота на которую поднимается сверло для перехода к следующей точке. Все перемещения и подъем сверла выполняется на максимальной скорости. И только опускание сверла управляется параметром.
5) Нажатие этой кнопки формирует текстовый файл "tempGcode.nc" в каталоге с программой. (можно просмотреть сторонней программой)
6) Собственно запуск выполнения.

Фрезеровка/гравировка
2017-08-27_002553.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119065&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (255.08 КБ)</a>
Тут появятся только траектории с указаной меткой в выпадающем поле, если меток несколько. Если меток нет, то заполнится сразу всеми траекториями.
1) Вот тут выбирается та самая метка, по которой программа понимает с какими данными работать в текущий момент.
2) Первый параметр указывает с какой скоростью двигаться в плоскости XY, а второй с какой скоростью опускаться по Z.
3) Высота перехода - это безопасная высота на которой выполняется перемещение от траектории к траектории. Начальная высота - собственно высота по Z с которой начинается, фрезеровка, если начальная и конечная одинаковы то выполниться всё 1 раз, иначе будет выполняться фрезеровка до тех пор, пока не будет достигнута конечная высота, с указаным шагом.
4) Так-же формируется временный файл.
5) И запускается на выполнение.

Засветка
2017-08-27_002716.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119066&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (273.97 КБ)</a>
Тут заполнение всеми траекториями.
1) Собственно значение от нуля до 1000
2) Скорость выжигания
3) по команде лазер сразу включается на указанную мощность, до самого выключения.
4) мощность с нуля увеличивается до указанной величины, в процессе разгона, и уменьшается при торможении, данная мотодика применяется что-бы избавиться от пережогов.
5) формирование временного файла
6) выполние

Работа с контролером
1) кнопка для повторного получения всех данных с предыдущего модуля.
2) Кнопка посылает в контроллер команду "$32=1", в результате чего контроллер будет выключать лазер если движение вызвано командой G0 - холостой ход
3) Кнопка посылает в контроллер команду "$32=0", в результате чего контроллер не будет выключать лазер при холостых перемещениях.
4) Опция пока не очень готова, о ней расскаж позже как доделаю.
5) Опция позволяющая в процессе выполнения G-кода контроллером, на ходу менять скорость от 10% до 200%, если считать 100% за основную скорость.
6) Возможность вводить произольные команды, нажатие ENTER запускает выполнение.
7) Выполняет тоже самое что и ENTER.
8) Список полученных команд от контроллера, новые сообщения добавляются в первую стороку, список содержит лишь 100 последних сообщений.
Вложения
2017-08-27_002751.jpg (2955 просмотров) <a class='original' href='./download/file.php?id=119067&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (288.13 КБ)</a>
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Так-же добавил выбор файла с G-кодом, для выполнения, но траектория отображаться не будет!!! только выполняться....
Вложения
2017-08-27_223251.jpg (2953 просмотра) <a class='original' href='./download/file.php?id=119068&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (202.23 КБ)</a>
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

В последней версии добавил ещё модуль для быстрого создания траектории, выравнивания жертвенного станка:
https://www.youtube.com/watch?v=pDdA9ML1g08
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Devils0
Новичок
Сообщения: 11
Зарегистрирован: 07 авг 2017, 07:24
Репутация: 0
Настоящее имя: Qwerty
Контактная информация:

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

Сообщение Devils0 »

selenur писал(а):В последней версии добавил ещё модуль для быстрого создания траектории, выравнивания жертвенного станка:
Прям как по заказу, на выходных искал чем бы таким составить траекторию змейки. Пригодится не только для стола. Еще бы функцию проехать по периметру перед запуском змейки чтоб проверить габариты.

Еще было бы круто прямо на станке задавать поле для фрезеровки.
Приехали в точку 1, нажали кнопку, стал тут ноль.
Приехали в точку 2, нажали
Приехали в точку 3, нажали.
Программа по физическим координатам станка составила периметр для фрезеровки. Гораздо безопаснее и быстрее стало бы отфрезеровать поверхность у детали не задевая прижимы при этом.
Вложения
PicsArt_08-28-12.53.53.jpg
PicsArt_08-28-12.53.53.jpg (4.84 КБ) 2899 просмотров
Cnc 2418
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Devils0 писал(а):
selenur писал(а):В последней версии добавил ещё модуль для быстрого создания траектории, выравнивания жертвенного станка:
Прям как по заказу, на выходных искал чем бы таким составить траекторию змейки. Пригодится не только для стола. Еще бы функцию проехать по периметру перед запуском змейки чтоб проверить габариты.

Еще было бы круто прямо на станке задавать поле для фрезеровки.
Приехали в точку 1, нажали кнопку, стал тут ноль.
Приехали в точку 2, нажали
Приехали в точку 3, нажали.
Программа по физическим координатам станка составила периметр для фрезеровки. Гораздо безопаснее и быстрее стало бы отфрезеровать поверхность у детали не задевая прижимы при этом.
Ну в принципе добавлю такую возможность, что-бы можно было составить некую замкнутую траекторию, которую потом можно будет фрезернуть...
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Первая попытка нанесения шелкографии
https://www.youtube.com/watch?v=fsWIFKch9GQ
немного правда перестарался, что сошкрябал лишнего :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Alexversh
Опытный
Сообщения: 115
Зарегистрирован: 15 апр 2017, 17:27
Репутация: 7
Настоящее имя: Александр
Контактная информация:

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

Сообщение Alexversh »

Генерил из .plt. 901 модуль, вкладка фрезеровка, при старте УП почему то не включается шпиндель, команда М3 в УП имеется, сама УП отрабатывает полностью с неработающим шпинделем. В кандле все работает. Может делаю что то не так?
При запуске УП во вкладе ИНОЕ тоже самое.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Alexversh писал(а):Генерил из .plt. 901 модуль, вкладка фрезеровка, при старте УП почему то не включается шпиндель, команда М3 в УП имеется, сама УП отрабатывает полностью с неработающим шпинделем. В кандле все работает. Может делаю что то не так?
При запуске УП во вкладе ИНОЕ тоже самое.
вот новая версия: selenur.ru/wp-content/uploads/3.0.0.6.zip
Ну и конечно при использовании модуля 901 будьте осторожны, т.к. пока еще он мало-протестирован!

При нажатии сформировать, программа формирует временный файл, в каталоге с программой:
2017-08-31_085707.png (2758 просмотров) <a class='original' href='./download/file.php?id=119372&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (131.92 КБ)</a>
И до этой версии там не было просто команд М3 и М5 :-)

Так-же добавил выбор расширения в модуле 900 - генерация G-кода:
2017-08-31_085454.png (2758 просмотров) <a class='original' href='./download/file.php?id=119373&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (38.94 КБ)</a>
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
lenivets
Опытный
Сообщения: 141
Зарегистрирован: 15 окт 2016, 11:20
Репутация: 7
Настоящее имя: Виталий
Откуда: Тульская область Венёв
Контактная информация:

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

Сообщение lenivets »

selenur писал(а):Так-же добавил выбор расширения в модуле 900 - генерация G-кода:
нет выбора расширений. если выбрать вариант 2 то сохраняется с *.nc
123.JPG (2740 просмотров) <a class='original' href='./download/file.php?id=119374&sid=88b99b377409720744799a712f1eb0ee&mode=view' target=_blank>Загрузить оригинал (66.84 КБ)</a>
учиться чему то новому всегда сложно , особенно когда в этом не понимаешь.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

lenivets писал(а):
selenur писал(а):Так-же добавил выбор расширения в модуле 900 - генерация G-кода:
нет выбора расширений. если выбрать вариант 2 то сохраняется с *.nc
123.JPG
Проверил в ОС windows-XP, там действительно не отображается используемое расширение, буду думать как решить эту заморочку....
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
lenivets
Опытный
Сообщения: 141
Зарегистрирован: 15 окт 2016, 11:20
Репутация: 7
Настоящее имя: Виталий
Откуда: Тульская область Венёв
Контактная информация:

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

Сообщение lenivets »

selenur писал(а):буду думать
Спасибо.
учиться чему то новому всегда сложно , особенно когда в этом не понимаешь.
Alexversh
Опытный
Сообщения: 115
Зарегистрирован: 15 апр 2017, 17:27
Репутация: 7
Настоящее имя: Александр
Контактная информация:

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

Сообщение Alexversh »

selenur писал(а):При нажатии сформировать, программа формирует временный файл, в каталоге с программой:


И до этой версии там не было просто команд М3 и М5
В файле tempGcode.nc М3 есть, А вот S=0 ? Не нашел где в программе обороты указать. Если в tempGcode.nc прописать параметр S с числом оборотов то все работает.
PS:
Внес изменение в файл профиля (прописал параметр S, и он стал доступен в 900 модуле).
Получил файл G code с работающим шпинделем. Но tempGcode.nc имеет совершенно другой вид.
S попрежнему =0 , кончную высоту Z установил -1(вкладка фрезеровка) - в tempGcode.nc после формирования данных для выполнения почему то конечная Z=0.
Сохраненный файл УП, координаты имеют два знака после запятой. tempGcode.nc имеет три знака.
g-kode22.nc.txt
(10.66 КБ) 904 скачивания
tempGcode.nc.txt
(24.42 КБ) 931 скачивание
Фрезеровка 2.prof.txt
(1.07 КБ) 910 скачиваний
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Alexversh писал(а):В файле tempGcode.nc М3 есть, А вот S=0 ? Не нашел где в программе обороты указать.
Параметр S я добавлю, просто у меня включение шпинделя, и установка оборотов, выполняется руками, поэтому я и не обратил внимание на это.
Alexversh писал(а):Но tempGcode.nc имеет совершенно другой вид
Всё дело в том что модули 900 и 901 между собой вообще ни как не связаны, и модуль 900 генерирует G-код согласно выбранному профилю (и G-код формируется по указанным правилам), а 901 генерирует g-код самостоятельно без каких либо профилей, т.к. мне изначально известен формат G-кода, и прочие тонкости, при формировании файла.
Alexversh писал(а):S попрежнему =0 , кончную высоту Z установил -1(вкладка фрезеровка) - в tempGcode.nc после формирования данных для выполнения почему то конечная Z=0.
Это я вечером постараюсь посмотреть.
Alexversh писал(а):Сохраненный файл УП, координаты имеют два знака после запятой. tempGcode.nc имеет три знака.
В профиле есть такая строка:
2017-09-01_075538.png
2017-09-01_075538.png (10.11 КБ) 2683 просмотра
В ней содержится шаблон форматирования значения:
Символ нуля — в шаблоне программа заменяет ноль соответствующей цифрой, если такая имеется. В противном случае в результирующей строке будет стоять ноль.
Символ # — программа заменяет знак «#» соответствующей цифрой, если такая имеется. В противном случае в результирующей строке не будет цифры.
Символ точка — Определяет расположение разделителя целой и дробной частей в результирующей строке.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Alexversh
Опытный
Сообщения: 115
Зарегистрирован: 15 апр 2017, 17:27
Репутация: 7
Настоящее имя: Александр
Контактная информация:

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

Сообщение Alexversh »

selenur писал(а):В ней содержится шаблон форматирования значения:
Символ нуля — в шаблоне программа заменяет ноль соответствующей цифрой, если такая имеется. В противном случае в результирующей строке будет стоять ноль.
Символ # — программа заменяет знак «#» соответствующей цифрой, если такая имеется. В противном случае в результирующей строке не будет цифры.
Символ точка — Определяет расположение разделителя целой и дробной частей в результирующей строке.
Аааа. точно во 2.х версии так же было, Спасибо!
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Alexversh писал(а):конечную высоту Z установил -1(вкладка фрезеровка) - в tempGcode.nc после формирования данных для выполнения почему то конечная Z=0.
В твоем файле посмотрел всё вроде нормально, я где-то недопонимаю???
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Ответить

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