ESP32 Урок 15/55 - Управление скоростью двигателя постоянного тока с помощью ESP32 L293D | Обучающий набор ESP32 IoT от SunFounder
Учебник по ESP32 15/55 — Управление скоростью двигателя постоянного тока с помощью ESP32 и L293D | Обучающий набор SunFounder ESP32 для Интернета вещей
Управление двигателем постоянного тока с помощью ESP32 может показаться сложным, но с правильными компонентами и пониманием это вполне выполнимо. В этом уроке мы создадим проект, который позволит нам управлять скоростью и направлением двигателя постоянного тока с помощью драйвера двигателя L293D. В итоге у вас будет рабочая схема, которая сможет вращать двигатель вперед и назад, регулируя его скорость. Для наглядности обязательно посмотрите видео (на видео в 00:00).
Объяснение аппаратного обеспечения
Основными компонентами этого проекта являются микроконтроллер ESP32 и драйвер двигателя L293D. ESP32 — это мощный микроконтроллер со встроенными возможностями Wi-Fi и Bluetooth, что делает его подходящим для приложений Интернета вещей. Он может управлять различными аппаратными компонентами, включая двигатели, через свои контакты GPIO. L293D — это двойной H-мостовой драйвер двигателя, который позволяет управлять направлением и скоростью двух двигателей постоянного тока. Каждый H-мост может приводить двигатель в движение в любом направлении, изменяя полярность напряжения, подаваемого на выводы двигателя. Кроме того, L293D может выдерживать ток до 600 мА на канал, что делает его подходящим для двигателей малого и среднего размера.
Данные из технического описания
| Производитель | Texas Instruments |
|---|---|
| Номер детали | L293D |
| Напряжение логики/ввода-вывода | 2,5–7 В |
| Напряжение питания | 4,5–36 В |
| Выходной ток (на канал) | 600 мА (ном.) |
| Пиковый ток (на канал) | 1,2 А (макс.) |
| Рекомендации по частоте ШИМ | 20 кГц (ном.) |
| Пороговые значения входной логики | 0,8 В (высокий), 2,0 В (низкий) |
| Падение напряжения / RDS(on) / насыщение | 1,5 В (макс.) |
| Тепловые пределы | 150 °C (макс.) |
| Корпус | 16-DIP |
| Примечания / варианты | Счетверенный половинный H-драйвер |
- Обеспечьте надлежащий отвод тепла для приложений с высоким током.
- Развяжите источник питания конденсаторами, чтобы предотвратить скачки напряжения.
- Будьте осторожны с проводкой, чтобы предотвратить обратную полярность.
- Используйте ШИМ для управления скоростью, чтобы избежать перегрева.
- Проверьте номинальное напряжение двигателя, чтобы предотвратить повреждение.
Инструкции по подключению

Чтобы подключить ESP32 и драйвер двигателя L293D, начните с подключения питания. Подключите вывод 16 L293D к положительному выводу вашего источника питания, а вывод 4 — к земле. Затем подключите двигатель: один вывод к выводу 3, а другой к выводу 6 на L293D. Для управляющих сигналов подключите контакт GPIO 13 ESP32 к выводу 2 на L293D и контакт GPIO 14 к выводу 7. Наконец, убедитесь, что вы соединили землю ESP32 с землей L293D, чтобы обеспечить общую опорную точку. Если в видео упоминается альтернативное подключение (на видео в 05:00), обязательно следуйте конкретным показанным изменениям.
Примеры кода и пояснения
Код для управления двигателем состоит из определения выводов для двигателя и установки их режимов. Вот фрагмент из функции setup:
#define motor1A 13
#define motor2A 14
void setup() {
pinMode(motor1A, OUTPUT);
pinMode(motor2A, OUTPUT);
}
В этом фрагменте мы определяем контакты управления двигателем как константы и устанавливаем их как выходы в функции setup. Это важно, так как подготавливает контакты для управления двигателем. Функция loop — это место, где управляется поведение двигателя. Вот ключевая часть цикла:
void loop() {
digitalWrite(motor1A, HIGH);
digitalWrite(motor2A, LOW);
delay(2000);
digitalWrite(motor1A, LOW);
digitalWrite(motor2A, HIGH);
delay(2000);
digitalWrite(motor1A, LOW);
digitalWrite(motor2A, LOW);
delay(3000);
}
Этот код вращает двигатель в одном направлении в течение 2 секунд, затем меняет направление на противоположное еще на 2 секунды и, наконец, останавливает двигатель на 3 секунды. Этот цикл будет повторяться бесконечно, обеспечивая непрерывное управление. Для более подробной информации и полного кода обратитесь к полной программе, которая загружается ниже статьи.
Демонстрация / Что ожидать
После успешного подключения и загрузки кода вы должны увидеть, как двигатель вращается в одном направлении в течение 2 секунд, меняет направление еще на 2 секунды, а затем останавливается на 3 секунды. Если двигатель не реагирует должным образом, проверьте распространенные ошибки, такие как обратная полярность или неправильные подключения контактов (на видео в 08:00). Эта схема обеспечивает простой способ управления скоростью и направлением двигателя постоянного тока с помощью ESP32 и L293D.
Временные метки видео
- 00:00 Начало
- 2:01 Введение в двигатель постоянного тока
- 6:14 Драйвер двигателя L293D
- 9:17 Документация проекта
- 11:04 Объяснение подключения
- 14:41 Управление двигателем Arduino с помощью ESP32
- 17:10 Выбор портов Arduino для платы ESP32
- 18:52 Демонстрация проекта
- 22:08 Управление скоростью двигателя с помощью ESP32
- 26:22 Демонстрация управления скоростью
- 28:01 Код Arduino для управления скоростью и направлением
- 29:05 Демонстрация скорости и направления
#define motor1A 13
#define motor2A 14
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin as an output.
pinMode(motor1A, OUTPUT);
pinMode(motor2A, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
// Rotate
digitalWrite(motor1A, HIGH);
digitalWrite(motor2A, LOW);
delay(2000);
// Rotate in the opposite direction
digitalWrite(motor1A, LOW);
digitalWrite(motor2A, HIGH);
delay(2000);
// Stop
digitalWrite(motor1A, LOW);
digitalWrite(motor2A, LOW);
delay(3000);
}
Common Course Links
Common Course Files
Вещи, которые могут вам понадобиться
-
Амазонка
-
eBayКупите чип L293D на eBay.ebay.us
-
АлиЭкспрессКупите IC драйвера мотора L293D на AliExpress.s.click.aliexpress.com
Ресурсы и ссылки
-
ДокументацияESP32 Учебник 15/55 - Документация по управлению моторами SunFounderdocs.sunfounder.com
Файлы📁
Технический паспорт (pdf)
-
L293d_Четырехканальный_полумостовой_даташит
l293d_Quadruple_half_bridge_datasheet.pdf0.34 MB