Драйверы 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.
Похоже, что драйвер находится в "устаревшем" режиме и манипуляции с программным обеспечением невозможны. Хотя я прошел через все шаги, чтобы включить его.
@Felix Hauser, 👍11
Обсуждение2 ответа
У меня нет этих контроллеров, но я прочитал, что с настройками по умолчанию TMC2208 интерполирует микропереходы, установленные контактами конфигурации ввода-вывода, до
256 микропереходов. Пожалуйста, посмотрите, как вы настраиваете переключатели / колпачки перемычек на своей плате, похоже, используются только 2 (MS1 и MS2). Кроме того, не можете ли вы просто уменьшить количество элементов массива DEFAULT_AXIS_STEPS_PER_UNIT
для записи Z в файле конфигурации?
Я могу изменить steps_per_unit, но это исправление для результата, оно не решает причину этого. Я провел дальнейшее расследование, пожалуйста, ознакомьтесь с обновлением моего оригинального поста..., @Felix Hauser
Скорее всего, ваша проблема связана с выводом PDN_UART на плате драйвера TCM2208, на некоторых платах производителей перемычка по умолчанию не установлена в режим UART, поэтому, скорее всего, вам нужно припаять перемычку к правильной конфигурации. Посмотрите на схему вашей платы водителя. например https://github.com/bigtreetech/BIGTREETECH-TMC2208-V3.0/blob/master/TMC2208-V3.0%20manual.pdf
Он сделал это, об этом упоминается в разделе ОБНОВЛЕНИЙ, @FarO
- Странное движение и не самонаведение
- RAMPS 1.4 Шаговый не получает хорошего сигнала
- Настройка BLTouch с прошивкой Marlin
- Шаговый двигатель нагревается через некоторое время
- Marlin 2.0 - установить шаговые драйверы?
- Эндстопы не будут срабатывать при использовании прошивки Marlin
- Как настроить Marlin для включения автоматических вентиляторов с двойным экструдером
- Управление большим количеством вентиляторов с помощью платы RAMPS
Вы решили эту проблему? Если вы действительно решили эту проблему, было бы здорово поделиться своим опытом с сообществом, опубликовав свой собственный ответ, чтобы другие могли извлечь из него уроки или решить свои собственные подобные проблемы. Вы также можете принять свой собственный ответ через 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