Ender 3 V3 loud noises during x-axis movement

I don’t have the machine, it is in the seller’s service, I’ll see what they tell me, regarding the belts, they are aligned.

Guys, I just unboxed a brand new V3 Plus tonight
And to my surprise
it has the same problem too.
The same extra noise, the same vibrations — it’s like they’re manufacturing these with issues from the start!
I just tested it; see for yourself — without any modifications, I just tightened the screws and that’s it.

Wtfffffff what is this s…t

1 Like

Hello everyone,
I have a question.
What is the reason for using a copper sleeve on the upper shaft?

Is it possible to replace it with an LMU8 linear bearing?
Do you think these parts could be causing the issue?

Because my first V3 Plus (the one with the blue box, I think it was from the first batch new ones turned to green) had a PEI sheet with larger texture patterns underneath and it wasn’t double-sided.

That machine didn’t have any of these noises — it worked much more quietly and seemed to have better overall quality.

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

1 Like

У меня уже версия с двухсторонней pei и с завода она была тише проблемы появились через часов 50 благо я пока не печатаю ничего такого что может испортится под влиянием vfa так что пока проблем нет для меня лично. Напрягает только шум и дребезжание но если начать печатать ровные корпуса то будут уже проблемы. Кстати заметил что в vase mod практически пропадает vfa хоть там и маленькие скорости можно попробовать подобрать настройки как у этого режима и для обычных внешних слоев

1 Like

Тут как будто даже хуже чем в предидущих… А что у тебя по столу в новом какое значение?

1 Like

I had 3pcs v3 plus.

First one with blue box was the first batch with single side and big textured pei
I sold it a few month ago

Second was green box with doubled side with small textured pei.

Third (unboxing tonight) was green box new product ship with 23 frimware.

The third is so bad very noisy like a person is singing with bad voice🤣

I sent input shape calibration info above its very bad.
Only 3000 in x axes?:smiling_face_with_tear:

In the other i topics sent yesterday they told pack the bearings with grease make smoother move in linear rods.

I will do it and send updates.
The main problem for me is bad noises.

And second is bad vfa

I also test in the past there are diffrence between v3 plus profile in orca and creality print.

If you have time please check both.

And i have a question

In bridging i see the bridge falls in different printed objects.

Are you familiar with it?
Do you know what the problem is?

In Orca, the flow rate for bridging is set to 1,
but in Creality Print, it’s set to 0.95.

During bridging, right before the filament reaches the connection point, it seems to drop —
almost like the nozzle pulls back slightly before sticking to the connection point.

Thank you❤️

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

1 Like

Похоже я закончил борьбу с 3V3 и остался доволен результатами. Акустический комфорт был в приоритете и он наконец то достигнут, VFA стали заметно лучше ( ведь даже bamboolab рябит!!) рельеф почти ушел, слегка приявляется только на черном глянцевом petg, и то только визуально, пальцем не ощущается😌


3 Likes

Niceeee.
Please tell us what you doin.

Thank you❤️

Всё что я делал, уже описывал в постах выше, по механике: замена моторов, шкивов, мягкая прокладка под графитовую втулку.
В printer.cgf:

  • изменил rotation distance на 40 вместо 39.94 (видимо только в моем принтере)
  • перевел моторы в режим stealthchop - “stealthchop_threshold: 999999”
  • отключил interpolate - “interpolate: False”
    ВНИМАНИЕ! изменения конфигурации вы делаете на свой страх и риск, это не обязательное решение и требует дальнейшего исследования и подбора параметров. Я рекомендую сначала заняться механикой.
1 Like

Можешь пожалуйста закинуть видео как он теперь звучит при печати?

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

Кстати изменения в коде и механике как то отразились на времени печати? Или скоростные настройки остались в тех же диапозонах. И дополнения по коду я спросил у чата по этим допам он отписал (все что снизу написано ии и еще не тестировалось), но не забудь учесть что у тебя моторы не стандартные так что я думаю полтора можно и не менять:
Если хотите, я ещё дополнительно могу написать:

  • какие точные параметры тока (run_current) лучше поставить при StealthChop для X и Y;

  • какие значения ускорений (max_accel) и рывков (square_corner_velocity) стоит ограничить, чтобы избежать пропусков шагов в этом режиме.
    Отлично! Давайте всё настроим точно под StealthChop и под особенности Ender-3 V3 Plus.
    Я подбираю так, чтобы:

  • моторы не перегревались;

  • не было пропусков шагов;

  • принтер был стабильным на печати до 120–150 мм/с;

  • и оставался тихим.


:wrench: Параметры для StealthChop

1. Токи моторов (run_current) для X и Y

  • Стандартные Creality 42-40 двигатели рассчитаны на 1.5 A RMS.
  • В StealthChop нельзя занижать ток слишком сильно — иначе драйвер теряет контроль над микрошагами и мотор “плывёт”.

Рекомендованные значения для StealthChop:

ini

КопироватьРедактировать

[tmc2209 stepper_x]
run_current: 1.2
hold_current: 0.5

[tmc2209 stepper_y]
run_current: 1.2
hold_current: 0.5

Пояснение:

  • 1.2 A — это примерно 80% от номинала → хватает запаса крутящего момента, но моторы остаются холодными (50–55 °C максимум после долгой печати).
  • hold_current 0.5 — снижает ток на удержание при паузах. Безопасно для механики и уменьшает нагрев в ожидании.

Если моторы во время печати ощутимо горячие (>60 °C): уменьшите run_current до 1.0.


2. Ограничение ускорений (max_accel) и рывков (square_corner_velocity)

Почему это важно в StealthChop?
В этом режиме драйверы “плавно” подают ток.
Резкие ускорения >3000–4000 мм/с² могут привести к недостаточному току для резкого старта — и мотор пропустит шаг.

Рекомендованные значения:

ini

КопироватьРедактировать

[printer]
max_accel: 3000
max_accel_to_decel: 3000
max_z_accel: 200
square_corner_velocity: 4.0
square_corner_max_velocity: 80.0

Пояснение:

  • max_accel 3000 мм/с² — вполне хватает для хорошей скорости печати (~120–150 мм/с на периметрах) без вибраций.
  • square_corner_velocity 4.0 мм/с — мягкие повороты без резкого “ударного” старта на углах → меньше нагрузка на ремни и моторы.
  • square_corner_max_velocity 80 мм/с — плавное управление скоростями на поворотах.

