Pilotage de Moteurs DC avec le Module L298N

Le Raspberry Pi Pico, un microcontrôleur versatile et abordable, en association avec le module de commande L298N, offre une excellente plateforme pour contrôler des moteurs DC, comme les moteurs TT couramment utilisés dans les projets de robots mobiles. Cet article détaille comment configurer et utiliser le Raspberry Pi Pico et le module L298N pour piloter des moteurs DC.

    3gms
  • Découverte

Introduction aux Composants

Moteurs DC TT

Les moteurs TT sont des moteurs à courant continu économiques et efficaces, souvent utilisés dans les kits de robotique pour leur simplicité d'intégration et leur coût abordable.

Module L298N

Le L298N est un driver de moteur capable de piloter deux moteurs DC simultanément. Il est apprécié pour sa robustesse et sa capacité à gérer de forts courants, jusqu'à 2A par canal.

l298n l298n

Configuration du Matériel

Matériel Nécessaire

  • Raspberry Pi Pico
  • Module de commande de moteur L298N
  • Moteurs DC TT (2x)
  • Batterie externe ou source d'alimentation appropriée
  • Câbles de connexion
  • Breadboard (facultatif, pour le prototypage)

Connexion du Raspberry Pi Pico au L298N

  1. Alimentation : Connectez la source d'alimentation au L298N. Assurez-vous que la tension est adaptée aux moteurs DC TT.
  2. Connexion des moteurs : Branchez les moteurs aux sorties du L298N.
  3. Connexion au Pico : Connectez les entrées de commande du L298N aux GPIO du Raspberry Pi Pico. Utilisez les pins GPIO pour envoyer des signaux PWM qui contrôleront la vitesse des moteurs.

l298n wiring

Programmation du Raspberry Pi Pico

Pour contrôler les moteurs via le Raspberry Pi Pico, vous aurez besoin de programmer le microcontrôleur pour envoyer des signaux PWM. Voici un exemple de code en MicroPython pour contrôler un moteur :

from machine import Pin, PWM
import time

# Configuration des pins de contrôle du moteur
enable_pin = PWM(Pin(0))
motor_left_pin1 = Pin(1, Pin.OUT)
motor_left_pin2 = Pin(2, Pin.OUT)
motor_left_pin1 = Pin(1, Pin.OUT)
motor_left_pin2 = Pin(2, Pin.OUT)

# Initialisation du PWM
enable_pin.freq(1000)  # Fréquence de 1 kHz

def motor_forward(speed):
    motor_left_pin1.high()
    motor_left_pin2.low()
    motor_right_pin1.high()
    motor_right_pin2.low()
    enable_pin.duty_u16(speed)  # Vitesse en PWM (0-65535)

def motor_stop():
    motor_left_pin1.low()
    motor_left_pin2.low()
    motor_left_pin1.low()
    motor_left_pin2.low()
    enable_pin.duty_u16(0)

# Exemple de contrôle du moteur
motor_forward(32767)  # Demi-vitesse
time.sleep(2)
motor_stop()

Ce script initialise les pins connectés au L298N et définit des fonctions pour faire avancer le moteur à une vitesse spécifiée et pour l'arrêter.

Conseils pour le Déploiement

  • Surveillance de la température : Le L298N peut devenir très chaud lorsqu'il est utilisé à pleine charge. Assurez-vous de surveiller la température lors de longues périodes d'utilisation.
  • Gestion de l'alimentation : Utilisez une source d'alimentation capable de fournir suffisamment de courant pour vos moteurs sans causer de chute de tension.
  • Tests progressifs : Commencez par tester votre configuration à basse vitesse pour s'assurer que tout est correctement connecté et fonctionne comme prévu.

Conclusion

L'utilisation du Raspberry Pi Pico avec le module L298N pour contrôler des moteurs DC TT est une excellente manière d'aborder la robotique. Cela permet non seulement de comprendre le contrôle de moteurs mais aussi d'expérimenter avec des concepts avancés de programmation et d'électronique. Avec cette configuration, vous pouvez créer des robots capables de naviguer dans des environnements complexes, ouvr

Pour aller plus loin