Замена рывка на смехотворно высокое ускорение?

После череды одной проблемы за другой с классическим рывком и отклонением перехода в Марлине и понимания того, что вся математическая модель для них обоих довольно фиктивна (как я понимаю, нет ничего, что удерживало бы рывок от соединений нескольких крошечных сегментов от накопления до неограниченного почти мгновенного скачка скорости), я хочу просто полностью отключить рывок (установить его на ноль). Но, конечно, это дало бы очень медленную печать.

Однако мне интересно, имеет ли смысл (и если да, то как) пытаться вычислить и использовать значение ускорения достаточно высокое, чтобы достичь того, чего пытался достичь рывок, без него.

Механически, если принтер может справиться с данным рывком без пропуска шагов или вредной вибрации, он должен быть в состоянии справиться с ускорением достаточно высоким, чтобы достичь точно такого же шага на углах/переходах. Однако, возможно, ограничения ускорения также включают ток в двигателях, тепловыделение в двигателях/шаговых драйверах или другие факторы, которые делают "мгновенное" экстремальное ускорение нормальным, но устойчивое экстремальное ускорение плохим. (Конечно, без экстремальных максимальных скоростей экстремальное ускорение должно иметь место только на мгновение, в некотором смысле пропорционально тому, насколько рывок вступает в силу.)

Я сошел с ума, думая об этом? Если нет, то какая была бы хорошая модель для определения подходящего ускорения?

, 👍1

Обсуждение

Не asnwer, но для информации: рывок-это трюк, используемый Марлином, чтобы справиться с ограниченной вычислительной мощностью, поскольку он упрощает расчет ускорения. Микропрограммное ОБЕСПЕЧЕНИЕ Klipper, не имеющее ограничений вычислительной мощности, так как оно работает на главном компьютере, не нуждается и не использует концепцию рывка, а вычисляет чистые профили ускорения. См. https://www.reddit.com/r/3Dprinting/comments/9zy863/what_does_the_jerk_setting_in_marlin_do/ead1bie/ и https://github.com/KevinOConnor/klipper/blob/master/docs/Kinematics.md, @FarO


1 ответ


1

Чтобы оценить, возможно ли это, необходимо понять, что следование по криволинейной траектории с нулевым рывком (в классическом смысле рывка) требует остановки и перезапуска в каждой точке соединения в кусочно-линейном приближении кривой, которое происходит в gcode. Это происходит потому, что нет способа непрерывно ускорять/замедлять отдельные оси через негладкий угол. Поэтому парадоксально, что по мере того, как число сегментов, аппроксимирующих кривую, убывает до бесконечности, скорость убывает до нуля. Если длина какого-либо одного сегмента ограничена ниже постоянной, то ускорение может быть выбрано достаточно высоким, чтобы гарантировать, что сколь угодно близко к 100% сегмента находится на полной номинальной скорости. Например, для минимальной длины 0,1 мм, скорости 60 мм/с, достижение скорости в 10% от номинального времени сегмента (1,6 мс) потребовало бы ускорения 360000 мм/с2. Так, не бывает.

С другой стороны, с очень низким, но ненулевым (классическим) рывком, просто чтобы справиться с вопросом о гладких кривых, аппроксимированных небольшими сегментами, это может быть практично. Просто глядя на 90-градусные повороты между сегментами, достаточно длинными, чтобы бежать с номинальной скоростью, чтобы соответствовать времени, затраченному на повороты со скоростью 60 мм/с, рывком 20 мм/с и ускорением 3000 мм/с2, должно потребоваться только ускорение 4500 мм/с2 (исходное, масштабированное на 60/(60-20), чтобы учесть необходимость замедления/ускорения до/от 0 вместо 20). Это вполне разумно.

Насколько мал может быть рывок, не нарушая движения для аппроксимации гладких кривых? По мере того, как число сегментов приближается к бесконечности, нижняя граница должна идти к нулю. Для круга, аппроксимированного шагами 15°, одна составляющая изменения скорости выглядит так, как будто она может составлять около 25%, поэтому "25% номинальной скорости", по-видимому, и есть то, что вы получаете. Ой. Для 60 мм/с это 15 мм/с. Совсем не низко. Возможно, я ошибся в математике; я рассмотрю это позже. Но это не выглядит хорошо для объявления этого практичным.


,