(adsbygoogle = window.adsbygoogle || []).push({});

Le L293D est l’un des composants les plus utilisés pour tout amateur d’électronique, le but de ce composant.

Piloter deux moteurs DC avec un L293D et un Arduino

C’est quoi un L293D ?

Le L293D est un double pont-H, ce qui signifie qu’il est possible de l’utiliser pour commander quatre moteurs distincts (dans un seul sens) grâce à ses 4 canaux. En raccordant les sorties de façon appropriées, il est possible de constituer deux pont-h. Il est ainsi possible de commander deux moteurs distincts, dans les deux sens et indépendamment l’un de l’autre (ce qui est le cas de notre tutoriel).

Passons Maintenant a la pratique.

De quoi avons nous besoin

Le Montage:

Tout d’abord il faut savoir a quoi correspondent les pins du L293D

Piloter deux moteurs DC avec un L293D et un Arduino #2

Piloter deux moteurs DC avec un L293D et un Arduino #3

Finalement le code

le code permet de reculer puis attendre une seconde ensuite avancer et attendre une autre seconde puis tourner a droite et attendre encore une fois une seconde puis tourner a droite et ça recommence.

int GA=11,GB=10,DA=5,DB=6; //initialisation des pins (GA & GB pour le moteur gauche / DA & DB pour le moteur droite)

void setup() {
  Serial.begin(9600);  
  pinMode(DA,OUTPUT);
  pinMode(DB,OUTPUT);
  pinMode(GA,OUTPUT);
  pinMode(GB,OUTPUT);
}
/*******************************/
/***Les Fonctions***/
void ar() //arriére
          {
      digitalWrite(DA,HIGH);
      digitalWrite(DB,LOW);
      digitalWrite(GA,HIGH);
      digitalWrite(GB,LOW);
          }
void av() //avant
        {
      digitalWrite(DA,LOW);
      digitalWrite(DB,HIGH);
      digitalWrite(GA,LOW);
      digitalWrite(GB,HIGH);
          }
void g()//gauche
        {
      digitalWrite(DA,LOW);
      digitalWrite(DB,HIGH);
      digitalWrite(GA,HIGH);
      digitalWrite(GB,LOW);
          }
void d()//droite
       {
      digitalWrite(DA,HIGH);
      digitalWrite(DB,LOW);
      digitalWrite(GA,LOW);
      digitalWrite(GB,HIGH);
          }
/*****************************/
void loop()
{
  av();
  delay(1000);
  ar();
  delay(1000);
  g();
  delay(1000);
  d();
  delay(1000);
}

Categories: Arduino