Каталог
(0)

Модуль управления двигателем 43A, Bts7960

Нет в наличии
Описание

Драйвер мотора BTS7960 — позволяет управлять одним коллекторным двигателем рассчитанным на напряжение от 5,5 до 27,5 В постоянного тока до 43 А. Но так как клеммник установленный на плате не рассчитан на такие токи, то для долговременной работы рекомендуется использовать двигатели с током потребления до 10 А. С помощью данного драйвера можно управлять скоростью двигателя, направлением его движения, выполнять торможение и контролировать нагрузку которую испытывает двигатель.

Характеристики

  • Напряжение питания двигателя: от 5,5 до 27,5 В постоянного тока (вне указанного диапазона драйвер перейдёт в режим защиты).
  • Напряжение питания логики: 5 В постоянного тока.
  • Максимально допустимы ток мотора: 43 А (кратковременно).
  • Максимально допустимы ток мотора: 10 А (долговременно).
  • Максимальная частота ШИМ на управляющих выводах: 25 кГц
  • Напряжение логических уровней на управляющих выводах: 3,3 или 5 В

Назначение выводов

  • «M+» и «M-» - Выходы для подключения мотора.
    • «M-» Выход левого плеча H-моста (чип U3).
    • «M+» Выход правого плеча H-моста (чип U2).
  • «S+» и «S-» - Питание мотора.
  • «Vcc» и «GND» - Питание логики.
  • «L_IS» - Выход состояния левого плеча H-моста (чип U3).
    • Вывод является флагом ошибки (если она есть), иначе с этого выхода можно снимать уровень напряжения пропорциональный току протекающему через мотор, а значит контролировать силу нагрузки приложенной к мотору.
  • «R_IS» - Выход состояния правого плеча H-моста (чип U2).
    • Вывод является флагом ошибки (если она есть), иначе с этого выхода можно снимать уровень напряжения пропорциональный току протекающему через мотор, а значит контролировать силу нагрузки приложенной к мотору.
  • «L_EN» - Вход разрешения работы левого плеча H-моста (чип U3).
    • Сброс в 0 - отключает выход мотора «M-» (переводит его в состояние высокого импеданса).
    • Установка в 1 - разрешает работу выхода мотора «M-».
  • «R_EN» - Вход разрешения работы правого плеча H-моста (чип U2).
    • Сброс в 0 - отключает выход мотора «M+» (переводит его в состояние высокого импеданса).
    • Установка в 1 - разрешает работу выхода мотора «M+».
  • «L_PWM» - Вход установки потенциала на выходе левого плеча H-моста (чип U3).
    • Сброс в 0 - устанавливает на выходе «M-» потенциал вывода «S-».
    • Установка в 1 - устанавливает на выходе «M-» потенциал вывода «S+».
    • Установка потенциалов «S+» или «S-» на выходе «M-» возможна только если установлена 1 на входе «L_EN».
  • «R_PWM» - Вход установки потенциала на выходе правого плеча H-моста (чип U2).
    • Сброс в 0 - устанавливает на выходе «M+» потенциал вывода «S-».
    • Установка в 1 - устанавливает на выходе «M+» потенциал вывода «S+».
    • Установка потенциалов «S+» или «S-» на выходе «M+» возможна только если установлена 1 на входе «R_EN»