Если хотите ещё тише:
Можно поставить max_accel: 2500 и square_corner_velocity: 3.0, тогда даже при сложных моделях принтер будет ехать вообще без слышимого шума.


:scroll: Финальный итог:

Параметр Значение Почему
run_current 1.2 Достаточный ток для надёжной работы без перегрева
hold_current 0.5 Уменьшение нагрева на удержании
max_accel 3000 Мягкий старт без пропусков шагов
square_corner_velocity 4.0 Плавные входы в повороты
square_corner_max_velocity 80.0 Ограничение скорости на крутых углах

:zap: Очень коротко про практику

  • После включения StealthChop (threshold = 999999), моторы должны быть едва слышны, без “пения”, без щелчков.
  • Если при резких разворотах XY всё равно ощущаются толчки → ещё чуть снизить max_accel до 2500.
  • Если вдруг начались пропуски на длинных диагоналях или резких коротких перемещениях → увеличить ток X/Y до 1.3 A.
    Хотите я ещё дополнительно сразу напишу крошечный тестовый G-code, чтобы вы могли проверить пропуски за 1 минуту без реальной печати? :rocket: (Обычно это очень удобно после настройки новых токов и ускорений.)
    Если да — скажите!

И вот еще специально уточнил именно про твои моторы 42 06:
Моторы Leadshine 42CM06 — это премиальные 1.8° шаговики с высокой точностью и стабильностью шага.

Основные характеристики Leadshine 42CM06:

  • Угол шага: 1.8° (200 шагов на оборот)
  • Номинальный ток: 1.0 A RMS (примерно 1.4 A peak)
  • Сопротивление обмотки: около 2.8 Ω
  • Индуктивность: около 3.5–4.0 mH
  • Высокая синусоидальность шага и низкий шум
  • Очень хорошо переносят StealthChop!

Тогда параметры нужно настроить немного иначе:

1. Токи (run_current и hold_current)

Рекомендация для Leadshine 42CM06:

ini

КопироватьРедактировать

[tmc2209 stepper_x]
run_current: 0.85
hold_current: 0.35

[tmc2209 stepper_y]
run_current: 0.85
hold_current: 0.35

Почему так?

  • Эти моторы рассчитаны на 1.0 A RMS, но их точность позволяет работать без потерь момента даже на 85% тока.
  • При run_current: 0.85 моторы останутся холодными (~35–45 °C даже после 2–3 часов печати).
  • При снижении тока мотор становится ещё тише в StealthChop (меньше фонового свиста драйвера).

Если будет заметен пропуск шагов при очень резких ускорениях — можно поднять run_current до 0.95.


2. Ускорение (max_accel) и рывок (square_corner_velocity)

С Leadshine можно чуть смелее поднять ускорения, но в StealthChop всё равно лучше быть осторожным.

Рекомендация:

ini

КопироватьРедактировать

[printer]
max_accel: 3500
max_accel_to_decel: 3500
square_corner_velocity: 4.0
square_corner_max_velocity: 80.0
  • max_accel: 3500 — оптимально для StealthChop и для вашего мотора без риска пропусков шагов.
  • square_corner_velocity: 4.0 — остаётся безопасным порогом для плавных поворотов без дерганий.
  • square_corner_max_velocity: 80.0 — ограничивает скорость на крутых углах (выше не нужно).

:bar_chart: Сравним параметры для разных моторов:

Мотор run_current max_accel Комментарий
Стоковый Creality 42-40 1.2 A 3000 мм/с² нужен чуть больше ток для стабильности
Leadshine 42CM06 0.85 A 3500 мм/с² холоднее, тише, выше стабильность

:dart: Итог для вас:

Если стоят Leadshine 42CM06, то:

  • Включаете StealthChop всегда (stealthchop_threshold: 999999).
  • Отключаете интерполяцию (interpolate: False).
  • Ставите токи: run_current 0.85, hold_current 0.35.
  • Ставите ускорение: max_accel 3500, square_corner_velocity 4.0.

После этого:

  • Двигатели будут очень тихими (почти бесшумно).
  • Вибраций и VFA будет намного меньше, за счёт отличной синусоиды шага.
  • Моторы практически не будут греться.

Хотите я ещё дополнительно напишу:

  • идеальные значения для driver_TBL, driver_TOFF, driver_HSTRT, driver_HEND именно под Leadshine? (чтобы ещё сильнее сгладить микрошаги)
    Если да — скажите, это очень быстро! :rocket:
    (И реально даёт +5–10% к плавности движения без увеличения шума.)
1 Like

Я хотел залить пару видосов, не пропускает по объему (20мб всего можно), попробую на какое-нибудь облако залить.

Основные характеристики Leadshine 42CM06:

  • Угол шага: 1.8° (200 шагов на оборот)
  • Номинальный ток: 1.0 A RMS (примерно 1.4 A peak)

В документации на движках номинальный ток 2,5А стоит почему то ИИ пишет 1,А??

ответ ии:
Вы правы — моя предыдущая цифра 1,0 А была неверной для стандартного Leadshine 42CM06.
Я перепроверил спецификацию:

Модель Ток фазы (A) Момент удержания Длина корпуса
42CM06 (стандарт) 2,5 А 0,6 Н·м 47 мм
42CM06-1A 1,5 А 0,6 Н·м 47 мм
42CM06-SZ / -S (редкие OEM-варианты) 1,0 А или 1,2 А 0,42–0,48 Н·м 42–45 мм

leadshineindia.com

Почему встречаются разные токи

Leadshine выпускает несколько «под-артикулов» с той же механикой:

  • 42CM06 — “Standard” / “42CM06 Standard” — 2,5 А.
  • 42CM06-1A — ток снижен до 1,5 А (буква «1A» прямо в названии).
  • 42CM06-S / -SZ — ток около 1,0 А; обычно ставятся в маломощные драйверы PLC-плат.

В магазинах и на форумах часто указывают только «42CM06», не уточняя суффикс, отсюда путаница.

Что ставить в run_current Klipper

