О так называемом Z Wobble

Именно этим забавным словом буржуйские коллеги называют волнообразные дефекты на вертикальных стенках, выглядящие как будто деталь во время печати медленно раскачивалась. Существует множество теорий объясняющих этот феномен, и многие из них выглядят довольно странно, а предлагаемые сообществом методы устранения представляют собой какое-то полное вуду. Он может таинственно исчезать и так же таинственно появляться, и на борьбу с ним (и сочинение конструкции, в которой он не проявлялся бы никогда) мы потратили целых полгода, которые очень сильно нас вымотали и чуть было не заставили бросить весь проект окончательно.

Все потому, что как причин, так и способов лечения этого дефекта существует несколько одновременно, и мы имели дело со всеми сразу.

Толщина слоя 0.4. Было время и такой уровень искажений мы считали умеренным.

Толщина слоя 0.4. Было время и такой уровень искажений мы считали умеренным.

В общем случае, Z wobble происходит не от пошатывания головки над столом, а по совершенно другой причине — если поэкспериментировать, вы обнаружите что масштаб искажения усиливается по мере того как уменьшается толщина слоя, то есть как раз когда вы хотите повысить точность и качество печати, и становится почти незаметным когда толщина слоя повышается. Собственно смещения же слоев друг относительно друга при этом почти никогда не наблюдается, если только у вас сопло не болтается в каретке. Корнем проблемы, таким образом, является нерегулярность перемещения головки по оси Z, причем обычно, нерегулярность циклическая.

Слайсер, который режет модель на слои и исчисляет количество пластика которое должно быть выдавлено, понятия не имеет о том, сколько пластика было выдавлено на самом деле, прилип ли он, и что там вообще произошло. Поэтому, количество пластика на сантиметр нити, которое он приказывает принтеру выдавить на каждый слой, всегда постоянно.

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

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

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

1. Нерегулярность вращения шнеков

В любой машине в которой ось Z перемещается более чем на одном шнеке встает вопрос о том, как, собственно, их крутить одновременно, да еще строго синхронно. В случае конструкции в которой шнеки соединены шкивами, посаженными на один ремень, как в Urd,1 всегда возможна эксцентричность — несовпадение дырки в шнеке с фактическим центром шкива.

Поскольку вращает эти шкивы один и тот же закольцованый ремень, с заведомо регулярными зубчиками, то в один и тот же момент времени угловая скорость вращения шнеков окажется разной, а следовательно, головка будет раскачиваться — с одного из углов она окажется поднята чуть выше чем с другого. На отклонении кончика сопла по горизонтали это почти не скажется, если только от не торчит оттуда сантиметров на двадцать, а на его высоте сказывается очень даже.

Устранить эту причину можно более тщательным изготовлением шкивов2 или подгонкой их на токарном станке, но это помогает не всегда. Подозрительно при этом то, что эффект описан и для аппаратов с независимым приводом шнеков, когда каждый из них вращается отдельным мотором — но это неплохо объясняет теория №2:

2. Нерегулярность самой резьбы

Если когда-то, в глубокой древности, основным способом получения резьбы на металле были плашки, токарные станки, или иной режущий инструмент, то сейчас основным способом получения резьбы является накатка. То бишь, стальной пруток засовывают между нескольких накаточных колес с выступами и с усилием прокручивают эти колеса. Резьба получается прочнее, как если бы ее ковали, но имеет один интересный недостаток — а именно, пруток почти никогда не попадает в машину строго прямо. Накаточные станки бывают разные, но во многих случаях это приведет к тому, что резьба окажется немножко скошена, и при движении по ней вверх, гайка будет слегка покачиваться. Если шнеков больше одного, то несовпадение наклона резьбы по фазе на двух различных шнеках — даже изготовленных из одного и того же куска шпильки — приводит к тому, что поднимается то один угол каретки Z, то другой.

Люди, собирающие различные мендели и их потомков, периодически говорят, что шпильки надо выбирать из большого их количества, но это ж никаких шпилек не напасешься. Частично избавиться от этой причины, как и от предыдущей, кстати, можно, тщательно подгоняя фазу вращения каждого из шнеков, чтобы отклонения в резьбе взаимно гасили друг друга, на что можно угробить не одни сутки. При первом же чихе, шнеки могут расходиться по фазе, особенно в системах с двумя моторами Z, после чего цирк — в буквальном смысле этого слова, потому что они круглые — начинается сначала.

3. Биения самих валов.

