Graffiti-cnc Треугольная система координат

Намоточные, сверлильные, электроэррозионные и другие станки с ЧПУ.
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Ну что тут можно сказать? Быстро все получилось.
Просмотрел я код в Gedit (с подсветкой синтаксиса, конечно). Вроде как действительно прямые рисует короткими отрезками. По координатам сложно сказать прямые ли... Мозги к такой системе координат не привыкли. И это радует!
Новую ревизию можно брать в ее постоянном месте?
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

:lamp_on: Вот мы и подошли к расчету по физике. Заметьте, что спрей не меняет направлений движения резко. Он всегда делает паузу между отдельными элементами рисунка. Отходит от уже нарисованного элемента по плавной дуге и входит в следующий элемент тоже по очень плавной траектории. В траектории ни одного угла! Может эти плавные перемещения задаются вручную еще на рисунке. Думаю, что холостые хода надо задавать еще до генерации кода. Именно эта плавность держит баллон практически без раскачиваний.
:lamp_on: Еще я заметил, что тросы не намотаны на управляющие шкивы. Они пропущены через управляющие оси как магнитофонная лента через лентопротяг. За счет этого не меняется внешний диаметр мотка. Мотка просто нет. Есть диаметр ведущего вала, скорее всего зубчатого, подобного тем, которые используются для ременной передачи в принтерах-сканерах.
:lamp_on: Кнопка спрея нажимается рычагом с реле на одном из плечей.
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Хммм на счет того, что нет ни одного угла... В принципе можно изначально разбить кривую на несколько частей. и делать входы и выходы...

На счет отсутствия мотка - с одной стороны хорошо, с другой стороны в этом случае трос должен постоянно скользить вдоль управляющего шкива, что не очень хорошо. можно сделать достаточно большие катушки и привод к ним через понижающую передачу. по идее при диаметре катушки 15 см, 100 метровый трос сделает около 200 оборотов, если ширина катушки будет скажем 3 см, то трос толщиной 0.3мм (держит 18кг на разрыв) сможет сделать около 100 оборотов. Итого получается что он сможет лечь всего в два слоя, т.е. разница диаметров всего 0,6мм. Что ничтожно мало при таких длинах шнура.

Да, новая ревизия там же - на https://code.launchpad.net/~gcodetools. ... s/develope либо bzr branch lp:gcodetools
скачайте и запустите python create_inx.py и скопирйте все получившиеся файлы в /usr/share/inkscape/extensions/ либо создайте ссылки на ниx в этой директории.
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Вот официальный сайт создателей устройства http://hektor.ch/
Документ в .pdf оттуда же.
А вот сайт плагина Scriptographer для Adobe Illustrator, который создатели устройства использовали для того, чтобы написать свой java скрипт обработки изображения. http://scriptographer.org/
Вот сам их скрипт обработки рисунка - не нашел пока.

С рабочими траекториями все ясно, а вот холостые траектории не похожи на стандартные в DXF и G-code.
Холостые идут НЕ по кратчайшей прямой к новому объекту или узлу, а с одинаковой скоростью и по плавной траектории. Прямо как самолет на посадку по глиссаде. Плавно спускается и начинает рисовать шасси на посадочной полосе. Или еще можно сравнить с полетом пчелы.
Думаю этим и достигается спокойствие спрей-блока.
Надо думать над алгоритмом холостых перемещений. :?:
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Траектория движения Гектора. Холостые - красным, рабочие - синим. (3253 просмотра) <a class='original' href='./download/file.php?id=721&sid=edef3f7ce0d567f32653f4746b42b11c&mode=view' target=_blank>Загрузить оригинал (91.75 КБ)</a>
Траектория движения Гектора. Холостые - красным, рабочие - синим.
Что мы можем заметить в этой схеме, чтобы употребить для алгоритма?

1. На подходе к "углам" знает, что нужно оторваться в угловой точке
2. Запоминает точку отрыва
3. Запоминает направление следующего вектора
4. Отрывается "в углу"
5. Продолжает движение в том же направлении, плавно переходя в петлю
6. Петля образовывается таким образом, чтобы постепенно перейти в точку отрыва в направлении, совпадающем с направлением следующего вектора.
7. Приземляется в запомненной точке отрыва
8. Рисует до следующего угла.

Радиусы петель бывают разные. Видимо для экономии.
И НИ ОДНОГО РЕЗКОГО ДВИЖЕНИЯ!
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Есть в G-code tools блок, который занимается вычислением холостого хода?
Хочу попробовать его сам. Каким из редакторов кода лучше воспользоваться?
Вы лично в каком работаете?
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Извиняюсь, что долго не отвечал в субботу был на свадьбе и все воскресенье отходил от этого :).

