Драйверы TMC2208 - Микропереходы настроены неправильно

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

Одна проблема, которая у меня все еще есть, заключается в том, что когда я говорю принтеру поднять ось Z на 5 мм, он поднимает ее на 10 см.

Я ничего не изменил относительно шагов/мм. Ранее у меня был Pololus, с 1/16 микрошагами, и теперь у меня также есть 1/16 на файле configuration_adv.h на Marlin 1.1.8

Однако то, что я заметил, когда делал M122, - это строка, которая гласит:

msteps 256

что звучит так, как будто микрошаг был установлен на 1/256 вместо этого.

Может быть, кто-нибудь скажет мне, если я что-то упущу?

ОБНОВЛЕНИЕ:

После еще некоторого копания в этом, вот что я сделал до сих пор:

  • Припаяйте штифты на драйвере. Оригинал от Watterrot
  • Припаяйте мостовые колодки для обеспечения связи UART
  • Припаяйте штырь для направления связи вверх
  • Измените configuration_adv.h на Marlin (1.1.8) и включите все, что нужно включить: USE_TMC2208, Включите отладку, выбрав ось Z и т. Д
  • Проверьте контакты на pins_RAMPS.h и убедитесь, что они доступны в моей настройке
  • Сделайте кабель Y с резистором 1 Ком для штыря TX
  • Подключить все

Что бы я ни делал, мотор двигается в два раза больше, чем требуется. Хотя я настроил 1/16 микрошагов, то же самое я сделал с моим Pololus, я выполнил обратный расчет, чтобы выяснить, что фактическое микрошагов на драйвере составляет 1/8.

После дополнительного расследования проблема, похоже, заключается в том, что водитель вообще не распознается Marlin/Board. Думая, что это была проблема с коммуникацией TX/RX, я покопался в доступной информации и нашел эту ошибку: TMC2208 UART Communication использует неправильные контакты для SoftwareSerial #9396.

Я продолжил менять назначенные контакты для последовательного RX/TX, но все точно так же.

Я попробовал другой Arduino (оригинал), другую плату RAMPS и даже ветви 1.1.x и 2.0 bugfix от Marlin.

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

, 👍11

Обсуждение

Вы решили эту проблему? Если вы действительно решили эту проблему, было бы здорово поделиться своим опытом с сообществом, опубликовав свой собственный ответ, чтобы другие могли извлечь из него уроки или решить свои собственные подобные проблемы. Вы также можете принять свой собственный ответ через 48 часов., @0scar

tmc интерполирует ваши шаги до 256 в расширенном конфигурационном файле: #define INTERPOLATE true // Interpolate X/Y/Z_MICROSTEPS to 256, @ddjikic

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

У меня были проблемы с моими драйверами TMC2208 V2.0 на SKR pro V1.1. Эта плата имеет встроенные маршруты для последовательного подключения, но сигнал ожидается на выводе "NC", а не на выводе " PDN "(UART подключен к " PDN " только на плате stepsticks). Мне нужно было припаять/соединить контакты " NC и PDN. Может быть, ваши платы stepsticks не имеют UART на PDN`?, @0scar


2 ответа


1

У меня нет этих контроллеров, но я прочитал, что с настройками по умолчанию TMC2208 интерполирует микропереходы, установленные контактами конфигурации ввода-вывода, до 256 микропереходов. Пожалуйста, посмотрите, как вы настраиваете переключатели / колпачки перемычек на своей плате, похоже, используются только 2 (MS1 и MS2). Кроме того, не можете ли вы просто уменьшить количество элементов массива DEFAULT_AXIS_STEPS_PER_UNIT для записи Z в файле конфигурации?


,

Я могу изменить steps_per_unit, но это исправление для результата, оно не решает причину этого. Я провел дальнейшее расследование, пожалуйста, ознакомьтесь с обновлением моего оригинального поста..., @Felix Hauser


0

Скорее всего, ваша проблема связана с выводом PDN_UART на плате драйвера TCM2208, на некоторых платах производителей перемычка по умолчанию не установлена в режим UART, поэтому, скорее всего, вам нужно припаять перемычку к правильной конфигурации. Посмотрите на схему вашей платы водителя. например https://github.com/bigtreetech/BIGTREETECH-TMC2208-V3.0/blob/master/TMC2208-V3.0%20manual.pdf

,

Он сделал это, об этом упоминается в разделе ОБНОВЛЕНИЙ, @FarO