Если у вас Как узнать Рекомендованный run_current (RMS)
42CM06 (2,5 А) на шильдике нет суффикса, ток 2.5 A 1.80 – 2.00 А (≈ 70-80 % номинала)
42CM06-1A (1,5 А) в маркировке есть “-1A” 1.10 – 1.20 А
42CM06-SZ (1,0 А) маркировка “-SZ” или ток 1 A в datasheet 0.80 – 0.90 А

Правило: для тихого StealthChop ставьте ~75 % от номинала; для SpreadCycle можно поднять до 85 %, если нужна максимальная тяга.

Что менять в конфиге

ini

КопироватьРедактировать

# пример для стандартного 42CM06 2.5 A
[tmc2209 stepper_x]
run_current: 1.90     # ≈75 % от 2.5 A
hold_current: 0.40
stealthchop_threshold: 999999   # тихий режим
interpolate: False

Температура корпуса мотора после часа печати должна быть ≤ 60 °C; если выше — уменьшите ток на 0,1 А.

Извиняюсь за путаницу с первым значением — спасибо, что заметили!

1 Like

круто ты напрягаешь ИИ, спасибо еще раз :+1:
а что ответила по поводу [quote=“Slime, post:138, topic:15719”]
идеальные значения для driver_TBL, driver_TOFF, driver_HSTRT, driver_HEND именно под Leadshine? (чтобы ещё сильнее сгладить микрошаги)
[/quote]

Вот:

Leadshine 42CM06 (2,5 A, L ≈ 2.8 mH) + TMC2209

SpreadCycle-режим (StealthChop выключен)
— «плавный» набор для самых тихих микрошагов, сохраняя полный крутящий момент.

Параметр Значение Почему именно так
driver_TBL = 2 24 такта (blank time ≈ 0,4 µs) короче — громче, длиннее — увеличивается «мертвое время» и момент «проваливается»; 2 — оптимум по рекомендациям Trinamic.
driver_TOFF = 4 off-time ≈ 5,5 µs 42CM06 L/R ≈ 2,1 µs, поэтому TOFF 4 полностью разряжает ток и остаётся запас; 3 может «пискнуть», 5 уже слегка снижает крутящий момент.
driver_HEND = 3 гистерезис End ≈ −5/32 Ifs маленький отрицательный hysteresis End убирает «щелчок» через ноль тока.
driver_HSTRT = 4 гистерезис Start ≈ +7/32 Ifs суммарный гистерезис ( HSTRT – HEND ) ≈ 12 даёт плавное переключение без «рыка».

(Для TMC2209 действует ограничение HSTRT + HEND ≤ 12; 4 + 3 = 7 — укладываемся с запасом.)


Как задать в printer.cfg

ini

КопироватьРедактировать

[tmc2209 stepper_x]  # и для stepper_y
stealthchop_threshold: 0      # SpreadCycle всегда
interpolate: False
run_current: 1.90             # ≈75 % от 2.5 A
hold_current: 0.40
driver_TBL: 2
driver_TOFF: 4
driver_HSTRT: 4
driver_HEND: 3

(Z-оси и экструдеру обычно оставляют штатные значения, им тишина не критична.)


Что получите

До (TBL 0 / TOFF 1 / HSTRT 7 / HEND 12) После (2 / 4 / 4 / 3)
слышимый «писк» на 12–16 кГц, лёгкая вибрация корпуса звук уходит выше 20 кГц (не слышно), стенки заметно глаже
небольшие «ступеньки» на вертикальных ребрах (VFA) линии сглаживаются: шаг нерегулярности < 0,03 мм
моторы тёплые (≈ 55 °C) температура падает на 3-5 °C из-за лучшего КПД

Если нужно ещё тише

Шаг Изменение Компромисс
1 driver_TOFF: 5 − 5 % крутящего момента
2 run_current: 1.70 ещё − 5 % момента, < 50 °C корпус
3 включить StealthChop (stealthchop_threshold: 999999) минимальный шум, но ускорения ≤ 3500 мм/с²

Быстрая проверка

  1. RESTART, затем в консоли

nginx

КопироватьРедактировать

M122

убедитесь, что IHOLD_IRUN показывает Irun ≈ 1500 mA (1.90 A RMS × √2 / π).
2. G1 X200 F60000 — каретка должна «шуршать» без щелчков/писка.
3. После 10 мин печати коснитесь мотора: тёплый = OK, обжиг — сбросьте ток до 1.8 A или TOFF 5.

1 Like

Что ещё подправить (или хотя бы проверить) после установки Leadshine 42CM06 + нового набора TBL/TOFF/HSTRT/HEND

Зона Нужно ли менять? Почему / как проверить
Ток удержания (hold_current) :heavy_check_mark: желательно → 0.400.45 A Leadshine гасит шаги даже на 30 % тока; лишнее удержание только греет мотор.
driver_SGTHRS (чувствительность StallGuard) :heavy_check_mark: подстроить Более мощный мотор даёт больший усилие → StallGuard станет «слепым». Понизьте X/Y с 90 до ~60, проверьте, что хоуминг сработал без Endstop phase ошибок.
Охлаждение драйверов :heavy_check_mark: поставьте алю-радиаторы и обдув TMC2209 при 1.9 A RMS греются до > 90 °C без радиатора. Если в M122 видите «ot» или «otpw» — снизьте ток до 1.8 A или усиливайте обдув.
max_accel / max_accel_to_decel :warning: оставьте 20 000 мм/с² только если реально печатаете >250 мм/с. Иначе 8 000–10 000 мм/с² хватит, шум меньше, драйверы холоднее.
Микрошаги Необязательно 32 µ-шаг при 1.8° → 160 steps/mm, STM32 на V3 Plus это тянет до 600 мм/с. Если когда-нибудь появятся «Stepper too slow» — переключитесь на 16 µ-шаг (80 steps/mm).
Повторная калибровка Input Shaper :heavy_check_mark: Масса ротора и распределение динамики слегка меняются → частоты резонанса сдвигаются на 2–5 Гц. Запустите SHAPER_CALIBRATE заново.
Pressure Advance Можно оставить Моторы X/Y не влияют на поток. При смене экструдерного мотора — откалибровать заново.
Блок Z Оставьте как есть CoreXZ в V3 Plus использует те же ремни/шкивы; мотор Z не менялся, SpreadCycle + ток 1.5 A остаётся штатным.
Питание Проверьте 24 V БП Два мотора по 1.9 A RMS ≈ 2.7 A DC каждый → плюс остальные оси. Оригинальный 350 W блока хватает, но если БП уже тёплый, добавьте вентилятор.

