Правильная настройка тока для шаговых двигателей

Я сам очень долго не уделял этому вопросу должного внимания. Во первых не хотел разбираться. Во вторых считал, что настройка в рабочих условиях (во время тестовой печати на завышенных режимах) самая правильная. Это конечно верно, но настал момент, когда в моей коллекции появился третий вид драйверов TMC2100 и чтобы их адекватно сравнить с драйверами A4988 нужно их одинаково и правильно настроить по току используемого шагового двигателя.

 

Что нам даёт правильная настройка тока для шаговых двигателей?

  1. Снижение шума от работы принтера при завышенном токе
  2. Избавление от сдвига слоёв (пропуска шагов) при низком токе
  3. Снижение нагрева шагового двигателя или его драйвера

 

Какие обычно используют шаговые двигатели?

17HS4401

 

17HS4401 ток 1,7A — обычные

17HS8401 ток 1,8А — более мощные

17HS4402 ток 1,3A — по некоторым сведениям менее шумные, чем 17HS4401

 

Драйверы шаговых двигателей

A4988 на ток до 2А — очень широко распространён и недорогой

A4988_2

DRV8825 на ток до 2,2А — интересен большей мощностью и микрошагом 1/32

DRV8825_2

TMC2100 на ток RMS 1,2А  (с пиками до 2,5А) — интересен самостоятельным дроблением микрошага 1/16 до 1/255, что в итоге снижает шум работы шагового двигателя не загружая при этом дополнительными расчётами Ардуину.

Видимо для этого драйвера больше подходят двигатели с низким током, например 17HS4402. С этим двигателем драйвер будет меньше нагреваться, а значит его достаточно обдувать низкооборотистым бесшумным вентилятором.

TMC2100

 

Настройка тока на драйверах ШД

2016-01-11_220519

Минусовой щуп мультиметра подсоединяем к контакту GND (минус, он общий), плюсовым прикасаемся к корпусу подстроечного резистора на драйвере. Крутим подстроечный резистор отвёрткой и замеряем расчётное напряжение Vref. Таким образом мы выставляем правильный ток для драйвера шагового двигателя. Для каждого вида драйвера своя формула расчета Vref.

 

Vref — пин замера напряжения для установки тока по формуле.

Current Limit — ток шагового двигателя.

 

A4988

Формула Vref для A4988 изменяется от номинала токочувствительных резисторов. Это два чёрных прямоугольника на плате драйвера. Обычно подписаны R050 или R100.

Vref = Current Limit * 8 * (RS)

RS = 0,100
Vref = Current Limit * 8 * 0,100 = Current Limit / 1,25

RS = 0,050
Vref = Current Limit * 8 * 0,050 = Current Limit / 2,5

Например для 17HS4401: Vref = 1,7 / 2,5 = 0,68В

 

DRV8825

Current Limit = Vref * 2

Vref = Current Limit / 2

Например для 17HS4401: Vref = 1,7 / 2 = 0,85В

 

TMC2100

Irms = (Vref * 1,77A) / 2,5V

Vref = (Irms * 2,5V) / 1,77A

Current Limit = 1.41 * Irms

Например для 17HS4401: Vref = (Current Limit * 0,707 * 2,5В) / 1,77А = (1,7 * 0,707 * 2,5) / 1,77 = 1,697В

При таком Vref шаговый двигатель возможно будет нагреваться, поэтому Vref придётся подстроить во время работы.

 

2016-01-11_211849

 

В некоторых случаях для снижения нагрева драйвера приходится снижать Vref, а значит для защиты от пропуска шагов нужно уменьшать ускорения в прошивке. Соответственно при снижении ускорений общая скорость печать 3D принтера снижается. Разумный минимум для ускорений 500 мм/с^2. Отсюда вывод: уровень шума можно снизить почти на любом 3D принтере, снижая ускорения и Vref, но при этом Vref придётся подбирать опытным путём.

 

Сравнение громкости работы двигателя на разных Vref

  • Шаговый двигатель Wantai 42BYGHW609 ток 1,7А
  • Драйвер A4988
  • 3D принтер Mendel90

 

Тестовый G-код примерно такой (правил в процессе и после)

G21
G90
M107
G28 X0
M117 Run Test…
G1 F12000 X100
G1 F6000 X5
G1 F12000 X100
G1 F6000 X200
G1 F3000 X100
G1 F1500 X5
G1 F3000 X100
G1 F1500 X200
M117 Test Done!
G91
G28 X0
M84
G90

 

Используем аудиоредактор Audacity. Примитивный микрофон подключен к встроенной аудиокарте ПК. Микрофон прижат к корпусу ШД и сверху обмотан поролоном. Надеюсь этого хватит для регистрации уровня шума.

Vref устанавливаю на 0,58В, запускаю программу из Pronterface и записываю звук с микрофона. Затем повторяю запись на Vref  = 0,78В. Картинки уровней громкости складываю в Фотошопе для наглядности сравнения. Вот что получилось:

Красным Vref = 0,58В

Синим Vref = 0,78В

A4988_0,58+0,78

 

