Перейти к публикации

Українська 3D спільнота

Створено телеграм канали. Підписавшись на них ви будете отримувати повідомлення про появу нових тем на форумі. Також там Ви знайдете посилання на канал допомоги для вирішення термінових питань по друку та принтерам.
3DUA_Help 3DUA.info
KomAndr

Установка и настройка ТМС2130 SPI на RAMPS 1.4 и Marlin 2

Рекомендованные сообщения

Захотелось использовать все возможности ТМС2130, а для этого нужно драйвера подключить к материнке по SPI. В Китае продается как минимум три модификации этих драйверов.Я взял самую дешевую версию, не подготовленную для подключения по SPI, v1.0  2шт для осей XY. Оси Z и экструдер и так нормально вертятся на DRV8825 laugh

Полез изучать тему установки и настройки драйверов по SPI . Инфы много уже появилось, но все же попытаюсь ужать все в одной статье.

 

1. Нужно подготовить драйвера, немного поработать паяльничком. Снимаем синюю колодочку, поддев ее лезвием ножа и выпаиваем ножки контактов NC, SDO, CS, SCK, SDI. Переворачиваем драйвер и припаиваем их сверху. Контакт NC оставляем свободным. Оставшуюся ножку припаиваем к левому нижнему контакту, ближнему к подстроечному резистору, как на фото ниже. Это нужно для использования функции StallGuard2 в качестве концевиков HOME.

e7119dcd86dcf8915c735f26526db55e.thumb.jpg.d0cfdc66276745e753450f7ba6e1ce40.jpg large.IMG_20181217_215310.jpg.2e22ce92c4a71e0d3ad3fe10ef034b83.jpg

2. С обратной стороны необходимо изменить конфигурацию перемычек, для включения функции управления драйверами по SPI. На фото - крестом помечено место где нужно снять перемычку, а кругами перемычки которые нужно поставить 

 

image.thumb.png.bbc9600dfd4255fda6e13c76d1591eba.png

Кто не хочет заниматься пайкой может сразу купить ТМС2130 v1.1 Эта модель уже идет с установленными перемычками и перепаянными контактами.

 

3. Подключение драйверов по SPI я выбрал параллельно картридеру и модернизировал LCD adapter. (В прошивке Marlin можно назначить свободные пины RAMPSa на программное выполнение функций разъема SPI.) Смотрим распиновку RAMPS и находим контакты MOSI, MISO, SCK

image.thumb.png.d24e5bd6a02ee8660502e30ecba26fab.png

Они находятся на разъеме AUX-3 По аналогии с драйверами, снимаем на адаптере пластиковую колодку и выпаиваем вилки-контакты. Копаемся в закромах и находим переходник к материнской плате для подключения дополнительных USB портов.

large.IMG_20190121_201348.jpg.6f01e1995b25bb5b584d35204670e059.jpg large.IMG_20190121_201447.jpg.dcf8e7b0a5783b012cf5fae76147ca58.jpg 

Вынимаем из синего переходника 3-и контакта, выпаиваем из адаптера указанные выше контакты и меняем их на новые, удлиненные. Надеваем обратно пластиковую колодку и у нас есть модифицированный LCD Adapter с возможностью подключения еще и драйверов ТМС2130.

large.IMG_20190121_202054.jpg.3ee1477a4444fc11dceda4a94061b730.jpglarge.IMG_20190121_202119.jpg.a276594ac5cf2fb2ae0a7f862d5ea139.jpg

 

4. Собираем соединительный шлейф, Тут отмеряем нужную длину проводников и обжимаем в Dupont. Схема соединения ниже. Единственное контакты CS Я подключил в другое место, об этом чуть ниже.

image.thumb.png.ce16eb8ea94c370c3505702a17c3e79d.png large.IMG_20190122_212804.jpg.4eaa70365ffcfa606732b1a5e9e9066c.jpg

 

5. Контакт "концевика", на фото обведен красным кружком, каждого установленного драйвера оси соединяем с контактом концевика MIN на RAMPS.

image.thumb.png.ca30c4915af4b2dcd63b41882f287ac1.png

 

Часть с пайкой завершена, теперь приступаем к изменению программы. Как всегда нам понадобится проводить изменения в двух основных файлах прошивки. 