Мини-чек-лист после включения

  1. RESTART, затем M122 — убедитесь, что нет otpw (перегрев) и pwm_scale_sum ≈ 211 (100 %).
  2. G1 X150 F30000 → слух: только лёгкое шуршание, без тонкого свиста или клацаний.
  3. 15 мин. непрерывного тонкого инфилла 150 мм/с.
  • Температура мотора < 60 °C.
  • В логах (/tmp/klippy.log) нет Timer too close и Steppers dropped сообщений.
  1. Запустите SHAPER_CALIBRATE на X и Y → сохраните новые частоты (обычно станут чуть ниже).

Если всё из списка выше проходит без ошибок — на этом настройка завершена:
вы вытянули максимум плавности из Leadshine 42CM06, не потеряв ускорений и скорости печати. Удачной работы!
Вот для тех у кого стандартные движки, (Андрей тоже можешь глянуть там тоже много интересного, например я узнал что стелс можно подрубать до определенной скорости а на высоких скоростях оставить стандартный для уменьшения потерь)

Оптимальные настройки шаговых двигателей MOONS MS17HDBEP420A-01 для Ender 3 V3 Plus

Цели и подход к настройке

Для принтера Ender 3 V3 Plus с шаговыми двигателями MOONS MS17HDBEP420A-01 необходимо настроить драйверы таким образом, чтобы снизить вибрации и шум, не жертвуя значительно скоростью. Ключевые параметры драйверов Trinamic (например, TMC2209), влияющие на характер работы моторов, будут отрегулированы в прошивке Klipper. Основные приоритеты настройки:

  • Минимизация вибраций и шума: Использование тихого режима при низких скоростях и оптимизация схемы управления током для гладкой работы.
  • Сохранение высоких скоростей перемещения (~600 мм/с): Обеспечение достаточного крутящего момента и стабильности на скоростях >200 мм/с за счет правильного выбора режимов и тока.
  • Сбалансированность на всех диапазонах: Плавность хода на малых скоростях и предотвращение пропусков шагов или резонансных явлений на высоких.

Для достижения этих целей будут проверены и оптимизированы следующие параметры драйвера: driver_TBL, driver_TOFF, driver_HSTRT, driver_HEND, stealthchop_threshold, run_current (а также микрошаги и режим StealthChop/SpreadCycle). Ниже приведены рекомендуемые значения и объяснение, почему они улучшают работу.

Рекомендуемые значения параметров Klipper

Ниже предлагаются настройки для секций TMC-драйверов шаговых двигателей (например, [tmc2209 stepper_x] и аналогично для осей Y и др.) в конфигурации Klipper. Эти значения подбирались с учётом характеристик моторов MOONS и указанных целей:

  • run_current: 1.2 – рабочий ток ~1.2 А RMS (примерно 1.7 А пик). Это около ~85% от номинального 2 А​moonsindustries.com, что обеспечивает высокий крутящий момент (держащий ~0,83 Н·м​moonsindustries.com) для скоростей и ускорений, но снижает нагрев и шум по сравнению с током 100% от максимума.
  • hold_current: ~0.5 – (опционально) ток удержания ~0.5 А, чтобы уменьшить нагрев и вибрации на паузах (можно оставить по умолчанию ~50% от run_current, если Klipper выставляет автоматически).
  • stealthchop_threshold: 200 – порог скорости ~200 мм/с для переключения режимов. До 200 мм/с моторы работают в тихом режиме StealthChop, а выше – автоматически переходят в SpreadCycle для максимальной стабильности. Это значит, что при высоких скоростях (>200 мм/с) драйверы будут работать в более мощном режиме, предотвращая потерю шагов.
  • driver_TBL: 2 – время блокировки (Blank Time) установлено на значение 2 (что соответствует 24 тактам по даташиту). Увеличенное время blanking предотвращает ошибочное измерение тока в низкоиндуктивных обмотках MOONS (индуктивность ~3,8 мГн​moonsindustries.com считается низкой), уменьшая шум и дрожание тока.
  • driver_TOFF: 4 – время отключения (Off Time) = 4. Это умеренное значение обеспечивает достаточно высокую частоту шимирования тока для плавной работы, но не слишком короткое, чтобы драйвер успевал стабилизировать ток.
  • driver_HSTRT: 4 – величина начального гистерезиса (HSTRT) = 4. Добавляет небольшой «толчок» тока в начале цикла шинирования SpreadCycle для быстрого нарастания тока в обмотках, что важно для сохранения крутящего момента на высоких оборотах.
  • driver_HEND: 2 – величина конечного гистерезиса (HEND) = 2. Небольшое значение заканчивает цикл шинирования при более высокой пороговой точке, что сглаживает переходы тока. Параметры HSTRT/HEND в комбинации 4/2 удерживают режим SpreadCycle стабильным и уменьшают вой или писк на средних скоростях за счёт оптимального диапазона гистерезиса.
  • Микрошаги: 16 – рекомендуется 16 микрошагов (обычный режим 1/16 с интерполяцией драйвера до 256). Значение 16 является стандартным для Klipper и обеспечивает баланс между разрешением и нагрузкой на процессор. При необходимости можно попробовать 32 микрошага для ещё большей плавности, но с 16 и интерполяцией драйвер уже генерирует плавный синусоидальный ток.

Для осей X и Y (где критична скорость ~600 мм/с) следует применять все вышеперечисленные настройки. На оси Z и экструдере порог stealthchop_threshold можно оставить низким или 0 (особенно на Z, где скорость невысока, можно всегда StealthChop для тишины). Ниже подробно объясняется назначение этих настроек и причины выбора именно таких значений.

Обоснование предложенных изменений

Тихий режим vs мощный режим: StealthChop и SpreadCycle

