M5_TMC2130/README.md

105 lines
8.3 KiB
Markdown
Raw Permalink Normal View History

2020-11-27 21:25:38 +02:00
# M5_TMC2130
Тест драйвера и описание его настройки
Общее:
2020-12-01 11:35:09 +02:00
Без радиатора будет греться до 75 градусов<br/>
С радиатором 65<br/>
Обдув решает все вопросы. Обдув обязателен<br/>
2021-01-13 17:47:16 +02:00
Как и в предыдущих версиях драйверов не рекомендуется отключать двигатель при включенном питании драйвера (необходимо предотвратить самостоятельное отключение)<br/>
2021-01-13 17:47:16 +02:00
<br/>Файл M5_TMC2130.ino - содержит пример кода с комментариями
2021-01-13 17:33:32 +02:00
<br/>Папка pdf - документация к драйверу (Полный и понятный документ pdf/TMC2130_datasheet.pdf)
<br/> Папка img - рисунку распиновка фото
<br>Лучше всего использовать совместно с BIGTREETECH protector ( https://www.gearbest.com/printer-parts/pp_3005227053225004.html )
2021-01-13 14:46:44 +02:00
Это шилд между драйвером и любой платой управления для защиты драйвера от перегорания при обрыве части контаков двигателя, или ручной прокрутки двигателей. В общем это защита драйвера от токов которые может генерировать мотор, или от обрывов проводов.
2021-01-13 17:33:32 +02:00
<br>
2021-01-13 14:46:44 +02:00
<b>Еще лучше использовать готовую плату SKR v1.3 которая приходит по умолчанию настроенная на использование данных драйверов</b>
<b>---------------------------------------</b>
2021-01-13 17:47:16 +02:00
<strong> - понятная распиновка/соединение для работы по SPI без промежуточных плат между ардуиной и TMC2130
</strong>
2021-01-13 14:46:44 +02:00
2020-12-01 11:35:09 +02:00
<br/>
Первый запуск (Для SPI режима)<br/>
Перед запуском необходимо убедится что драйвер не имеет перемычки на контактах SPI<br/>
Убедиться что правильно припаяны резисторы на контактах CFG4 (GND), CFG5 (VCC).<br/>
2021-01-13 14:46:44 +02:00
Пример установки перемычек: https://arduino.ua/images/HTB18dtMKv9TBuNjy1zbq6xpepXac.jpg
2020-12-01 11:35:09 +02:00
2021-01-13 14:46:44 +02:00
<strong> После данных операций подстроечный резистор перестает влиять на работу драйвера, ток выставляется в прошивке. </strong>
2020-12-01 11:35:09 +02:00
<br/>
2021-01-13 14:46:44 +02:00
В прошивке опытным путем было определено: Лучше использовать программный SPI, так как он учитывает все входы которые в аппаратном SPI необходимо подключить вручную к питанию Vio, GND или выставить необходимый уровень (DIR, STEP, EN) которыми возможно управлять в коде. Индивидуально необходимо рассматривать данные пины при использовании шилда.
2021-01-13 17:33:32 +02:00
Пример соединения драйвера с Arduino Mega (Фото добавленно в папку IMG) <br/>
Стоит позаботится о качественном контакте пинов. Так как мотор может крутиться медленно из за плохого контакта STEP/DIR
2021-01-13 14:46:44 +02:00
2021-01-13 17:33:32 +02:00
#define EN_PIN 46 // Enable<br/>
#define DIR_PIN 24 // Direction<br/>
#define STEP_PIN 26 // Step<br/>
#define CS_PIN 30 // Chip Select<br/>
#define SW_MOSI 34 // Software Master Out Slave In (MOSI)<br/>
#define SW_MISO 28 // Software Master In Slave Out (MISO)<br/>
#define SW_SCK 32 // Software Slave Clock (SCK)<br/>
2021-01-13 17:47:16 +02:00
<br/>
Для использования нескольких TMC2130 на одной шине и обратных связей необходим контроль на Chip Select (выбор микросхемы). С помощью данного сигнала происходит активация ведомого устройства.
2021-01-13 14:46:44 +02:00
<br/>
<b>---------------------------------------</b>
<strong> - понимание по подстройке ограничителя тока на TMC2130 </strong>
2020-12-01 11:35:09 +02:00
<br/>
<strong> После перевода в режим SPI подстроечный резистор перестает влиять на работу драйвера, ток выставляется в прошивке. </strong>
2021-01-13 14:46:44 +02:00
<br/>
2021-01-13 18:35:47 +02:00
Установка тока происходит путем вызофа функции rms_current(); для обьекта класса TMC2130Stepper<br/>
Пример: driver.rms_current(1000);<br/>
2021-01-13 14:46:44 +02:00
1000 - ток устанавливаемый в милиамперах
2020-12-01 11:35:09 +02:00
<br/>
2021-01-13 14:46:44 +02:00
Для установки тока изначально необходимо знать характеристики мотора (используемого)
<br/>
2020-12-01 11:35:09 +02:00
модель: JK42HS34-1334AC<br/>
Распиновка: зеленый А+, черный А-, синий В+, красный В-.<br/>
<b>НОМИНАЛЬНЫЙ ток на обмотку: 1.33 А</b><br/>
2021-01-13 17:33:32 +02:00
<br/>
2020-12-01 11:35:09 +02:00
Верная настройка токов позволяет: <br/>
Избавится от пропуска шагов<br/>
Снизить нагрев двигателей<br/>
Снизить шум двигателей<br/>
2021-01-13 17:47:16 +02:00
<br/>
2021-01-13 18:35:47 +02:00
<b>---------------------------------------</b> <br/>
2021-01-13 14:46:44 +02:00
<strong> - выбор библиотеки и экземплы по обработке детектов (stallGuard2)</strong>
<br/>
2021-01-13 17:33:32 +02:00
Пример использования библиотеки с определением текущего состояния параметра StallGuard находится в файле M5_TMC2130.ino
2021-01-13 17:33:32 +02:00
Cуществует старая версия библиотки: https://github.com/teemuatlut/TMC2130Stepper ,но она 3х летней давности
Необходимо скачать и установить библиотеку: https://github.com/teemuatlut/TMCStepper (обновляемая и поддерживаем большее количество драйверов)
2021-01-13 17:33:32 +02:00
<b>Про stallGuard2:</b> <br/>
Когда подвижный механизм упирается в препятствие, нагрузка двигателя возрастает, что и обнаруживает stallGuard2<br/>
Схема измерения определяет электрическую энергию, подаваемую в двигатель (EI) и энергию, которая возвращается в источник питания (EB). Разница между этими показателями определяет энергию, которая была передана механической системе (EM). stallGuard2 контролирует значение EB, и, если оно приближается к нулю, это значит, что вся энергия передается в систему и подвижный механизм, скорее всего, уперся в препятствие.
2021-01-13 17:33:32 +02:00
<br/>
Видео с примером и принципом работы: https://youtu.be/UrRlFIkvNxc
<br/>
2021-01-13 18:35:47 +02:00
<b>---------------------------------------</b> <br/>
2021-01-13 17:33:32 +02:00
Цитата с форума: <br/>
2021-01-13 17:47:16 +02:00
Eсли кто-то собирается использовать библиотеку TMCStepper вместе с ESP32, вам необходимо использовать HardwareSerial из-за проблем с совместимостью. - Но по факту необходимо использовать Software Serial.
2020-12-01 11:35:09 +02:00
<br/>
Ссылки:
2020-12-01 11:35:09 +02:00
<br/>
Интересынй пример: https://revspace.nl/TMC2130<br/>
Библиотека: https://github.com/teemuatlut/TMC2130Stepper<br/>
https://github.com/teemuatlut/TMC2130Stepper/tree/master/examples <br/>
Про StallGuard2: https://3dtoday.ru/blogs/svs0724/tms2130-applied-technology-and-connection-to-ruramps4d-in-the-configur/<br/>
2021-01-13 14:46:44 +02:00
Решение от автора: https://gist.github.com/teemuatlut/2bc6d85732311087e3e5285e04c36cb5