Получение нужного GCode

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Получение нужного GCode

Сообщение sinys »

Привет,
Делаю аля "швейный автомат".
Имею перемещаемое поле на шаговиках + шаговик на вал швейной машины (далее добавлю датчик для позиционирования).
Что требуется программно: перегонять рисунок из кривых в GCode примерно следующего содержания:
Едем в x1-Y1
Крутим Z на 360
Едем в x2-Y2
Крутим Z на 360
и т. д.
Расстояние от x1-Y1 до x2-Y2 1.5-2мм (это расстояние стежка) желательно настраивать конечно.
Точку начала хотелось бы выбирать.

Может ли мне GCodeTools формировать такого рода код или как мне его проще всего генерировать из вектора?
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2949
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 432
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

Re: Получение нужного GCode

Сообщение Rom327 »

Тут видимо подойдет программа Сергея "конструктор G-кода" http://www.cnc-club.ru/forum/viewtopic. ... 35#p479435.
В правилах создания кода надо прописать, что каждую вторую строчку вставляется значение А360 - поворот вала на 1 оборот:
X0 Y0 G1 F***
A360
X0 Y1,5
A360
X0 Y3
A360
как то так....

В любом случае, стоит переговорить с автором этой замечательной программы...
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
Аватара пользователя
xenon-alien
Почётный участник
Почётный участник
Сообщения: 4510
Зарегистрирован: 01 янв 2013, 13:13
Репутация: 920
Настоящее имя: Daniel
Откуда: Закарпатская обл. Украина
Контактная информация:

Re: Получение нужного GCode

Сообщение xenon-alien »

Rom327 писал(а):Тут видимо подойдет программа Сергея "конструктор G-кода" http://www.cnc-club.ru/forum/viewtopic. ... 35#p479435.
В правилах создания кода надо прописать, что каждую вторую строчку вставляется значение А360 - поворот вала на 1 оборот:
X0 Y0 G1 F***
A360
X0 Y1,5
A360
X0 Y3
A360
как то так....

В любом случае, стоит переговорить с автором этой замечательной программы...
Только не стоит забывать что для какой системы координат (СК) будет писаться код.
А то ось "А" после первого оборота вообще не повернется в абсолютной СК.
А в относительной СК повернется выше написанный пример.
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2949
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 432
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

Re: Получение нужного GCode

Сообщение Rom327 »

xenon-alien писал(а):
Rom327 писал(а):Тут видимо подойдет программа Сергея "конструктор G-кода" http://www.cnc-club.ru/forum/viewtopic. ... 35#p479435.
В правилах создания кода надо прописать, что каждую вторую строчку вставляется значение А360 - поворот вала на 1 оборот:
X0 Y0 G1 F***
A360
X0 Y1,5
A360
X0 Y3
A360
как то так....

В любом случае, стоит переговорить с автором этой замечательной программы...
Только не стоит забывать что для какой системы координат (СК) будет писаться код.
А то ось "А" после первого оборота вообще не повернется в абсолютной СК.
А в относительной СК повернется выше написанный пример.
Можно обмануть швейный автомат: задать вращение на 90 градусов, а фактически вал провернется на 360.... :hehehe:
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Получение нужного GCode

Сообщение selenur »

В моей программе сформировать g-код нужной формы вполне возможно, но есть нюанс, который заключается в том что например отрезок длиной 20 мм, нужно будет разбить на более мелкие отрезки по 1.5-2мм.
Добавить такую возможность конечно могу, но ближе к выходным.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

selenur писал(а):Добавить такую возможность конечно могу, но ближе к выходным.
Большое Вам спасибо, с нетерпением жду.

Основное это конечно разбиение отрезков, но помимо этого есть куча хотелок :)
Хотелки, которые хотелось бы учесть в будущем:
1) Компенсация последнего стежка в фигуре. То есть шли мы 2мм-2мм-2мм-остался последний стежок на 0.3мм, лучше сделать крайний стежок 2.3 мм чем мельчить, но если крайний стежок 1.7мм, то лучше сделать его отдельны, а не 3.7мм. То есть надо возможно смотреть остаток и если он скажем <50% то добавляем его в прошлый стежок, если >= 50%, то формируем крайний меньшего размера.