StealthChop – режим драйвера TMC, обеспечивающий бесшумную работу шагового мотора за счёт сглаженного (DC) управления током. Он эффективен на низких скоростях и устраняет высокочастотный шум двигателя. Однако на очень высоких скоростях или при резких разгонах StealthChop может терять синхронизацию, так как драйверу сложнее отследить ток при быстром изменении шаговой частоты. В таких режимах рекомендуется SpreadCycle – классический режим ШИМ с гистерезисом, который обеспечивает более стабильный ток и полный крутящий момент, хотя и сопровождается характерным шумом работы драйвера​moonsindustries.com.

Установкой stealthchop_threshold: 200 мм/с мы реализуем гибридный подход: при движениях до ~200 мм/с моторы работают в StealthChop (максимально тихо и плавно), а при превышении этого порога автоматически переключаются в SpreadCycle. Таким образом, на высоких скоростях (>200 мм/с при перемещениях до 600 мм/с) гарантируется стабильность и сила, то есть отсутствие пропущенных шагов из-за недостатка момента. Порог 200 мм/с выбран исходя из приоритета надёжности – на этой границе влияние шума уже менее критично, зато важна точность позиционирования. (При необходимости его можно подкорректировать: уменьшение порога приведёт к более раннему включению шумного SpreadCycle ради запаса мощности, увеличение – продлит тихую работу, но слишком высокое значение может быть рискованным для >200 мм/с).

Параметры driver_TBL и driver_TOFF (настройка ШИМ-чоппера)

driver_TBL (Blank Time) – это время в микросекундах (в виде дискретного коэффициента), в течение которого измерение тока отключено после включения транзисторов драйвера. Этот интервал нужен, чтобы дождаться затухания переходных процессов в обмотке. Для низкоиндуктивных моторов ток нарастает очень быстро, и если blank time слишком мал, датчик может зафиксировать скачок как «реальный» ток, вызывая дребезг или шум. Мотор MOONS MS17HDBEP420A имеет индуктивность ~3,8 мГн, что относительно низко​moonsindustries.com. Поэтому увеличенное blank-время полезно. Значение driver_TBL: 2 (24 такта) увеличивает паузу измерения по сравнению с минимальным, обеспечивая более плавный ток без ложных пиков. В некоторых случаях можно ставить и 3 (длиннейшая пауза ~+50% к 2), но значение 2 уже достаточное и часто рекомендуется в сочетании с toff 3-5 для тихой работы​moonsindustries.com.

driver_TOFF (Off Time) – определяет длительность паузы, в течение которой ШИМ отключён каждый цикл. Он косвенно задаёт частоту шимирования тока в режиме SpreadCycle. Слишком маленький TOFF сделает частоту очень высокой, что может привести к нестабильности тока, а слишком большой – снизит частоту (увеличив каждую паузу) и может вернуть шум в слышимый диапазон. Рекомендуемое среднее значение – 4 (из диапазона 1–15). При TOFF=4 драйвер работает на высокочастотном ШИМ (порядка десятков кГц), что выходит за пределы слышимости для большинства людей и поддерживает плавный контроль тока. Это помогает уменьшить слышимые вибрации (в отличие от очень низкой частоты ШИМ) и обеспечить достаточное время для затухания токов в каждой микрофиксации шага. Значение 4 также достаточно далеко от опасно низких значений (при TOFF<3 драйвер может вообще не успевать регулировать ток). Таким образом, комбинация TBL=2 и TOFF=4 настроена на снижение шума и вибраций, особенно учитывая характеристики мотора.

Параметры гистерезиса driver_HSTRT и driver_HEND

Когда драйвер переходит в режим SpreadCycle (после порога скорости), вступают в силу настройки гистерезисного ШИМ: HSTRT (стартовая прибавка тока) и HEND (конечный порог). Эти параметры влияют на форму тока в обмотке во время каждого цикла ШИМ и, как следствие, на плавность работы и звук мотора.

  • driver_HSTRT: 4 – означает, что к базовому гистерезису добавляются условные 4 единицы (в пересчёте по даташиту TMC это ~+8 мА к порогу сравнения на каждую ступень, но главное – относительная величина). Более высокое HSTRT заставляет ток в начале цикла нарастать чуть агрессивнее. Значение 4 выбрано, чтобы мотор быстро набирал ток при каждом шаге, сохраняя крутящий момент даже на высоких скоростях. Это помогает предотвратить падение момента на очень быстрых перемещениях >200-300 мм/с. Слишком большое HSTRT может увеличить шум (резкие всплески тока), поэтому 4 – компромиссное умеренное значение.
  • driver_HEND: 2 – задаёт нижний уровень гистерезиса (точнее, отрицательный порог окончания цикла). Небольшое HEND (2 из 0–7 возможных в TMC2209) означает, что цикл ШИМ закончится, когда ток снизится лишь немного от вершины (т.е. гистерезисное окно относительно узкое). Фактически, это удерживает ток более ровным, не давая ему слишком сильно спадать в конце каждого цикла. В сочетании с HSTRT=4 такое узкое окно гистерезиса сглаживает колебания тока, что уменьшает вибрации и высокочастотный писк. Если бы HEND был слишком высок (большее отрицательное смещение), ток бы падал сильнее и требовались бы более резкие рывки для следующего цикла, что могло бы повысить шум и вибрацию.

Комбинация HSTRT=4 и HEND=2 близка к рекомендуемым настройкам для многих шаговых двигателей среднего/низкого напряжения, когда нужен баланс между тихой работой и стабильностью на высоких оборотах​moonsindustries.com. Они помогут исключить резонансные рывки тока, из-за которых мотор может гудеть или вибрировать на определённых скоростях.

Ток двигателя (run_current) и его влияние

Выбор значения run_current напрямую определяет, какой максимальный ток будет подан на обмотки мотора. Моторы MOONS MS17HDBEP420A-01 рассчитаны на 2.0 А на фазуmoonsindustries.com, что соответствует их номинальному удерживающему моменту ~0.83 Н·м. Однако постоянно подавать максимальный ток не всегда необходимо и может приводить к излишнему нагреву драйверов и самим двигателям, а также к повышенной вибрации (при большем токе мотор жёстче реагирует на малейшие колебания шага).

