roboforum.ru

Технический форум по робототехнике.

Автоуровень кровати: алгоритм с компенсацией кривизны

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

TedBeer » 16 июл 2015, 18:05

Какие-то предположения о толщине слоя вполне можно сделать в процессе печати. И внести поправки в алгоритм. Т.е. получаем команды перемещения с экструзией и, большинство передаваемых точек, чудесным образом находятся на Z=h1, потом смещаются на h2. Отсюда можно сделать вывод о толщине слоя в (h2-h1), потом о новой толщине (h3-h2) и т.д.
Но вот если мы печатаем без выраженных слоев, а как-бы по спирали, медленно наращивая высоту (Joris style), то получается нам нужно отслеживать сколько раз мы "наэкструзили" в каждой точке и какую погрешность уже скомпенсировали. И не просто в точке, а в окрестности точки. Т.к. у нас кроме толщины слоя имеется ширина экструзии. Мы можем печатать, например, наклонную стенку на каждом проходе немного смещая хотенд. Соответственно мы будем удаляться от измеренной точки рельефа и нужно вносить коррекцию.
Как-то всё сложно мне видится. Решаемо, но требовательно к ресурсам - памяти и вычислениям, чтобы на ходу делать нужные компенсации.

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

mkile » 21 июл 2015, 16:49

Очень похоже, что механизм устранения кривизны должен либо быть реализован на уровне слайсера, либо прошивка должна получать габариты детали и строить выравнивающую подложку, до совпадения нуля, перед началом печати рафта или основания.
Другие варианты компенсации требуют пересчета на лету, что мне кажется негативно скажется на скорости обработки. Тут уже проц пошустрее ардуины нужен.

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

setar » 23 июл 2015, 15:09

матрица поворота уже сейчас обсчитывается онлайн не сильно загружая проц apply_rotation_xyz(plan_bed_level_matrix, x, y, z);
ручной уровень с кривой второго порядка огибающей стол тоже онлайн работает mbl.get_z(x, y);
Код: Выделить всёРазвернуть
  #ifdef MESH_BED_LEVELING
    if (mbl.active) z += mbl.get_z(x, y);
  #elif defined(ENABLE_AUTO_BED_LEVELING)
    apply_rotation_xyz(plan_bed_level_matrix, x, y, z);
  #endif


не вижу сложностей совместить матрицу вращения и поправку к координате z и потоку в зависимости от высоты от реального стола.
я сейчас работаю над этим, автоуровень уже исправил
Ошибка в ветке Development в том что прямая матрица поворота используется для проекции виртуальных координат в реальные,
а реальные в виртуальные нужно переводить обратной матрицей , а они ту же используют и удивляются эффекту "airprinting"

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

mkile » 23 июл 2015, 16:17

Имеешь ввиду, что будет изменяться высота первого печатаемого слоя при кривом столе? Или просто деталь будет криво печататься с теми же буграми что и на столе?

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

setar » 23 июл 2015, 17:01

я имею ввиду алгоритм выше несколькими сообщениями: forum107/topic15618.html#p332032
этот алгоритм всплыл в мозгу как результат компиляции рекомендаций всех коллег

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

sergei24 » 27 июл 2015, 01:22

setar,
Привет что думаешь насчет такого датчика, E3F-DS30C4
На работе стоит очень точная штука, расстояние можно регулировать и не надо близко ставить к горячей поверхности.

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

setar » 27 июл 2015, 02:07

точная :) ?

Temperature influence : ±15% max. of sensing distance at 23°C in the temperature range of −25 to 65°C
Voltage influence : ±15% max. of sensing distance at rated voltage in the rated voltage ±15% range

эта штука такая же точная как и емкостные и индукционные датчики из этой темы forum107/topic14565.html
другими словами параметры плавают от печати к печати, но в рамках одного цикла вполне приемлимые.
я эти датчики сейчас использую для предварительной остановки от стекла платформы - сброс высокой скорости и медленный подход для измерения, больше применения не вижу

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

setar » 29 июл 2015, 13:16

первый шаг к реализации алгоритма сделан, это исправление текущих ошибок прошивки:
https://github.com/MarlinFirmware/Marlin/pull/2545

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

3DPrinter » 29 июл 2015, 23:03

Респект. Уже хочется нормальный рабочий алгоритм, который бы позволил нормально калиброваться на кривых платформах. Уже надоело царапать стол =)

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

sergei24 » 03 авг 2015, 01:53

setar,
Что думаешь, насчет такого https://miscsolutions.wordpress.com/min ... sor-board/
отзывы кажись неплохие.

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

sergei24 » 03 авг 2015, 21:32

roboprint писал(а):
sergei24 писал(а):setar,
Что думаешь, насчет такого https://miscsolutions.wordpress.com/min ... sor-board/
отзывы кажись неплохие.


Слегка обсуждалось это тут post332148.html#p332148
Покупать у него слегка дороговато, как мне кажется, за десяток распаянных на плате деталек с общей стоимостью от силы в $5-$10, но люди нахваливают.


Спасибо, за информацию.
Спаяю сам, только надо посмотреть что за прошивка в файлообменнике, а то их там целых 3штуки.

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

3DPrinter » 16 авг 2015, 13:34

http://www.goodluckbuy.com/ahiro-3d-pri ... ssory.html
а этого зверя кто-то курил? Что-то инфы не нашлось в инете

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

dccharacter » 17 авг 2015, 19:10

А чего там курить - стоит оптический сенсор на плате

Re: Автоуровень кровати: алгоритм с компенсацией кривизны

3DPrinter » 17 авг 2015, 19:17

тесты, отзывы, эффективность, сравнение с конкурентами
схема подключения, правки в прошивку, рекомендации по оптимальному использованию, проблемы, способы решения

да массу чего можно курить


cron
Rambler\'s Top100 Mail.ru counter