Подключение драйвера

  • Двигатель подключается к выводам «M+» и «M-» клеммника.
  • Напряжение питания двигателя (5,5 - 27,5 В постоянного тока) подаётся на выводы «S+» и «S-» клеммника.
  • Напряжение питания логической части (5 В постоянного тока) подаётся на выводы «Vcc» и «GND».
  • Драйвером можно управлять по 2, 3, или 4 проводам:
      Подключение драйвера мотора к Arduino по 2 проводам:
    • Выводы «L_EN» и «R_EN» драйвера соединяются друг с другом и подключаются к «Vcc» (не участвуют в управлении).
    • Вывод «L_PWM» подключается к любому выводу Arduino поддерживающему ШИМ.
    • Вывод «R_PWM» подключается к любому выводу Arduino поддерживающему ШИМ.
      Управление драйвером мотора по 2 проводам:
    • Движение вперёд с регулировкой скорости: «L_PWM» = 0, «R_PWM» = ШИМ (чем выше ШИМ тем выше скорость).
    • Движение вперёд с регулировкой скорости: «L_PWM» = ШИМ, «R_PWM» = 1 (чем выше ШИМ тем ниже скорость).
    • Движение назад с регулировкой скорости: «L_PWM» = ШИМ, «R_PWM» = 0 (чем выше ШИМ тем выше скорость).
    • Движение назад с регулировкой скорости: «L_PWM» = 1, «R_PWM» = ШИМ (чем выше ШИМ тем ниже скорость).
    • Торможение: «L_PWM» = «R_PWM» = 0 или 1 (максимальное торможение).
      Преимущества и недостатки схемы управления по 2 проводам:
    • Явное преимущество схемы - минимальное количество задействованных выводов Arduino.
    • Так как на входах «L_EN» и «R_EN» постоянно установлена 1 (они подключены к «Vcc»), значит выходы мотора «M+» и «M-» не переходят в состояние высокого импеданса (не отключаются), следовательно, можно осуществлять торможение скоростью (уменьшение скорости приводит к торможению). Это-же факт можно отнести и к недостаткам схемы, так как в ней нельзя освободить мотор, на его выводах «M+» и «M-» всегда установлены потенциалы «S+» и/или «S-».
      Подключение драйвера мотора к Arduino по 3 проводам:
    • Выводы «L_EN» и «R_EN» драйвера соединяются друг с другом и подключаются к любому выводу Arduino поддерживающему ШИМ.
    • Вывод «L_PWM» подключается к любому выводу Arduino.
    • Вывод «R_PWM» подключается к любому выводу Arduino.
      Управление драйвером мотора по 3 проводам:
    • Движение вперёд с регулировкой скорости: «L_PWM» = 0, «R_PWM» = 1, «EN» = ШИМ (чем выше ШИМ тем выше скорость).
    • Движение назад с регулировкой скорости: «L_PWM» = 1, «R_PWM» = 0, «EN» = ШИМ (чем выше ШИМ тем выше скорость).
    • Свободное вращение: «L_PWM» и «R_PWM» не имеют значения, «EN» = 0 (мотор электрически отключён).
    • Торможение: «L_PWM» = «R_PWM» = 0 или 1, «EN» = ШИМ (чем выше ШИМ тем сильнее торможение).
      Преимущества и недостатки схемы управления по 3 проводам:
    • Не смотря на большее количество проводов, схема управления выглядит проще: «L_PWM» и «R_PWM» управляют направлением, а «EN» скоростью. Если на входах «L_PWM» и «R_PWM» одинаковый логический уровень, то «EN» управляет торможением.
    • Есть возможность регулировать уровень торможения при помощи ШИМ без подачи напряжения (разности потенциалов) на двигатель.
    • При подаче логического 0 на вход «EN», мотор электрически отключается от схемы. Например, если управляемое мотором устройство стоит на горке и на всех входах «L_PWM», «R_PWM» и «EN» установлена 1, то оно никуда не поедет, но стоит сбросить в 0 уровень на входе «EN», как мотор освободится и устройство скатится с горки. Еще одним примером может быть экономия электроэнергии: после достижения требуемой скорости, сбрасываем уровень на входе «EN» в состояние логического 0 и устройство будет продолжать движение по инерции, далее устанавливаем на входе «EN» логическую 1, набираем скорость и снова сбрасываем в 0.
    • К недостаткам схемы подключения по 3 проводам можно отнести то, что в схеме не предусмотрено торможение скоростью.
      Подключение драйвера мотора к Arduino по 4 проводам:
    • Выводы «L_EN», «R_EN», «L_PWM» и «R_PWM» подключаются к выводам Arduino поддерживающим ШИМ (иначе целесообразнее использовать схему с 2 или 3 проводами).
      Управление драйвером мотора по 4 проводам:
    • В такой схеме можно осуществлять управление по любому из рассмотренных ранее вариантов управления, переключаясь с одной схемы на другую по мере необходимости.
      Преимущества и недостатки схемы управления по 4 проводам:
    • Достоинство схемы заключается в её универсальности, можно использовать достоинства двух предыдущих схем и избавиться от их недостатков.
    • Явный недостаток схемы - максимальное количество задействованных выводов Arduino.

Питание

  • Напряжение питания двигателя (5,5 - 27,5 В постоянного тока) подаётся на выводы «S+» и «S-» клеммника.
  • Напряжение питания логической части (5 В постоянного тока) подаётся на выводы «Vcc» и «GND».

Подробнее о драйвере

Драйвер построен на базе H-моста собранного из двух полумостов на чипах BTS7960. Чипы BTS7960 поддерживают ШИМ до 25 кГц (например, у Arduino UNO частота ШИМ всего 0,5 кГц) и снабжены схемами защиты от короткого замыкания, перегрева, перенапряжения (на выводах клеммника S+ и S-) и падения напряжения ниже 5,5 В (на выводах клеммника S+ и S-). Чипы BTS7960 имеют вывод состояния «IS» напряжение на котором меняется пропорционально току протекающему через двигатель (что позволяет определить, какую нагрузку испытывает двигатель), а в случае обнаружения ошибок, вывод «IS» работает как флаг обнаружения ошибки устанавливаясь в логическую «1». На плате выводы чипов «IS» прижаты к GND через сопротивление 10 кОм и подключены к выходам платы «L_IS» и «R_IS». На плате драйвера установлен шинный формирователь на базе чипа 74HC244 который обеспечивает развязку логических уровней управляющих сигналов между входами «L_EN», «R_EN», «L_PWM», «R_PWM» и входами чипов BTS7960. Благодаря наличию шинного формирователя управлять драйвером можно логическими уровнями как 3,3 В, так и 5 В логики.

