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

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

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

Сообщение selenur »

Мастерю писал(а):Сергей, извиняюсь за возможно глупый вопрос, и все же. Можете на пальцах пояснить идею именно вложенного цикла? Почему нельзя задаться начальной координатой до начала цикла, а потом пройтись по точкам в одном цикле?
В правиле используется 2 цикла, из-за того что первый цикл идет по списку траекторий, а второй цикл по списку точек самой траектории, которую получаем из 1-го цикла, а дальше всё так и есть до начала цикла получил первую точку, а в цикле по точкам начал цикл со 2-й точки, и до последней, определяя угол между точкой из цикла, и предыдущей точкой.
Мой сайт: 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 »

Описание использования математических функций: http://selenur.ru/?p=1406
Скоро опишу использование геометрических функций.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Q-starь
Мастер
Сообщения: 918
Зарегистрирован: 04 апр 2011, 16:50
Репутация: 604
Настоящее имя: Гэн
Откуда: Казахстан
Контактная информация:

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

Сообщение Q-starь »

О, корень появился! Класс, а то мне пришлось вот так раскорячиться :
length = length + ((point.X - p_point.X)^2 + (point.Y - p_point.Y)^2)^0.5 :idiot:
Но наверное переписывать не буду, и так всё работает :hehehe:
Винтовка, жена и ложка - оружие строго индивидуальное!
Изображение
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Q-starь писал(а):О, корень появился! Класс, а то мне пришлось вот так раскорячиться :
length = length + ((point.X - p_point.X)^2 + (point.Y - p_point.Y)^2)^0.5 :idiot:
Но наверное переписывать не буду, и так всё работает :hehehe:
В новой версии будет возможно сделать так: GEOMETRY:Distance2Point(poin1,point2) ;-)
Мой сайт: 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 »

Добавил описание геометрических функций, которые появятся в версии 3.3.0.33 http://selenur.ru/?p=1413
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Мастерю
Мастер
Сообщения: 520
Зарегистрирован: 17 фев 2019, 13:45
Репутация: 34
Настоящее имя: Сергей
Контактная информация:

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

Сообщение Мастерю »

Сергей, спасибо за труды! :good:

В свете этапа добавления новых функций и операторов в программу формирования G-кода есть еще одно предложение. Оно в большей степени связано с чаянием на выход в свет модуля управления станками (901). Поясню суть предложения.

Изготовление какого-либо изделия может быть связано с необходимостью смены инструмента (сверла, фрезы, резцы и т.п.) в процессе выполнения программы станка. Для этого, обычно в G-коде ставятся стопы (М0) с тем, чтобы оператор станка сменил инструмент и затем нажал кнопку для продолжения выполнения программы. Если процесс обработки длительный, то вполне можно запутаться какой инструмент нужно установить в данный момент паузы программы. Есть предложение сейчас добавить оператор вывода текста на экран, а-ля "PRINT (выводимый текст)". В коде для модуля 900 это может выглядеть примерно так:

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

...
# код программы до смены инструмента

FILE:AddLine("PRINT (Требуется установить сверло 5 мм)")
FILE:AddLine("М00")

# продолжение кода программы после смены инструмента
...
И, соответственно, при написании модуля 901 предусмотреть алгоритм обработки кодового слова "PRINT", выводя на экран монитора оператора станка информационное сообщение.
Аватара пользователя
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/
Аватара пользователя
Мастерю
Мастер
Сообщения: 520
Зарегистрирован: 17 фев 2019, 13:45
Репутация: 34
Настоящее имя: Сергей
Контактная информация:

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

Сообщение Мастерю »

selenur писал(а):если учесть то, что g-команды можно использовать любые
Ну, наверное, не совсем так. Многие люди уже применяют вашу программу и формируют G-код с ее помощью. Кто-то будет продолжать использовать то же управляющее ПО, которое они используют сейчас. Кто-то решит перейти полностью на вашу программу (будет использовать модуль 901). Видимо, из этих соображений, программа должна выдавать на выход максимально унифицированный G-код, чтобы его можно было использовать при любом управляющем ПО.

п.с. Тут, походу, возник еще один момент, связанный с ОС, под которой работает управляющий ПК. Насколько я понимаю, ваша программа пока написана только под Windows? Есть ли варианты ее исполнения под Linux (понимаю, что веток Linux-ов много и это может создать головняк :thinking: разработчику ПО..)? Возможно, нет необходимости на управляющем ПК запускать "конструктор" в полном его функционале. Как мне кажется, это даже будет лишним. Может быть, будет хорошо этот модуль в том числе оформить в виде независимого приложения с версиями и для Windows, и для Linux? По сути, создать альтернативу тому же GRBL-controller, но с более гибкими и реально нужными нам всем функциями.

Я не сильно вас загрузил хотелками? :wik:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

Мастерю писал(а):понимаю, что веток Linux-ов много и это может создать головняк :thinking: разработчику ПО..
Настоящему разработчику не создаст. :) А вот разные версии единственной винды как раз и создают головняк. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Мастерю
Мастер
Сообщения: 520
Зарегистрирован: 17 фев 2019, 13:45
Репутация: 34
Настоящее имя: Сергей
Контактная информация:

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

Сообщение Мастерю »

UAVpilot писал(а):Настоящему разработчику
Ну, я в Сергее не сомневаюсь. Просто мое нахальство должно содержать хоть какую-то меру вежливости... ;)

п.с. Вы бы лучше поделились своими соображениями касательно мною изложенного выше предложения... :thinking:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