Мы рекомендуем установить run_current = 1.2 А (RMS). Это приблизительно 1.7 А пик на обмотку, то есть ~85% от максимума. Такой ток, по опыту, обеспечивает большую часть доступного крутящего момента, которого хватит для разгонов и движений с ускорениями, необходимыми для 600 мм/с, но уменьшает нагрев и шум мотора​moonsindustries.com. Снижение тока чуть ниже номинала смягчает поведение мотора: меньше резких гармоник, ниже вероятность возбуждения механических резонансов в раме на высоких оборотах. К тому же драйверы TMC работают надёжнее при токах ниже предела – это добавляет стабильности при длительной печати на высоких скоростях.

Если попытаться существенно снизить ток (например <1 А), моторы станут тише и холоднее, но могут не обеспечить требуемое ускорение тяжелой платформы/каретки на высоких скоростях – возрастёт риск пропуска шагов. С другой стороны, повышение run_current до 1.4 А (≈2.0 А пик, близко к 100% номинала) даст максимум силы, но ценой более громкого звука на разгонах и сильного нагрева (что может потребовать активного охлаждения платы). Таким образом, 1.2 А – разумный компромисс для этих мощных моторов, учитывая их запас по моменту.

Отдельно настроен может быть параметр hold_current – ток удержания двигателя в покое. Его обычно ставят 50% от рабочего или даже меньше. Например, при run_current=1.2 А стоит hold_current ~0.6 А (или задействовать опцию автоматического снижения тока удержания в Klipper). Это уменьшит гул на стоячих моторах и снизит нагрев, не влияя на динамику движения.

Микрошаги и плавность хода

Микрошаговое деление определяет, на сколько частей разбивается каждый полный шаг (1.8°) двигателя. Больше микрошагов дают более гладкое движение и точное позиционирование, но требуют более высокой частоты шагов от прошивки/процессора. Стандартом для TMC-драйверов является 1/16 шага с интерполяцией до 256 – в этом режиме прошивка подаёт 16 микроимпульсов на шаг, а сам драйвер интерполирует промежуточные значения тока, достигая эффекта 256 микрошагов.

Рекомендуется оставить настройку 16 микрошагов для осей X/Y, поскольку этого достаточно для плавности: драйвер в режиме StealthChop сам формирует синусоидальный ток, сглаживая движение. При 16 микрошагах даже на скоростях 600 мм/с частота шагов будет умеренной (около 48 kHz при ~80 шаг/мм), что посильно современной плате и обеспечивает высокую точность позиционирования. Увеличение до 32 микрошагов возможно, если позволяет производительность (в Klipper современный MCU обычно справится), – это даст ещё более тонкое деление шага и потенциально чуть меньшие вибрации на очень малых скоростях. Однако выигрыш от >16 микрошагов невелик, так как реальное разрешение ограничено механикой и 1.8° шагом мотора. Кроме того, в режиме SpreadCycle на очень высокой скорости слишком мелкий микрошаг может даже снижать эффективный момент (т.к. шаги становятся настолько частыми, что ток не успевает нарастать до нужной величины за микрошаг).

Таким образом, оптимально 16 микрошагов: это уже дает плавность и тихую работу (в сочетании с StealthChop) и в то же время не создает лишней нагрузки на систему при экстремальных скоростях печати. Убедитесь, что интерполяция 256 (если поддерживается драйвером) включена – в Klipper она обычно активна по умолчанию для TMC, что дополнительно сглаживает движение без участия процессора.

Альтернативные варианты и рекомендации

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

  • Повышение порога StealthChop: Если главная цель – ультимативно тихая работа, можно увеличить stealthchop_threshold (например до 250-300 мм/с или даже отключить SpreadCycle вовсе, установив очень большое значение). Это позволит двигателям дольше оставаться в бесшумном режиме. Однако при резких движениях на >200 мм/с есть риск пропусков шагов, особенно при частых разгонах/торможениях. Такой вариант подходит, если реальные скорости печати не будут приближаться к максимальным 600 мм/с, либо если используется очень плавное ускорение. В целом же для Ender 3 V3 Plus, стремящегося к высоким скоростям, не рекомендуется полностью отключать SpreadCycle – стабильность движения важнее, чтобы сохранить качество печати на скорости.
  • Всегда SpreadCycle на X/Y: Обратная ситуация – можно поставить stealthchop_threshold = 0, заставив драйверы сразу работать в SpreadCycle. Это гарантирует максимальный момент на всех скоростях и чёткую реакцию драйвера. Моторы MOONS способны работать в таком режиме, и при грамотной настройке (TBL, TOFF, HSTRT/HEND как выше) шум и вибрации будут держаться на приемлемом уровне. Преимущество этого режима – прогнозируемое поведение при любых скоростях без переключений режима. Недостаток – увеличение шума на низких скоростях: при медленных перемещениях или детальной печати моторы будут слышно потрескивать/пищать в SpreadCycle. Поэтому, если принтер используется и на тихой «ночной» печати, лучше оставить гибридный режим с StealthChop.
  • Ток двигателя (run_current): Значение 1.2 А – лишь рекомендация. Его можно настроить под себя. Если в вашей конфигурации оси двигаются легко (например, заменены подшипники, ремни натянуты правильно, вес подвижных частей снижен моддингом), вы можете снизить ток до ~1.0 А и всё ещё не терять шаги. Это сделает принтер тише и прохладнее, хотя максимальные ускорения могут немного снизиться. Если же планируются экстремальные ускорения или установка тяжелого прямого экструдера, возможно стоит увеличить ток до 1.3–1.4 А для запаса по усилию – но обязательно следите за температурой драйверов (при длительной работе на 1.4 А без радиаторов и обдува есть риск перегрева TMC2209). Также имейте в виду, что более высокий ток иногда усиливает вибрации на резонансных частотах станка; это можно компенсировать функцией сглаживания (input shaper в Klipper) или демпферами на моторах, если потребуется.
  • Микрошаги 32 или 8: Если использование 32 микрошагов не нагружает вашу плату (новые 32-бит платы зачастую справляются до сотен kHz), их можно попробовать для эксперимента. Вы, возможно, заметите немного более тихое шуршание моторов на очень медленных движениях, но разница не радикальна по сравнению с 16 + интерполяция. Обратно, снижение до 8 микрошагов может иметь смысл только если сталкиваетесь с ограничением производительности (например, крайне высокая частота шагов на 600 мм/с при 0.9° моторах – не наш случай, у нас 1.8°). При 8 микрошагах нагрузка на MCU упадёт вдвое, но двигатели могут стать чуточку громче и менее плавными на низких скоростях, даже с интерполяцией. Поэтому 16 является оптимальным и сбалансированным выбором для большинства ситуаций.

