Общие сведения:
Trema-модуль Драйвер мотора - модуль собранный на основе чипа L9110, что позволяет управлять коллекторными моторами с током потребления до 300 мА.
Видео:
Редактируется ...
Спецификация:
- Напряжение питания локиги модуля: 5 В;
- Напряжение питания мотора: 2,5 - 12 В;
- Ток потребляемый модулем без нагрузки: < 50 мкА;
- Номинальный ток нагрузки: 300 мА;
- Интерфейс:
- Логический уровень 5V;
- Направление - цифровой;
- Скорость - ШИМ.
- Рабочая температура: от 0 до +80 °С.
- Габариты: 30 х 30 мм.
- Вес: 6 г.
Все модули линейки "Trema" выполнены в одном формате
Подключение:
Модуль удобно подключать 3 способами, в зависимости от ситуации:
Способ - 1: Используя провода и Piranha UNO
Вывод Arduino | Вывод модуля |
---|---|
2 | D |
3 | S |
5V | V |
GND | G |
Способ - 2: Используя Trema Set Shield
Способ - 3: Используя провода и Shield
Вывод Shield'а | Вывод модуля |
---|---|
2 | D |
3 | 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); }
Обсуждение