С Гитхаба  качаем последний релиз 1.1.9 или 2.0, кому что нравится, и открываем и вносим изменения в Configuration_adv.h Я привожу правки относительно крайней версии bagfix-2.0.x

 

1. Находим // @section tmc и выставляем предустановки тока для драйверов, в моем случаи XY.  Шаговые моторы 4401 на 1.7А

  • #define X_MAX_CURRENT     1200 // in mA
  • #define Y_MAX_CURRENT    1200

 

2. Раскоментируем две строки в которых выставляем номера пинов к которым подключаем контакты CS установленных TMC2130.

  • #define X_CS_PIN          65
  • #define Y_CS_PIN          66

Как писал выше, я выбрал два крайних пина в разъеме AUX-2. Так как остальные свободные планирую использовать для управления отдельными вентиляторами.

 

3. Для включения тихого режима раскоментируем необходимые строки

  • #define STEALTHCHOP_XY

 

4. Активируем мониторинг драйверов

  • #define MONITOR_DRIVER_STATUS

 

5. Активируем гибридный режим. С ним прошивка сама будет менять режимы работы шаговиков с тихого на усиленный 

  • #define HYBRID_THRESHOLD

 

6. Активируем режим StallGuard2 который будет работать вместо концевиков Xmin и Ymin 

  • #define SENSORLESS_HOMING // TMC2130 only

 

7. Строки отвечают за чувствительность режима StallGuard2. Чем меньше цыфра тем чувствительнее стобатывание. Я остановился  на 7

  • #define X_STALL_SENSITIVITY  7
  • #define Y_STALL_SENSITIVITY  7  

 

8. Активируем режим отладки для драйверов

  • #define TMC_DEBUG

 

9. Открываем Configuration.h и ищем Stepper Drivers. Здесь указываем на каких ося какие драйвера ставятся.

  • #define X_DRIVER_TYPE  TMC2130
    #define Y_DRIVER_TYPE  TMC2130
    #define Z_DRIVER_TYPE  DRV8825

    //#define X2_DRIVER_TYPE A4988
    //#define Y2_DRIVER_TYPE A4988
    //#define Z2_DRIVER_TYPE A4988
    //#define Z3_DRIVER_TYPE A4988
    #define E0_DRIVER_TYPE DRV8825
    //#define E1_DRIVER_TYPE A4988
    //#define E2_DRIVER_TYPE A4988
    //#define E3_DRIVER_TYPE A4988
    //#define E4_DRIVER_TYPE A4988
    //#define E5_DRIVER_TYPE A4988

 

10. В секции // Enable pullup for all endstops to prevent a floating state включаем подтягивание для концевиков вместо которых установлен режим SENSORLESS_HOMING 

  • #define ENDSTOPPULLUPS
    #if DISABLED(ENDSTOPPULLUPS)
      // Disable ENDSTOPPULLUPS to set pullups individually
      //#define ENDSTOPPULLUP_XMAX
      //#define ENDSTOPPULLUP_YMAX
      //#define ENDSTOPPULLUP_ZMAX
      #define ENDSTOPPULLUP_XMIN
      #define ENDSTOPPULLUP_YMIN

      //#define ENDSTOPPULLUP_ZMIN
      //#define ENDSTOPPULLUP_ZMIN_PROBE
    #endif

11. Инвертируем направление вращения шаговиков на которых установлены драйвера ТМС 2130

  • // Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
    #define INVERT_X_DIR true
    #define INVERT_Y_DIR true

    #define INVERT_Z_DIR false

 

Компилируем прошивку и заливаем ее в Мегу 2560 После включения принтера в терминале команд, в самом конце Вы увидите состояние подключенных драйверов.

 

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

 

  • M906 - Установите или получите ток двигателя в миллиамперах, используя коды осей X, Y, Z, E. Сообщите значения, если не указаны коды осей.
  • M911 - Сообщить о состоянии предварительного предупреждения о перегреве шагового привода.
  • M912 - Сбросить флаг состояния предупреждения о перегреве шагового привода.
  • M122 - Сообщить о параметрах драйвера (Требуется TMC_DEBUG)

 

Более детально с этими командами можно ознакомиться в Marlin G-code

 

Удовольствия Вам от использования TMC2130!!!

  • Нравится 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×