В этом уроке мы подключим двигатель постоянного тока к новой плате Raspberry Pi4, соберем схему и напишем скетч.
Комплектующие
Для сборки схемы и работы с двигателями через Raspberry Pi 4 нам понадобятся следующие компоненты:
- Raspberry Pi 4 Model B
- L298N Модуль драйвера электродвигателя
- Липоаккумулятор 3300mAh
- Соединительные провода (провода перемычки)
- 5V - 2A электропитание для Raspberry Pi
- 5V Двигатель постоянного тока
Двигатель постоянного тока должен идти с драйвером двигателя.
Что такое драйвер двигателя? Драйвер двигателя - это специальная схема или микросхема, которая обеспечивает необходимую мощность (точнее, ток) двигателя для бесперебойной и безопасной работы.
Схема соединения
Все наши основные комплектующие мы подключаем согласно схеме ниже:
Драйвер L298N
С модулем моторного привода L298N, мы можем фактически управлять двумя двигателями. Из соображений простоты, я продемонстрирую схему, работу и программу для управления одним двигателем постоянного тока с Raspberry Pi 4.
Краткий обзор модуля моторного привода L298N ниже.
Этот двунаправленный драйвер с двумя двигателями основан на очень популярной интегральной схеме L298 Dual H-Bridge Motor Driver Integrated Circuit.
Схема позволит вам легко и независимо управлять двумя двигателями до 2A каждый в обоих направлениях. идеально подходит для роботизированных приложений и хорошо подходит для подключения к микроконтроллеру, требующих всего пару линий управления на двигатель.
Он также может взаимодействовать с простыми ручными переключателями, TTL логическими затворами, реле и т.д. Эта плата оснащена светодиодными индикаторами питания, встроенным регулятором +5В и диодами защиты.
Краткие данные:
- Драйвер: L298N Dual H Bridge
- Питание: DC 5 В - 35 В
- Пиковый ток: 2 А
- Диапазон рабочего тока: 0 ~ 36 мА
Диапазон входного напряжения:
- Низкий: -0,3 В ≤ Vin ≤ 1,5 В
- Высокий: 2,3 В ≤ Vin ≤ Vss.
Диапазон входного напряжения сигнала:
- Низкий: -0,3 ≤ Vin ≤ 1,5 В (контрольный сигнал недействителен)
- Высокий: 2,3 В ≤ Vin ≤ Vss (сигнал управления активен)
- Максимальная потребляемая мощность: 20 Вт (при температуре Т = 75℃)
- Температура хранения: -25 ℃ ~ +130
- Встроенная регулируемая выходная мощность + 5 В (питание для платы контроллера, типа Arduino).
Размер: 3.4 см x 4.3 см x 2.7 см
Скетч
Ниже вы можете скопировать скетч (программу Python) управления двигателем с помощью Raspberry Pi 4:
import RPi.GPIO as GPIO
from time import sleep
# Pins for Motor Driver Inputs
Motor1A = 21
Motor1B = 20
Motor1E = 16
def setup():
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM) # GPIO Numbering
GPIO.setup(Motor1A,GPIO.OUT) # All pins as Outputs
GPIO.setup(Motor1B,GPIO.OUT)
GPIO.setup(Motor1E,GPIO.OUT)
def loop():
# Going forwards
GPIO.output(Motor1A,GPIO.HIGH)
GPIO.output(Motor1B,GPIO.LOW)
GPIO.output(Motor1E,GPIO.HIGH)
print("Going forwards")
sleep(5)
# Going backwards
GPIO.output(Motor1A,GPIO.LOW)
GPIO.output(Motor1B,GPIO.HIGH)
GPIO.output(Motor1E,GPIO.HIGH)
print("Going backwards")
sleep(5)
# Stop
GPIO.output(Motor1E,GPIO.LOW)
GPIO.output(Motor1B,GPIO.LOW)
print("Stop")
def destroy():
GPIO.cleanup()
if __name__ == '__main__': # Program start from here
setup()
try:
loop()
except KeyboardInterrupt:
destroy()
На этом всё. Скоро мы запускаем курс по основам работы с платами Raspberry Pi.