Мастерю писал(а):п.с. Вы бы лучше поделились своими соображениями касательно мною изложенного выше предложения... :thinking:
А чего там делиться-то? Сейчас нет никаких проблем писать кросплатформенные программы, было-бы желание...

P.S. Мало кто знает, что требуются совсем уж небольшие переделки, чтобы запустить интерфейсы axis и gmoccapy (LinuxCNC) на винде... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
MX_Master
Мастер
Сообщения: 7488
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

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

Сообщение MX_Master »

python всемогущий (:
Аватара пользователя
Мастерю
Мастер
Сообщения: 520
Зарегистрирован: 17 фев 2019, 13:45
Репутация: 34
Настоящее имя: Сергей
Контактная информация:

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

Сообщение Мастерю »

MX_Master писал(а):python всемогущий
Насколько я понимаю (могу ошибаться), Сергей пишет на С с добавлением некоторых функций на Lua. Причем тут змеюка? Речь вообще не о том, на каком языке автору писать его произведение. Это сугубо личное дело самого автора, и не наше дело ему здесь указывать... :silent:


Речь была лишь о:
1. Определенном функционале
2. Возможности/невозможности работы программы на различных ОС.

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

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

Сообщение selenur »

Мастерю писал(а):Насколько я понимаю, ваша программа пока написана только под Windows? Есть ли варианты ее исполнения под Linux
Под линуксом работает с применением wine, но есть некоторые косяки с окном предварительного просмотра, но без него вполне себе работоспособный вариант.
Дорабатывать/переделывать что-бы работала под линуксом не планирую, т.к. это потребует достаточно много времени, которое я лучше потрачу на другие свои проекты, у меня эта программа уже проект №87 (за последние 4 года), есть ещё проект №92 связанный с этой темой: USBCNC GRBL 4 оси (6 осей!) #1 и который является модулем 901 для "конструктора G-кода".
Т.е. можно будет управлять GRBL контролерами на базе ардуины с версией 1.1 так и STM32 контроллером.

Есть интересный проект: LinuxCNC + Orange Pi #1 на базе которого я реализовал вот такое:
https://www.youtube.com/watch?v=Xa5NxfWsvJA
Где в конструкторе я сформировал файл, и по ssh оправил в микрокомпьютер, на котором осталось только выбрать нужный файл, и запустить обработку.

Есть ещё немало не завершенных проектов, а в неделю я могу тратить лишь 5-7 часов на хобби по ночам......
Мастерю писал(а):Я не сильно вас загрузил хотелками?
Всё нормально, :-) мне не сложно ответить.
UAVpilot писал(а):А вот разные версии единственной винды как раз и создают головняк.
Всё зависит от того какой функционал и версию .NET использовать, у меня например не мало других программ работает на огромном зоопарке windows от XP и до 10, и головняка в принципе нет, например написанная мной программа на Си лет 15 назад уже не работает у меня на планшете "асер икона таб" с win8, т.к. там вообще атом проц, а вот программа на .NET нормально, но на данную тему я спорить не буду, в разной ситуации бывают свои нюансы.....
MX_Master писал(а):python всемогущий (:
Могу и на нем, возможно, но время.........
Мастерю писал(а):Насколько я понимаю (могу ошибаться), Сергей пишет на С с добавлением некоторых функций на Lua.
Если точнее на C#, и 90% кода мой, и 10% с гитхаба, и других ресурсов, в том числе и библиотека для LUA
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Мастерю
Мастер
Сообщения: 520
Зарегистрирован: 17 фев 2019, 13:45
Репутация: 34
Настоящее имя: Сергей
Контактная информация:

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

Сообщение Мастерю »

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

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

Сообщение selenur »

Мастерю писал(а):
selenur писал(а):Под линуксом работает с применением wine, но есть некоторые косяки с окном предварительного просмотра, но без него вполне себе работоспособный вариант.
А на виртуалке, к примеру на ХР, не в курсе как будет работать?
Из-за одной сторонней библиотеки пока требуется .NET 4.0 из-за чего в ХР не должно вроде работать, но позже избавлюсь от неё и вернусь возможно на .NET 2.0
Мой сайт: 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 »

Выложил новую версию 3.3.0.33: http://selenur.ru/?page_id=1182
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Мастерю
Мастер
Сообщения: 520
Зарегистрирован: 17 фев 2019, 13:45
Репутация: 34
Настоящее имя: Сергей
Контактная информация:

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

Сообщение Мастерю »

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

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

Сообщение selenur »

Мастерю писал(а):
selenur писал(а):Из-за одной сторонней библиотеки пока требуется .NET 4.0 из-за чего в ХР не должно вроде работать
У меня на одной машине под ХР стоит NET 4.0 Ext. По крайней мере, он поставился и то приложение (уже не помню для чего было нужно), которое потребовало этот NET работает.
ну тогда должно работать...Значит показалось что в ХР не работает 4 .NET...
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Курдль
Мастер
Сообщения: 2174
Зарегистрирован: 20 мар 2018, 16:55
Репутация: 282
Настоящее имя: Курдль Энтеропийский
Откуда: Msk
Контактная информация:

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

Сообщение Курдль »

selenur писал(а):Выложил новую версию 3.3.0.33
Спасибо! Непременно испытаем ;)

А как Вам такой челендж на будущее? (нанесение паяльной пасты на контактные площадки)
5:49 на видео
https://youtu.be/VWi9GUzY1fY?t=349
Мой сайт: https://cnc-hobby.ru
Ответить

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