Я пользуюсь Gedit'ом.
В нем у меня включены опции:
Показывать номера строк
Подсвечивать текущую строку
Подсвечивать соответствующие скобки
Включен автоматический отступ
И выключен перенос строки.
Также я дополнительно поставил модуль замены по регулярному выражению, хотя последнее время им не пользуюсь.

Собственно холостой проход выполняется в строчке 4651-4653.

Но начать имхо нужно с дополнительного разбиения кривой. Для начала нужно определить точки в которых нужно разбиение.
У кривых есть характеристика кривизны (curvature), в тех точках где кривизна больше определенного значения, разбиваем кривую. Также разбиваем во всех острых углах. Но что делать с теми участками где на всем протяжении кривизна большая?

Сейчас присоединю картинку чтобы было понятно.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Вот иллюстрация
Вложения
0115 gcodetools grattiti.svg.png (3249 просмотров) <a class='original' href='./download/file.php?id=722&sid=edef3f7ce0d567f32653f4746b42b11c&mode=view' target=_blank>Загрузить оригинал (31.32 КБ)</a>
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Отвечаю мимолетом, потому что спешу на "вылет".
Я понял и без рисунка. Почитайте брошюрку в .pdf. Именно почитайте. Из нее понятно что, достаточно прерываться только в углах. Острых, тупых, прямых... Да и по схемам траекторий видно, что нигде нет выходов и входов в кривые, через "петлю". Даже "малорадиусные" кривые обрабатываются цельно.
Так что можно над этим особо не задумываться.
А вот момент о постоянной линейной скорости спрея - вот где интересно!!!
Разница в линейной скорости перемещений вверху и внизу рисунка - вот где песня программинга!
Там - на пересечении физики и математики! Линейных и угловых скоростей!
В верхней части рисунка линейная скорость спрея быстрее (при постоянной угловой движков).
Я уже пишу программку, которая создает двумерный массив 1000х1000, задавая каждому значению массива, значение равное сумме гипотенуз (радиусов). Потом из этого массива создается пиксельная матрица в градациях серого. Очень мне хочется увидеть это ч.б. "фото"! Формулы потом пригодятся для задания скоростей движков, в зависимости от точки, где находится спрей.
Сдается мне, что только с параметрическим кодом все будет работать. Ведь в разных частях рисунка скорости движков должны быть разные. Какие именно - будет ясно из массива.
Если в G-кодах параметр задающий скорость вращения движков? Даже если нет, то можно решить этот момент задержками, между шагами. Задержки между шагами привязать к сумме длин радиусов. Пока еще не чувствую через какую именно зависимость. Явно только, что не линейную.
Логично? ;)
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Хе-хе, а вы не заметили, что в приложенном мной Gcode в каждой строчке стоит F с разными величинами - это и есть скорость перемещения, она вычисляется автоматически в зависимости от положения баллончика.

Фактически G01 - в прямых координатах это отрезок AB, предположим, что в треугольных координатах этот отрезок переходит в A1B1. Тогда для сохранения постоянной линейной скорости необходимо двигаться со скоростью Feed = Feed1*|AB|/|A1B1|, где Feed1 - желаемая скорость, а |AB| и |A1B1| - длины отрезков.

Эх... нужно написать просмоторщик...
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Думал, что нельзя пренебрегать и реактивным моментом по оси Z в разных частях рисунка, но швейцарцы на этот счет молчат в своей брошюрке. Странно... Но видимо этим можно пренебречь на этих длинах радиусов и с этой массой баллона, которая тоже кстати меняется в зависимости от расхода краски. Видимо уравнивается. В начале баллона больше давление, но и краски полон. В конце - меньше давление, но и краски меньше.
Ну что делать?... :roll: Видимо, можно пренебречь...
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Вот это да! Я то думал... ЧТО ЭТО ЗА ТРЕТИЙ ПАРАМЕТР?
Значит такая простая линейная зависимость?
Надо учить G-коды... Вот молодец! Уже все продумано, оказывается!
Я в приятном шоке! :o
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Ну она конечно не такая простая, но в пределе она будет именно такой. Таким образом, чем меньше мы выберем начальное дробление кривой, тем точнее получим рисунок.