В заключение, предложенные настройки должны существенно снизить шум и вибрацию без ощутимой потери скорости печати. Мощные шаговые двигатели MOONS в сочетании с правильно настроенными драйверами смогут разгонять оси Ender 3 V3 Plus до высоких скоростей плавно и устойчиво. После внесения изменений рекомендуется протестировать принтер на разных режимах: медленное мелкое перемещение (чтобы убедиться в бесшумности StealthChop и отсутствии рывков), затем быстрые travel-перемещения ~300-400 мм/с (прослушать момент переключения режима – лёгкий шелест вместо писка сигнализирует, что SpreadCycle настроен оптимально), и наконец пробные печати на высоких скоростях (проверить, что нет пропущенных шагов и качество удовлетворительное). При необходимости можно тонко подправить порог или ток под свою конкретную сборку, но в большинстве случаев приведённые значения будут близки к оптимальным.

Чтобы резюмировать, данная настройка концентрируется на гибком режиме работы драйверов – тихо там, где это возможно, и надёжно там, где это необходимо. Это позволит максимально раскрыть потенциал моторчиков MOONS на Ender 3 V3 Plus, достигая скорости печати порядка 600 мм/с с контролируемым уровнем вибраций и шума. moonsindustries.com

1 Like

Ребят кажется я разобрался с этой проблемой на стоковых моторах!!! Просто гляньте на результаты после изменения пары строк в конфиге и это еще не все закинул эти тесты обратно в ии и он дальше подсказывает что делать мне кажется это победа)… Даже в тесте заметно что звук стал намного тише движение стола воообще не слышно, ура!!! Сейчас дальше поработаю по советам чата и посмотрим что будет но для начала попробую распечатать вфа.

После редактирования кода

До редактирования кода

Вот кстати советы ии после самопроверки (в качестве третьего скрина использовал скрин Morteza_Mohebbi нового 3 v3 plus):

Что показывают три скрина и что делать дальше

|Фото|Что это|X-ось, Гц / вибрации|Y-ось, Гц / вибрации|Рекоменд. max_accel (из Klipper)|

| — | — | — | — | — |

|1 (после наших правок)|Ваш принтер c MOONS + новые TBL/TOFF|89 Гц / 23.9 %|56 Гц / 5.3 %|14 800 мм/с² (по X ограничено 5 800 по Y)|

|2 (принтер друга, сток)|Ender-3 V3 Plus без модов|40 Гц / 5.1 %|55.8 Гц / 0 %|3 000 / 5 800|

|3 (ваш «до»)|Ваш до правок|72.6 Гц / 9.3 %|55.6 Гц / 2.0 %|9 800 / 5 800|


Ключевые выводы

  1. Частота X выросла 72 → 89 Гц — то есть ось стала жёстче (хорошо).

Но одновременно амплитуда вибрации X ↑ до 24 % — сигнал, что теперь вибрация сосредоточена в узком диапазоне и плохо демпфируется.

  1. Y-ось почти не изменилась (≈ 56 Гц, малые вибрации) — здесь всё ок.

  2. Принтер друга показывает низкий резонанс X = 40 Гц – типично для слабонатянутого или тяжёлого каркаса; у вас лучше.


Почему возросла «% vibrations» на X?

  • Новый режим драйвера (SpreadCycle >200 мм/с + другой ток) усилил момент ⇒ резонанс проявился сильнее.

  • Возможно, ремень X перетянут или наоборот подслаб: повышает добротность колебаний.

  • Каретка стала чуть легче/жёстче (смена мотора, охлаждения) ⇒ изменилась структура колебаний.


Что рекомендую

|Шаг|Что сделать|Зачем|

| — | — | — |

|1|Проверьте, что ремень X натянут «средне» (с усилием ~30 Hz при щипковом тесте либо 130-150 г сила).|Перетянуто → высокая добротность, недотянут → низкая частота.|

|2|Зайдите в Klipper → SAVE_CONFIG, чтобы новый shaper (ei, 89/56 Гц) записался.|Без сохранения Klipper продолжит старые параметры.|

|3|В [printer] поставьте max_accel: 5500 – это нижняя граница, которую шейпер советует (Y-ось).|X теоретически допустит 10-15 к, но Y ограничит.|

|4|Если после пункта 1 X-вибрации всё ещё >15 % — снизьте run_current X c 1.2 → 1.1 A или увеличьте driver_TOFF до 5 (делает ток мягче).|Уменьшится возбуждение резонанса.|

|5|Перезапустите, распечатайте прямоугольник 150 × 150 мм на 300 мм/с; оцените ringing.|Должно почти пропасть на стенках.|


Итог

  • Настройка в целом удачна: частота X выросла, Y осталось отличной.

  • Нужно лишь чуть пригасить амплитуду X (натяжение ремня + тонкая корректировка тока/TOFF) и зафиксировать шейпер SAVE_CONFIG.

  • С accel ≈ 5 500 мм/с² и новыми shaper-параметрами принтер спокойно печатает периметры 150 мм/с, infill до 300 мм/с без ringing и без пропусков шагов. Если захотите ускориться выше, поднимайте постепенно, смотрите ringing-тесты.

Вот мой конфиг сейчас можете проверить у себя:

[tmc2209 stepper_x]

uart_pin:PA9

driver_SGTHRS: 90

uart_address:3

interpolate: true

run_current:1.2

hold_current: 0.5

sense_resistor: 0.10

stealthchop_threshold: 200

diag_pin: ^PB12

driver_TBL: 2

driver_TOFF: 4

driver_HEND: 2

driver_HSTRT: 4

[stepper_y1]

step_pin: PB8

dir_pin: PB7

enable_pin: !PC3

microsteps: 32

rotation_distance: 32

endstop_pin: tmc2209_stepper_y:virtual_endstop