Примеры

Управление драйвером мотора

В приведённом скетче используется схема управления драйвером по 3 проводам. Номера выводов Arduino назначаются в трёх первых строках скетча.

const uint8_t EN    = 3;        // № вывода Arduino к которому подключены входы драйвера L_EN и R_EN. Можно указать любой вывод Arduino поддерживающий ШИМ. const uint8_t L_PWM = 4;        // № вывода Arduino к которому подключён  вход  драйвера L_PWM.       Можно указать любой вывод Arduino, как цифровой, так и аналоговый. const uint8_t R_PWM = 5;        // № вывода Arduino к которому подключён  вход  драйвера R_PWM.       Можно указать любой вывод Arduino, как цифровой, так и аналоговый. void setup(){
pinMode
(EN, OUTPUT); // Конфигурируем вывод EN как выход (выход Arduino, вход драйвера)
pinMode
(L_PWM, OUTPUT); // Конфигурируем вывод L_PWM как выход (выход Arduino, вход драйвера)
pinMode
(R_PWM, OUTPUT); // Конфигурируем вывод R_PWM как выход (выход Arduino, вход драйвера) } void loop(){ // Движение вперёд на 50% скорости:
digitalWrite
(L_PWM, LOW ); // Устанавливаем логический 0 на входе драйвера L_PWM, значит на выходе драйвера M- будет установлен потенциал S-
digitalWrite
(R_PWM, HIGH); // Устанавливаем логическую 1 на входе драйвера R_PWM, значит на выходе драйвера M+ будет установлен потенциал S+
analogWrite
(EN, 127 ); // Устанавливаем 50% ШИМ на входах драйвера L_EN и R_EN, это скорость, можно установить от 0 (0%) до 255 (100%).
delay
(3000); // Ждём 3 секунды. ШИМ и логические уровни останутся без изменений, значит мотор продолжит вращаться с указанной скоростью и направлением. // Движение вперёд на 100% скорости:
digitalWrite
(L_PWM, LOW ); // Устанавливаем логический 0 на входе драйвера L_PWM, значит на выходе драйвера M- будет установлен потенциал S-
digitalWrite
(R_PWM, HIGH); // Устанавливаем логическую 1 на входе драйвера R_PWM, значит на выходе драйвера M+ будет установлен потенциал S+
analogWrite
(EN, 255 ); // Устанавливаем 100% ШИМ на входах драйвера L_EN и R_EN, это скорость. Если устанавливаемое значение 255, то функцию можно заменить на digitalWrite(EN, HIGH);
delay
(3000); // Ждём 3 секунды. ШИМ и логические уровни останутся без изменений, значит мотор продолжит вращаться с указанной скоростью и направлением. // Свободное вращение:
digitalWrite
(EN, LOW ); // Устанавливаем логический 0 на входах драйвера L_EN и R_EN, значит выходы M+ и M- перейдут в состояние высокого импеданса и мотор будет электрически отключён.
delay
(3000); // Ждём 3 секунды. Логические уровни на входах драйвера L_PWM и R_PWM не имеют значения (могут быть любыми). // Движение назад на 50% скорости:
digitalWrite
(L_PWM, HIGH); // Устанавливаем логическую 1 на входе драйвера L_PWM, значит на выходе драйвера M- будет установлен потенциал S+
digitalWrite
(R_PWM, LOW ); // Устанавливаем логический 0 на входе драйвера R_PWM, значит на выходе драйвера M+ будет установлен потенциал S-
analogWrite
(EN, 127 ); // Устанавливаем 50% ШИМ на входах драйвера L_EN и R_EN, это скорость, можно установить от 0 (0%) до 255 (100%).
delay
(3000); // Ждём 3 секунды. ШИМ и логические уровни останутся без изменений, значит мотор продолжит вращаться с указанной скоростью и направлением. Показать полностью Свернуть

Отзывы
Отзывов еще никто не оставлял
Написать отзыв Отмена
Оставить отзыв
Перед публикацией отзывы проходят модерацию
Выбрать
    Ранее просмотренные
    Обратный звонок
    Запрос успешно отправлен!
    Имя *
    Телефон *
    Предзаказ
    Предзаказ успешно отправлен!
    Имя *
    Телефон *
    Добавить в корзину
    Название товара
    100 ₽
    1 шт.
    Перейти в корзину
    Заявка

    Я ознакомлен и согласен с условиями оферты и политики конфиденциальности.