А что сильный момент от баллончика получается? А при разном количестве краски толщина рисунка не изменится?
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Если б баллон был вверх ногами - эффект думаю был бы заметнее. А вот по кол-ву краски... думаю тоже малозаметно. Не слишком большая разница в давлении. Надо перечитать брошюрку на предмет этого. Хорошая все - таки брошюрка. Даже кодом в Java поделились.
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Начал писать просмоторщик... Завтра наверное допишу и покажу.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Есть предложение обсудить форму плавного входа и выхода с траектории.
Какие я вижу варианты:
0116 gcodetools graffiti.png (3264 просмотра) <a class='original' href='./download/file.php?id=723&sid=edef3f7ce0d567f32653f4746b42b11c&mode=view' target=_blank>Загрузить оригинал (22.42 КБ)</a>
Сверху простые угол и две разнесенные кривые,

А вот снизу имхо самый сложный вариант, кривые находятся достаточно близко друг к другу. Слева вариант решения ребят из Гектора, справа возможно более правильный вариант, т.к. убраны лишние ускорения.
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Да, заметил в брошюрке траектории подобные рисунку 3. Простите за невнимательность :oops:
Бесспорно ясно, что Ваш правый вариант - единственно подходящий. Хоть это и увеличивает "холостые пробеги", но скажем "Нет!" кривым с радиусом меньше, чем Х!!!
В рабочих ходах придется их не употреблять, в холостых - обходить.
Чему равен Х? Можно измерить по их картинкам. Можно доказать экспериментально.
Где взять такие длинные ремни? Ума не приложу. :roll:
В Европе должны быть, по идее...
Мнение автора может не совпадать с мнением редакции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Сделал авторазбиение на острых углах. Острый угол <=> sin > 0.01.
Теперь на очереди соединение и просмотр...

А какие характеристики важны для ремней? Если нужно чтобы был плоский и не тянулся можно взять плоскую капроновую стропу. Они бывают разных размеров, от 5 до 50 и более мм шириной, по длине не ограничены, правда может быть жестковатой.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Треугольная система координат

Сообщение Nick »

Кое-какие новые результаты:

Написал просмоторщик, правда пока примитивный - в том же директории, к который сохраняется Gcode, создается png файл с изображением референсных точек и траектории движения баллончика. В форме можно задать параметр emmit - который определяет плотность точек для проверки равномерности передвижения.

Итак первая картинка - буква G с параметром max_segment_length = 100.
Слева преобразованная кривая с выделенными контрольными точками, справа траектория баллончика. Можно заметить, что горизонтальные прямые прогнуты вниз. Это результат преобразования в треугольные координаты, о котором я писал раньше. Результат не очень впечатляет, но обратите внимание на последующие картинки ;).
Если присмотреться к траектории, то видно, что равномерность распределения точек хорошая значит движение будет равномерным.
0120 gcodetools graffiti test.png (3255 просмотров) <a class='original' href='./download/file.php?id=724&sid=edef3f7ce0d567f32653f4746b42b11c&mode=view' target=_blank>Загрузить оригинал (41.97 КБ)</a>
Вторая картинка - буква G с параметром max_segment_length = 10.
Все тоже самое, видно, что кривая стала гораздо глаже.
0121 gcodetools graffiti test.png (3255 просмотров) <a class='original' href='./download/file.php?id=725&sid=edef3f7ce0d567f32653f4746b42b11c&mode=view' target=_blank>Загрузить оригинал (42.3 КБ)</a>
Третья картинка - буква G с параметром max_segment_length = 1.
ИМХО вполне приемлемый результат :).
0122 gcodetools graffiti test.png (3255 просмотров) <a class='original' href='./download/file.php?id=726&sid=edef3f7ce0d567f32653f4746b42b11c&mode=view' target=_blank>Загрузить оригинал (50.77 КБ)</a>
Теперь дело за соединениями...
Аватара пользователя
DMexico
Опытный
Сообщения: 149
Зарегистрирован: 13 мар 2010, 21:39
Репутация: 7
Откуда: Киев
Контактная информация:

Re: Треугольная система координат

Сообщение DMexico »

Да, правда, прогиб горизонтальных прямых заметен.
Это тот же эффект, как при рисовании эллипса с помощью нити и булавок? Только в меньшем масштабе.
Просмотрищик переводит "треугольные" координаты в прямоугольные и рисует точками?
Конечный результат на третьей картинке - впечатляет!
Холостой ход не отображает? Было бы интересно посмотреть на траекториии.
Точки отмечающие концы сегментов слабо заметны. Может другим цветом их сделать?
Что имеете ввиду под соединениями? :roll:
Мнение автора может не совпадать с мнением редакции
Ответить

Вернуться в «Прочие станки»