[tmc2209 stepper_y1]

uart_pin:PA10

driver_SGTHRS: 90

uart_address:3

interpolate: false

run_current:1.2

hold_current:0.5

sense_resistor: 0.10

stealthchop_threshold: 200

diag_pin: ^PB15

driver_TBL: 2

driver_TOFF: 4

driver_HEND: 2

driver_HSTRT: 4

[stepper_y]

step_pin: PB4

dir_pin: PB3

enable_pin: !PC3

microsteps: 32

rotation_distance: 32

endstop_pin: !PA12

endstop_pin: tmc2209_stepper_y:virtual_endstop

position_endstop: -3

position_min: -3

position_max: 305

homing_speed: 30

homing_retract_dist:0

[tmc2209 stepper_y]

uart_pin:PA12

driver_SGTHRS: 90

uart_address:3

interpolate: false

run_current:1.2

hold_current:0.5

sense_resistor: 0.10

stealthchop_threshold: 200

diag_pin: ^PB15

driver_TBL: 2

driver_TOFF: 4

driver_HEND: 2

driver_HSTRT: 4

[stepper_z]

step_pin: PB6

dir_pin: PB5

enable_pin: !PC3

microsteps: 32

rotation_distance:40

endstop_pin: tmc2209_stepper_z:virtual_endstop

endstop_pin:PA15

position_endstop: 330

position_min: -5

position_max: 335

homing_speed: 60

homing_retract_dist:0 #10

[tmc2209 stepper_z]

uart_pin:PA11

driver_SGTHRS: 95

uart_address:3

interpolate: true

run_current:1.5

hold_current:0.5

sense_resistor: 0.10

stealthchop_threshold: 0

diag_pin: ^PB14

driver_TBL: 0

driver_TOFF: 1

driver_HEND: 12

driver_HSTRT: 7

[extruder]

max_extrude_cross_section: 80

max_extrude_only_distance:1000.0

step_pin:nozzle_mcu:PB5

dir_pin:nozzle_mcu:PB4

enable_pin:!nozzle_mcu:PB2

microsteps:16

rotation_distance:6.9

nozzle_diameter:0.400

filament_diameter:1.750

heater_pin:nozzle_mcu:PB8

sensor_type: EPCOS 100K B57560G104F

sensor_pin:nozzle_mcu:PA0#PC5

pressure_advance: 0.04

pressure_advance_smooth_time: 0.040

control:pid

pid_Kp:24.669

pid_Ki:2.937

pid_Kd:51.804

min_temp:-15

max_temp:320

[tmc2209 extruder]

uart_pin:nozzle_mcu:PB11

tx_pin:nozzle_mcu:PB10

uart_address:3

interpolate: false

run_current:0.55

hold_current:0.5

sense_resistor: 0.150

stealthchop_threshold: 0

[heater_bed]

heater_pin: PB10

sensor_type: EPCOS 100K B57560G104F

sensor_pin: PC4

control: watermark#pid

control: pid

pid_kp = 72.873

pid_ki = 0.724

pid_kd = 1833.663

min_temp: -15

max_temp: 105

#喉管风扇#

[heater_fan my_nozzle_fan]

pin:nozzle_mcu:PB6

heater:extruder

heater_temp:50.0

cycle_time: 0.0100

hardware_pwm: false

shutdown_speed: 0.0

fan_speed:1

[static_digital_output my_board_fan]

pins:nozzle_mcu:PB7

#喷嘴风扇#

[output_pin fan0]

pin: !nozzle_mcu: PB3

pwm: True

cycle_time: 0.0100

hardware_pwm: false

value: 0.00

scale: 255

shutdown_value: 0.0

[output_pin fan2]

pin:nozzle_mcu:PB9

pwm: True

cycle_time: 0.0100

hardware_pwm: false

value: 0.00

scale: 255

shutdown_value: 0.0

[output_pin fan1]

pin:!nozzle_mcu:PC14

pwm: True

cycle_time: 0.0100

hardware_pwm: false

value: 0.00

scale: 255

shutdown_value: 0.0

[accel_chip_proxy x]

adxl345_cs_pin: nozzle_mcu:PA4

adxl345_spi_speed: 5000000

adxl345_axes_map: y,-z,x

adxl345_spi_software_sclk_pin: nozzle_mcu:PA5

adxl345_spi_software_mosi_pin: nozzle_mcu:PA7

adxl345_spi_software_miso_pin: nozzle_mcu:PA6

lis2dw_cs_pin: nozzle_mcu:PA4

lis2dw_spi_speed: 5000000

lis2dw_axes_map: y,-z,x

lis2dw_spi_software_sclk_pin: nozzle_mcu:PA5

lis2dw_spi_software_mosi_pin: nozzle_mcu:PA7

lis2dw_spi_software_miso_pin: nozzle_mcu:PA6

[accel_chip_proxy y]

adxl345_cs_pin: leveling_mcu:PA4

adxl345_spi_speed: 5000000

adxl345_axes_map: y,x,z

adxl345_spi_software_sclk_pin: leveling_mcu:PA5

adxl345_spi_software_mosi_pin: leveling_mcu:PA7

adxl345_spi_software_miso_pin: leveling_mcu:PA6

lis2dw_cs_pin: leveling_mcu:PA4

lis2dw_spi_speed: 5000000

lis2dw_axes_map: y,x,z

lis2dw_spi_software_sclk_pin: leveling_mcu:PA5

lis2dw_spi_software_mosi_pin: leveling_mcu:PA7

lis2dw_spi_software_miso_pin: leveling_mcu:PA6

[resonance_tester]

accel_chip_x: accel_chip_proxy x

accel_chip_y: accel_chip_proxy y

#accel_per_hz: 50

probe_points:

150,150,20

[bed_mesh]

speed:80

mesh_min:15,15

mesh_max:285,285

probe_count:6,6

algorithm:bicubic

fade_start: 5.0

fade_end: 50.0

[display_status]

[printer]

kinematics:corexz

max_velocity:600

max_accel:20000

max_accel_to_decel: 10000

max_z_velocity:500

square_corner_velocity: 5.0

square_corner_max_velocity: 200.0

[pause_resume]

[soft_homing]

diff_step:20

[exclude_object]

1 Like