Commande de moteur SBC
Double commande moteur Joy-It basée sur un L298N permettant de contrôler la vitesse et le sens de deux moteurs CC à partir d'un microcontrôleur Arduino par exemple. Il convient pour les charges inductives: moteurs, solénoîdes, relais, etc.
Caractéristiques:
Alimentation du moteur: 5 à 35 Vcc
Niveau logique: 5 V
Courant de sortie: 2 A par moteur (en fonction de la tension)
Puissance de sortie: 25 W maxi
Signal de commande:
- Vitesse: PWM
- Sens de rotation: logique
Dimensions: 43 x 43 x 27 mm
Référence fabricant: SBC-Motodrivers2

Attention : Règles de pilotage
Le driver permet de commander 2 moteurs
Dans l'exemple ci-dessus 1 seul moteur est commandé par IN1ou IN2
IL NE FAUT PAS PILOTER IN1 et IN2 en même temps sous peine de destruction du driver ! ! !
ENA = 3.3V | IN1=3.3V IN2=GND | Marche avant |
IN1=GND IN2=3.3V | Marche arrière | |
IN1=IN2=GND | arrêt freiné | |
ENA=GND | arrêt roue libre |
Méthode : Programmation ESP32 mode simple
Réalisez le câblage suivant :
#Pilotage driver en mode TOR temporisé by Turgot
from machine import Pin
import time
# Configuration
Mav = Pin(2, Pin.OUT)
Mar = Pin(15, Pin.OUT)
# Fonction marche avant temporisée
def MarcheAVt(t):
print("Marche Avant")
Mav.on()
time.sleep(t)
Mav.off()
print("Arrêt")
# Fonction marche arrière temporisée
def MarcheARt(t):
print("Marche Arrière")
Mar.on()
time.sleep(t)
Mar.off()
print("Arrêt")
# Programme de test
MarcheARt(1)
time.sleep(2)
MarcheAVt(1)
Complément : Programme ESP32 en PWM
Câblage identique sauf si on utilise ENA...
#Pilotage driver
from machine import Pin, PWM
import time
#configuration
frequency = 25000
Mav = PWM(Pin(2), frequency)
Mar = PWM(Pin(15), frequency)
#fonction marche avant MarcheAVt(puissance%):
def MarcheAV(p):
print("Marche Avant",p,"%")
duty=int(p*10.23)
print (duty)
Mav.duty(duty)
#Programme de test
MarcheAV(10)
time.sleep(2)
MarcheAV(40)
time.sleep(2)
MarcheAV(65)
time.sleep(2)
MarcheAV(0)