Это ситуация, когда ось вращения самого шнека не совпадает с его геометрической осью. Причин масса — от неверной центровки на валу двигателя или в подшипнике, до банальной кривизны, избежать которой при транспортировке или изготовлении шнека довольно тяжело. Для борьбы с этим применяется множество зловредных систем, которые в основном подпружинивают гайки таким образом, чтобы отклонения их по горизонтали не отгибали головку — но их эффективность сомнительна,3 и что характерно, в системах с одним шнеком даже видимые глазом биения не порождают сколько-нибудь заметных искажений толщины слоя. В отличие от первых двух причин, вызванные этой причиной искажения выравниванием шнеков по фазе не убираются и требуют обычно полной замены шнека.

Итого, по первым трем пунктам можно сделать вывод, что корнем зла является именно наличие нескольких винтовых передач, совокупность циклических дефектов которых и дает этот самый Z Wobble эффект, а расхождение этих дефектов по фазе определяет силу, с которой он проявляется. Возможно, зависимость между проявлениями эффекта и количеством шнеков имет степенной характер, но это, надеюсь, вычислят люди более подкованные в математике и складывании колебаний чем мы.

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

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

И кстати о подшипниках: авторы менделеидов ничтоже сумняшеся зажимают шнек в подшипнике двумя гайками… и тем самым обеспечивают ему гарантированный наклон в пару градусов. Виновата в том резьба на шпильке или на гайке точно сказать трудно, но факт в том, что зажать таким образом подшипник ровно без особых ухищрений практически невозможно, так что имейте это в виду. Не говоря уже о том, что размеры отверстия в подшипнике и шпильки никогда не совпадают идеально, там всегда найдется зазор в несколько десятых долей миллиметра, что добавляет эксцентричности и требует отдельных танцев с бубном. Мы боролись с этим, обтачивая две гайки под конус, но даже это не гарантирует результатов, поскольку резьба в самой гайке выполняется со значительными допусками.

4. Циклические температурные искажения

Это грабли отдельные, и их мы нашли уже ближе к концу, когда стало понятно, что после всех проведенных манипуляций и конструктивных изменений, искажения все еще есть — но уже не имеют ярко выраженной регулярности и берутся совершенно непонятно откуда. Где-то на этом этапе мы уже собирались было все бросить, но тут меня осенило: На свете нет ничего, что не поддается температурному расширению.

Искажения толщины слоя вызванные термальным расширением конструкции.

Искажения толщины слоя вызванные термальным расширением конструкции.

К этому моменту мы окончательно перешли на нагреватели столов, вытравленные на фольгированом текстолите. Прошивки, которыми мы тогда пользовались, обеспечивали гладкую термостабилизацию для экструдера, но для стола ограничивались алгоритмом гораздо более простым — если заданная температура не достигнута, включить нагреватель на полную мощность. Если достигнута, то выключить.

В момент когда нагреватель стола включен, текстолит, жестко закрепленный в четырех точках по углам, выгибается дугой, потому что медный его слой расширяется сильнее чем сам текстолит.4 Этого достаточно, чтобы приподнять алюминий и сплющить один-два слоя детали. После этого, с некоторым запозданием датчик сообщает о том, что расчетная температура достигнута, и нагреватель выключается, а стол, постепенно остывая, опускается обратно. Через некоторое время, его температура опускается под нижний порог, прошивка снова дает на него полную мощность и цикл повторяется.

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

5. Нецелое деление толщины слоя на количество шагов

Эта теория, как мне кажется, относится уже к области вуду, но не привести ее нельзя, потому что надо же что-то покритиковать. Суть теории состоит в том, что поскольку шаговые двигатели не могут находиться в промежуточных состояниях между минимальными шагами на которые их штатный шаг делит контроллер, или могут соскакивать на целые шаги под нагрузкой, некоторые слои неминуемо окажутся тоньше чем другие, потому что их толщина не делится нацело на длинну минимального вертикального перемещения головки.

Что в общем верно, но само по себе это не может породить эффектов Z Wobble, что доказывается достаточно просто: Ни в одной из распространенных на сегодняшний момент кинематических схем трехмерных принтеров на оси Z не применяется повышающая передача. Если передаточная система вообще применяется, и мотор не вращает шнек непосредственно, эта система всегда понижает количество оборотов шнека на один оборот мотора. Конкретно в Urd, фактическое минимальное перемещение по оси Z было равно 0.001(1)мм, что даже при слое толщиной в 0.1мм составляет лишь ~1% его толщины. Дать заметных глазом искажений такая ошибка просто не может.