На некоторых скоростях разность в громкости вполне существенная. Такие напряжения взяты для наглядности, хотя и не сильно отличаются. На не настроенном драйвере может стоять любое напряжение Vref!

 

Пожалуйста не путайте ток с напряжением Vref, когда пишете об этом

 

Подробнее про эти драйверы можно почитать на сайтах производителей:

https://www.pololu.com/category/120/stepper-motor-drivers

https://github.com/watterott/SilentStepStick/blob/master/docu/FAQ.md

 

Для более глубокого понимания формул смотрите отдельную тему на форуме по этому вопросу.

Ссылка на обсуждение на форуме методов борьбы с шумом 3D принтера.

Рейтинг: 15

Метки: , , ,    2016-01-12      Раздел: Настройка, Электроника  
Автор: Просмотров: 39 270   35 комментариев



35 комментариев на «Правильная настройка тока для шаговых двигателей»

  1. Я пробовал так настраивать, но что-то у меня не пошло, были сдвиги в слоях и я еще добавил тока. Но обязательно еще раз попробую потому, что позже я еще на блоке питания подкрутил регулятор до упора и у меня напряжение побольше стало.

    Рейтинг: 0
    1. По всей видимости дело в механике. И скорее всего в линейных подшипниках.

      Рейтинг: 0
  2. Мои моторы: 42BYGHW609, ток — 1.7A
    Драйвера: DRV8825, шаг — 1/32
    Мануал драйвера https://www.pololu.com/product/2133
    Расчеты:
    Формула: Current Limit = VREF × 2 => 1,7 = VREF x 2
    VREF = 1.7 / 2 = 0,85 V
    На всех моторах выставил 0,6V
    Вроде крутит хорошо, не шумно, пропусков нет.

    Правильно ли я понимаю, что 0,85V как бы стандартный режим работы?
    Если ставлю значение меньше, моторы работают в легком режиме?

    Рейтинг: 0
    1. Всё верно понимаете.

      Рейтинг: 0
  3. Отмечу, что китайцы (Makerbase) для своих TMC2100 указывают I = Vref*1.9/2.5.
    Конкретный расчет зависит от величины токоизмерительного резистора (sense resistor).

    Рейтинг: 2
  4. Также я везде, где могу, радостно сообщаю о своем косяке.
    http://3deshnik.ru/forum/viewtopic.php?p=896#p896

    Рейтинг: 0
  5. шаговый 17HS8401
    Если верить китайцам распайка такая.
    Красный: A1 +
    Зеленый: A2 —
    Желтый: B1 +
    Синий: b2-
    Драйвер DRV8825 перемычки все установлены Vref поставил 2
    Плата рампс 1.4
    если подключить кра ный, зеленый, желтый, синий, начиная со стороны силовых проводов
    То двиг шумит пищит и даже иногда двигается.но не стабильно.
    Усилил ток на максимум..шумит греется не крутится.
    Драйвер менять пробовал.не помогло
    Подключая по буквам на рампсе должно быть так (синий зелёный красный жёлтый) на картинке схеме тут
    http://3deshnik.ru/blogs/akdzg/nastrojka-proshivki-marlin-dlya-3d-printera
    красный и зелёный поменяли местами.Я пробовал и так и по другому.в этих варианте мотор просто молчит.как отключенный
    Кручу из программы pronterface
    Фото одного из вариантов подключения мотора http://savepic.ru/9100385.jpg
    Где я ошибаюсь?

    Рейтинг: 0
    1. Ошибаетесь в расчётах Vref. Ток вашего двигателя = 1,8А, значит Vref=1,8/2=0,9В

      Рейтинг: 1
  6. Спасибо за быстрый ответ.Выставил 0.9в Двигатель стал жужжать тише но не крутится.Просто жужжит.Драйвер так же стал меньше греется.
    Сейчас распайка выглядит так . (A1 A2 B1 B2)
    согласно распайке
    Красный: A1 +
    Зеленый: A2 —
    Желтый: B1 +
    Синий: b2-
    http://savepic.ru/9056133.jpg

    Рейтинг: 0
    1. Я вот так подключал двигатели. Теперь нужно настраивать концевики. Предлагаю перейти в эту тему форума. Возможно там уже есть ответы на ваши вопросы.

      Рейтинг: 1
  7. Вопрос перенести туда?
    Сделал как у вас.Всё равно не работает

    Рейтинг: 0
  8. Спасибо за ответы.Разобрался(не без помощи)
    Оказалось концевики в прошивке прошиты как нормально замкнутые.У меня же подключены нормально разомкнутые
    Естественно при попытке крутить..Принтер получал сигнал что упёрся в концевик.И выключался.блокировал мотор
    Жужжал из за превышения тока.Грелся по той же причине.
    0.6 вольт маловато выставил на резисторе 0.7 Всё заработало.

    Удивляет что на плате маркировка не верная (2В 2А 1А 2В) а подключаем (1А 2А 1В 2В) это меня и сбивало с толку.

    Рейтинг: 0
    1. Сдается мне, что маркировка верная. Просто на плате цифра означает номер обмотки, а буквами обозначены ее концы. А альтернативный вариант — буквами обозначены обмотки, а цифрами их концы. По крайней мере я для себя так объяснил, когда пытался расшифровать эту загадку.

      Рейтинг: 0
  9. Вопрос возник… решил поставить 8825, судя по таблице, шаг 1/32 в трёх вариантах положения перемычек… а какой нужен? Я оставил все три (как было при 4488), увеличил шаги в прошивке вдвое (было 140) однако реально экструдер стал «недодавливать» чуть ли не половину. Опытным путём снова вычислил, что теперь надо 301.9 шагов. Что я делаю не так? И вообще, экструдер, если щупать пальцем вал, крутит с какими-то щелчками/шагами, т.е. я чувствую помимо «мелких» еще и какие то «крупные» шаги

    Рейтинг: 0
    1. Чем мельче микрошаг, тем больше шансов пропустить шаг. Вот двигатель похоже и пропускает шаги. Двигатель греется? Если нет, добавьте ещё Vref.

      Рейтинг: 0
      1. Но перемычки верно, все три должны быть? Напряжение поставил 0,85 (было по умолчанию 1,2), сам радиатор чипа не греется, мотор… мотор х.з., т.к. закрыл уже. Но думаю он за время теста и не успел бы нагреться. Да и ощущаю я не пропуски (скорее всего) а именно шаги, стабильно, чётко. Всего минут 5 поработал. Попробую долезть и замерить темп. Может термопарой.

        Рейтинг: 0
        1. С перемычками норм, если китайцы в разводке не начудили.

          Рейтинг: 1
          1. Интересно почему я ощущаю «тык, тык, тык» как секундная стрелка в часах с равным промежутком (и только на мееедленных оборотах во время печати. Думал должно быть незаметны шаги на таком драйвере. *SCRATCH*

            Рейтинг: 0
  10. Попробовал настроить по статье, двигатели и драйверы как в примере:A4988
    для 17HS4401: Vref = 1,7 / 2,5 = 0,68В
    но двигатели начали работать при напряжении 0,85В

    Рейтинг: 0
  11. но тут свою роль могла сыграть инструментальная погрешность китайского тэстера, всё относительно в китайской технике.

    Рейтинг: 0
  12. Вопрос. Драйвера А4988. Моторы 17HS4401. Токочувтвительные резисторы впаяны 100 Ом. По формуле получается 1.7х8х0.100=1.36. По умолчанию драйвера были настроены на Vref=0.68-0.70. Максимально, что я смог сделать это 1.210. Что я делаю не так??? При максимуме не гонял, При 0.68 вроде нормально бегает.

    Рейтинг: 1
    1. Оставьте Vref = 0,7В. При максимальном токе двигатели будут сильно нагреваться.

      Рейтинг: 0
      1. Скажем так, чуйка подсказывает тоже самое (оставить 0.68 как у всех и не париться :)), но мозг требует разобраться. Ведь эта формула взята из даташита. Откуда несоответствие?

        Рейтинг: 0
        1. Во первых не известно какого номинала подсторечный резистор (на китайском драйвере). Во вторых двигатели 17HS4401 имеют запас по мощности на 3D принтерах. При установке полного тока на драйвере, двигатель будет сильно нагреваться, что не желательно для несущих пластиковых деталей применяемых на RepRap принтерах. Всё было продумано до нас :)

          Рейтинг: 0
  13. Цвета проводов шаговика соответствует контактам 1A1B и 2A2B на рамс?

    Рейтинг: 0
    1. Найдите пары с помощью замыканий проводов двигателя. При замыкании пары вал труднее крутится. Цвета могут быть различными.

      Рейтинг: 0
      1. Пары на шаговике прозвонены.
        Я имею ввиду:
        пара красный+синий — подключаем к 1А1В
        пара зеленый+черный — подключаем к 2А2В ???

        Рейтинг: 0
        1. Это не важно и влияет только на направление вращения, которое можно изменить в прошивке.

          Рейтинг: 0
          1. Получается, что, например, пару красный+синий можно подключить и к 1А1В и к 1А2А ?

            Рейтинг: 0
    1. По этой ссылке как раз произвожу первое подключение. Благодарю!
      Т.к. первое подключение и неохота ждать 2 месяца новых плат, переспрашиваю.
      Вот еще, нагреватель хотенда — это резистор и полярность по барабану?
      А у нагревателя стола полярность соблюдать?

      Рейтинг: 0
      1. У стола полярность соблюдается только ради светодиода индикации.

        Рейтинг: 0
  14. Ребят объясните кто нибудь, драйвера у меня A4988. А шаговики на 2.8 ампера. Получается драйвера не подходят, но с этой точки зрения там не один драйвер не подходит. На драйверах выкрутил все на максимум по 1.22 V. В итоге два шаговика работают идеально, третий по оси Y смещает слои. Как накрутить больше чем 1.22? Движки не греются… Возможно ли что пропуски из за того, что двигатели соединены на скрутке, а не пайке, и где то порой не проходит контакт?

    Рейтинг: 0

Добавить комментарий




     
Авторизация
*
*
Регистрация
*
*
*
Перейти на страницу
Яндекс.Метрика