Метки: TMC2100, драйвер, шум  
2015-11-21  
  
Раздел: Настройка, Электроника  
Автор: AKDZG Просмотров: 26 351  
Нет комментариев
Что же делать с лишними децибелами? TMC2100
Добавлено в закладки: 3
Что же это за модуль TMC2100 v1.2? И как он влияет на децибелы?
ТМС2100 в англоязычном интернете называют Silent-Step-Stick.
Silent-Step-Stick – это драйвер шагового двигателя основанный на интегральном чипе Trinamic TMC2100. Слово Silent переводится как “тихий”. То есть это тихий драйвер шагового двигателя.
В этой статье я постараюсь собрать и обобщить переводы из различных англоязычных источников и форумов для полного понимания работы и использования этого драйвера.
Основные технические характеристики:
- Логика совместима с драйвером A4988
- Ток до 1,2А (максимально до 2,5А)
- Настройки микрошага от 1/16 до 1/256
- Напряжение для двигателя от 5 до 45В
- stealthChop – для бесшумной работы и плавного движения. Чрезвычайно плавное движение является полезным для многих приложений.
- spreadCycle – предлагает плавную работу и большую энергетическую эффективность в широком диапазоне скоростей и нагрузок, то есть очень быстрая реакция на изменение скорости и нагрузки двигателя
Особенности драйвера ТМС2100
Есть несколько особенностей, которые делают этот драйвер интересным для нас. И самая интересная – stealthChop. При низких и средних скоростях двигатель будет работать абсолютно бесшумно. Это означает, что музыка двигателя скоро уйдёт в прошлое.
Тем не менее, этот режим stealthChop резко снижает крутящий момент двигателя. 3D принтеры быстро перемещают довольно тяжёлые оси при печати, а этот режим предполагается использовать только на средних и низких скоростях. Значит возможны пропуски шагов.
SpreadCycle мы будем использовать на 3D принтере. Этот режим использует два “разложения фаз” на один шаг, чтобы двигатель работал более эффективно. Двигатели 3D принтеров обычно нагреваются, особенно если они работают быстро. Более эффективный драйвер снижает тепло и надеюсь более надёжно управляет двигателем.
Есть и ещё одна выдающаяся возможность: интерполяция микрошагов microPlyer. Это означает, что если процессор просит TMC2100 сделать один микрошаг, он делает 16 интерполированных микрошагов на каждый реальный микрошаг. То есть он может сделать 256 микрошагов (16*16) и нет необходимости процессору для вычисления всех 256 микрошагов, драйвер за него это сделает. А большее количество микрошагов теоретически может привести к более бесшумной работе шаговых двигателей.
Также интересна особенность снижения тока в режиме простоя. То есть если двигатель не крутится нагрев будет снижаться. А это уже интересно для двигателей оси Z. Посмотрим на график из даташита. Синей линией обозначена сила тока, красной работа двигателя. Зелёная зона – это простой двигателя. Ток снижается со 100% до 34%.
Этот драйвер можно приобрести в немецком магазине Watterott electronic GmbH по цене 9,95 EUR за штуку. Не плохая цена, да? Но из цены нужно вычесть 19% евроналога и прибавить стоимость доставки. Попробуем убедить себя в необходимости таких растрат, ведь драйвера нужно как минимум два, на оси X и Y.
Переходим к графикам
На форуме Ультимейкера продвинутые коллеги замерили и сравнили уровень громкости шагового двигателя на стандартном драйвере A4988 и Silent-Step-Stick (SSS). Замеры проводились на фанерном Ультике.
На каждый драйвер замеры проводились как на корпусе принтера (верх), так и на самом шаговом двигателе (низ). Сразу видно, что корпус солидно добавляет шума. Сделаем наложение сигналов для наглядности. Нас интересует только шум на двигателе, так как корпуса у всех разные по акустическим способностям
Зелёный A4988, сиреневый SSS. Выглядит вполне убедительно.
Сравним визуально A4988 и SSS
Нам пришлось два раза перевернуть драйвер SSS для совмещения контактов с A4988. Обратите внимание – задействованы не все пины. Радиатор придётся клеить на плату, а не на сам чип.
Схема драйвера
Разрешение микрошага можно установить с помощью CFG2 и CFG1. Посмотрим на таблицу возможных вариантов
Установка и настройка
И так мы решили, что будем использовать режим spreadCycle с настройками разрешения микрошага 1/256. Значит конфигурация пинов будет выглядеть так:
- CFG1 подключить к GND
- CFG2 ни к чему не подключать
Пин CFG1 на ТМС2100 соответствует пину MS1 на A4988. Посмотрим на схему подключения драйвера к RAMPS 1.4
Видим что MS1 уже подключен к GND через R5. И никакие перемычки выставления шага нам не нужны (все перемычки нужно убрать). Сразу получается режим spreadCycle с микрошагом 1/256.
Регулировка тока
Устанавливаем ток по формулам:
- I = (VREF * 1.77A) / 2.5V
- VREF = (I * 2.5V) / 1.77A
Пример расчёта для стандартных двигателей Ultimaker Original:
VREF = (1.15A * 2.5V) / 1.77A = 1.63V
Во всяком случае начинать нужно с 0,8 и поднимать по мере необходимости, если появляются пропуски шагов. Тут нужно помнить – чем выше ток, тем выше шум.
Ток как обычно регулируется потенциометром (Current Adj.). Напряжение замеряем между GND (в левом верхнем углу) и VRef
Прошивка
При смене драйвера на SSS нужно инвертировать направление вращения двигателя в прошивке:
#define INVERT_X_DIR true
#define INVERT_Y_DIR true
Или развернуть штекер шагового двигателя на 180 градусов.
Дальше самое интересное. Оказывается нам не нужно менять калибровку перемещения по осям, так как драйвер просто дробит 1/16 микрошага до 1/256.
Вот и всё! Не перепутайте направление при установки драйвера на RAMPS 1.4 (или другую вашу плату электроники). Ориентируйтесь по надписям.
Чтобы полностью проникнуться нужно пойти на YouTube и послушать сравнение уровня звука на разных драйверах. Вот ссылка.
Информацию по свежим ревизиям ищем на GitHub’е.
Я уже купил эти драйверы. Информацию смотрите по ссылке на форуме. Существует китайский клон более ранней версии.
Что же делать с лишними децибелами? Обзор       Секреты слайсера Cura. Часть 2