Изменение толщины слоя при этом может внезапно вылечить проблему — но по совершенно другой причине. Поскольку искажения вносимые неидеальностью подъема Z имеют циклический характер, изменение толщины слоя может привести к тому, что пик этих искажений окажется между положениями головки на которых по факту выдавливается пластик, в результате чего эффект уменьшится или исчезнет.

И чем все кончилось…

Нынешняя кинематическая схема с одним валом Z вращаемым мотором непосредственно совершенно не склонна к подобным искажениям.

Нынешняя кинематическая схема с одним валом Z вращаемым мотором непосредственно совершенно не склонна к подобным искажениям.

Единственный способ обеспечить отсутствие такой проблемы раз и навсегда — это поднимать ось Z только одним шнеком и исключить заодно ее температурные причины. Если с температурой все было просто,5 то отказ от двух шнеков потребовал полного изменения кинематической схемы.

Сначала мы попытались в очередной раз решить проблему нахрапом и понадеялись на то, что ось X можно просто поднимать за один край. Однако эти надежды не оправдались — в любой вариации кинематической схемы в стиле Менделя, с кареткой Z поднимаемой за один угол на нескольких направляющих, люфт линейных подшипников и изгибы рамы приводили к тому, что каретку просто клинило. Возможно, этого можно избежать в цельнометаллической конструкции, но изготовить такую за разумные деньги было нетривиально.

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

После длительных размышлений над различного рода вариантами, в которых мы дошли даже до использования стальных канатиков, мы вернулись к тому, с чего начали — перемещению стола под перемещающейся по Z печатающей головкой, которая, конечно же, слегка отгибается вниз, потому что закреплена на двух направляющих в четырех точках, но зато величина ее отклонения всегда постоянна, и компенсируется выравниваем углов стола по вертикали.

Это потребовало некоторых других уступок, в том числе некоторого уменьшения рабочей зоны, но в результате получилась самая компактная конструкция из всех что мы когда-либо собирали.

  1. Или Darwin и Makerbot Cupcake/Thingomatic, где их вообще четыре штуки…
  2. Даже готовые шкивы чаще всего поставляются без дырок, как ни странно, а просверлить дырку точно там где надо может оказаться сложнее чем кажется.
  3. Мы пробовали по всякому!
  4. Особенно если вы заказали его из двухстороннего текстолита, и оставили верхнюю поверхность стола фольгированной для лучшего распределения тепла, что я собственно и сделал…
  5. Два дополнительных винта, скрепляющие стол в середине, полностью избавляют от этого недостатка раз и навсегда. Ну а в последних прошивках, для столов тоже предусмотрен PID-контроль.
  • руслан

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

  • Очень похожие конструкции оси Z предлагали в свое время, когда Дарвинов еще не было, они двигались на рыболовной леске наподобие того как перемещаются элементы чертежного кульмана — от них отказались потому, что винт-гайка была проще в изготовлении. Мы рассматривали конструкции на стальных канатиках в этом роде (и даже купили канатик на пробу) но так и не собрали. Причиной по которой мы не стали связываться с ними были в основном в том, что мы не можем гарантировать что там ничего и нигде не будет проскальзывать, растягиваться и отваливаться, а в случае если у нас несколько шнуров, не можем гарантировать что они будут наматываться с одинаковой и постоянной скоростью, т.е. что систему не будет при подъеме перекашивать. При наших технологических возможностях и ограничениях по себестоимости, на одном винте выходит проще и надежнее, а сколько времени и денег придется угрохать, чтобы отладить систему на шнурах — неизвестно.

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

  • EugieADeef

    Добавлю свои 5 копеек: при подобной системе c огромной долей вероятности начнут сказываться малейшие дефекты шкивов и малейшие изменения толщины тросика, что приведет все к тому же раскачиванию головки. Если на ось Z даже температурное расширение влияет, и это при колебаниях температуры в несколько градусов! К тому же все мои попытки хоть сколь-нибудь органично вписать подобную систему в конструкцию окончились полной ерундой — выходит громоздко, сложно, неоптимально и некрасиво. То есть в принципе это возможно, но ИМХО просто не нужно.

  • Михаил Слободских

    Не совсем понял на чем именно вы остановились ? 1 мотор на Z ? можно фотку всего принтера с учетом совершенствований ?

  • 1 мотор, 1 вал Z.

    Вообще в соседнем постинге этих фоток довольно много.