2) Закрепка - это когда первый и последний стежок в фигуре несколько раз повторяется чтобы не распустилась нитка, то есть абстрактный код будет такой
for i=0;i<4;i++
{
x1-y1
A360
x2-y2
A360
}
x3-y3
A360
...
+ в конце цикл для последнего стежка

3) Хотелось бы выбирать точки начала для каждой фигуры. Так как когда фигур несколько, то нитка может мешать для формирования новой фигуры и использоваться менее оптимально. Попытался описать на рисунке.

Повторюсь что сейчас самое важное это разбиение отрезков. Остальное будем дальше думать.
Вложения
оптимально - не оптимально (3086 просмотров) <a class='original' href='./download/file.php?id=153259&sid=d9054e0a38d933c98d9bcd1667812f40&mode=view' target=_blank>Загрузить оригинал (20.7 КБ)</a>
оптимально - не оптимально
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

Думал может как-то через пунктирную линию получится отскочить, но то ли пунктир не сохраняется в dxf, то ли inkscape не умеет его туда сохранять.
А GСodeСonstructor не понимает svg похоже :(
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

Кажись решил проблему отрезков без доработки программы. Но в программе глюков конечно много.
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2949
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 432
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

Re: Получение нужного GCode

Сообщение Rom327 »

Ну так всем расскажи!
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

Рисую мелкими отрезками :)
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2949
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 432
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

Re: Получение нужного GCode

Сообщение Rom327 »

И чего, шьет? Выложи видео, очень интересно!
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

Не так быстро, еще и механика и программная часть в процессе построения.
Например вопрос по GCODE, написано что для G1 можно указать скорость через F, а как задать скорость 1 раз? Чтобы для X-Y например 100, а для Z 200 скажем один раз в начале программы задать и все.
Аватара пользователя
Rom327
Почётный участник
Почётный участник
Сообщения: 2949
Зарегистрирован: 03 апр 2015, 13:23
Репутация: 432
Настоящее имя: Роман
Откуда: Подольск
Контактная информация:

Re: Получение нужного GCode

Сообщение Rom327 »

А никак! Если в начале программы задать скорость G1 F500, то вся программа будет выполняться на этой скорости, пока не встретится следующая G (0 или 1).
Так что программа будет выглядеть так:
G1 F500 X0 Y0
G1 F2500 A360
G1 F500 X0 Y1,5
G1 F2500 A360
G1 F500 X0 Y3
G1 F2500 A360

или

G1 F500 X0 Y0
G0 A360
G1 F500 X0 Y1,5
G0 A360
G1 F500 X0 Y3
G0 A360
Это сугубо мое мнение, могу и ошибаться...
https://vk.com/rom327
GRBL настройки: http://blogandbux.blogspot.com/2018/07/ ... revod.html
G коды: http://3d-stanki.ru/spravochnik/program ... stankov-2/
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

ОК, а как в gcode будет: Едь в такую-то сторону пока не упрешся в концевик и это будет твой дом?
И еще несколько вопросов по LinuxCNC (я вообще полный новичек): я вроде настроил конфигурацию в step Master (задал еденицы мм), запустил конфигурацию, жму кнопки ехать и смотрю он мне координаты показывает не так как проехал, то есть проехал он скажем 3см, а координаты показывает X2.01, шлю команду G1 X2 F100, а он вместо того чтобы проехать 2мм, едет на 3 см. Координаты разве не в мм должны быть если я в конфигурации указывал мм? Что-то с конфигурацией или что я сделал не так?
И третий вопрос: допустим мне потребовалось руками прокрутить вал швейной машинки, но его держит двигатель, есть ли способ без отключения всего питания снять удержание двигателем?
sinys
Кандидат
Сообщения: 92
Зарегистрирован: 05 сен 2016, 15:43
Репутация: 0
Настоящее имя: Иван Петров
Контактная информация:

Re: Получение нужного GCode

Сообщение sinys »

С координатами разобрался, осталось с домами разобраться.
Ответить

Вернуться в «LinuxCNC»