КОРЗИНА
магазина
8 (499) 500-14-56 | ПН. - ПТ. 12:00-18:00
ЛЕСНОРЯДСКИЙ ПЕРЕУЛОК, 18С2, БЦ "ДМ-ПРЕСС"

Trema-модуль Драйвер мотора

Общие сведения:

Trema-модуль Драйвер мотора - модуль собранный на основе чипа L9110, что позволяет управлять коллекторными моторами с током потребления до 300 мА.

Видео:

Редактируется ...

Спецификация:

  • Напряжение питания локиги модуля: 5 В;
  • Напряжение питания мотора: 2,5 - 12 В;
  • Ток потребляемый модулем без нагрузки: < 50 мкА;
  • Номинальный ток нагрузки: 300 мА;
  • Интерфейс:
    • Логический уровень 5V;
    • Вывод D (Direction) Направление - цифровой;
    • Вывод S (Speed) Скорость - ШИМ.
  • Рабочая температура: от 0 до +80 °С.
  • Габариты: 30 х 30 мм.
  • Вес: 6 г.

Все модули линейки "Trema" выполнены в одном формате

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

На плате модуля имеется колодка для подключения к Arduino и винтовой клеммник для подключения мотора и его питания.

Колодка для подключения к Arduino:

Колодка имеет 4 вывода обозначенные буквами G, V, S, D.

  • D (Direction) - Направление. Выбирается логическим уровнем (0/1).
  • S (Speed) - Скорость. Устанавливается сигналом ШИМ.
  • V (Vcc) - Питание логики модуля (+5В).
  • G (GND) - Общий вывод питания.

Винтовой клеммник:

Клеммник позволяет подключить мотор и его питание.

  • VIN - Два вывода для подключения питания мотора с указанной полярностью.
  • MOT - Два вывода для подключения мотора.

Подключение:

Модуль удобно подключать 3 способами, в зависимости от ситуации:

Способ - 1: Используя провода и Piranha UNO

Вывод Arduino Вывод модуля
2 (можно использовать любой вывод) D
3 (можно использовать только вывод с ШИМ: 3,5,6,9,10,11) S
5V V
GND G

Способ - 2: Используя Trema Set Shield

Модуль можно установить в любую из трёх верхних ячеек, с номерами 1, 3 или 5.

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

Номер ячейки Trema Set Shield Вывод DIR_PIN Вывод PWM_PIN
1106
393
51311

Способ - 3: Используя провода и Shield

Вывод Shield'а Вывод модуля
2 (можно использовать любой вывод) D
3 (можно использовать только вывод с ШИМ: 3,5,6,9,10,11) S
Vcc V
GND G

Подключение внешнего источника и нагрузки

При любом из вариантов выше, возможно два способа подключения нагрузки.

С питанием от отладочной платы Arduino

При таком подключении мотор будет питаться от 5 вольт, через провода подключения к отладочной плате.

С питанием от внешнего источника

При таком подключении мотор будет питаться от внешнего источника питания от 2,5 до 12 вольт.

Питание:

Входное напряжение питания 5В постоянного тока, подаётся на выводы V и G.

Подробнее о модуле:

Модуль позволяет управлять скоростью и направлением вращения коллекторных моторов с потреблением тока до 300 мА. Модуль собран на базе чипа L9110, в отличии от подобных модулей на данном чипе в нём реализована активная развязка управляющего сигнала, что позволит не нагружать выводы Arudino.

Примеры:

Изменение направления вращения

В данном примере мотор будет вращаться сначала в одну сторону с максимальной скоростью в течении двух секунд, затем остановится на одну секунду и начнёт вращаться в другую.

// Определяем выводы подключения 2 - направление, 3 - скорость
#define DIR_PIN 2
#define PWM_PIN 3

// Создаём переменную направления
bool dir = false;

void setup()
{
    // Устанавливаем выводы в режиме выходов
    pinMode(DIR_PIN, OUTPUT);
    pinMode(PWM_PIN, OUTPUT);
}

void loop()
{
    // Устанавливаем ШИМ
    analogWrite(PWM_PIN, 255);
    // Устанавливаем направление, заданное переменной dir
    digitalWrite(DIR_PIN, dir);
    // Ждём 2 секунды
    delay(2000);
    // Выключаем мотор
    analogWrite(PWM_PIN, 0);
    // Ждём секунду
    delay(1000);
    // Меняем направление
    dir = !dir;
}

Плавный старт

В данном примере мотор будет плавно набирать скорость вращения, а затем так же плавно останавливаться.

// Определяем выводы
#define DIR_PIN 2
#define PWM_PIN 3
// Определяем максимальную ШИМ
#define MAX_SPEED 255

void setup()
{
    // Устанавливаем выводы в режим выхода
    pinMode(DIR_PIN, OUTPUT);
    pinMode(PWM_PIN, OUTPUT);
    // Устанавливаем направление вращения
    digitalWrite(DIR_PIN, HIGH);
}

void loop()
{
    // Медленно приращиваем скорость при помощи ШИМ
    for (uint8_t speed = 0; speed < MAX_SPEED; speed++) {
        analogWrite(PWM_PIN, speed);
        delay(10);
    }

    // Выходим на максимальную скорость
    analogWrite(PWM_PIN, MAX_SPEED);
    delay(1000);

    // Медленно сбавляем скорость
    for (uint8_t speed = MAX_SPEED; speed > 0; speed--) {
        analogWrite(PWM_PIN, speed);
        delay(10);
    }

    // Выключаем мотор
    analogWrite(PWM_PIN, 0);
    delay(1000);
}

Ссылки:




Обсуждение

Гарантии и возврат Используя сайт Вы соглашаетесь с условями