avr 082011
Composants
- Une plateforme Arduino ou 2 boutons poussoirs NO
- Un relais 5VDC avec 8 broches (2 NO/NC)
- Un relais 5VDC avec 5 ou 8 broches (1 NO/NC)
- Un moteur DC avec une alimentation qui correspond (ici 12V)
Schéma
Pour le branchement des relais, il faut regarder sur le dessus/dessous de celui-ci, il doit y avoir un petit schéma qui indique le numéro des broches.
La petite bobine correspond au contrôle du relais donc elle est à brancher à l’Arduino comme suit :
Code Source pour l’Arduino
/*
Commande de Moteur DC via 2 relais
Possibilité : Marche/Arret et Avance/Recule
Auteur : Sam
Vous pouvez trouver le schéma de cablage sur http://samuel.goutenoir.com/
*/
/* Définition des pins */
// Pin 2 de l'Arduino correspond au relais Marche/Arret
int PinMA = 2;
// Pin 3 de l'Arduino correspond au relais Avance/Recule
int PinAR = 3;
/* Setup */
void setup()
{
// Définition E/S des pins
pinMode(PinMA, OUTPUT);
pinMode(PinAR, OUTPUT);
// On init a zero
digitalWrite(PinMA, LOW);
digitalWrite(PinAR, LOW);
}
/* Boucle infinie */
void loop()
{
// On demarre le moteur en horaire
// Si le moteur tourne dans le sens anti-horaire, inversez la polarité du moteur
MoteurHoraire();
delay(5000);
// On le stop pendant 1sec
MoteurStop();
delay(1000);
// On le redemarre en anti-horaire pendant 5sec
MoteurAntiHoraire();
delay(5000);
}
void MoteurHoraire()
{
digitalWrite(PinMA, HIGH);
digitalWrite(PinAR, LOW);
}
void MoteurAntiHoraire()
{
digitalWrite(PinMA, HIGH);
digitalWrite(PinAR, HIGH);
}
void MoteurStop()
{
digitalWrite(PinMA, LOW);
}
Le programme ne devrait pas trop poser de problèmes vis à vis de sa compréhension. Pensez à inverser la polarité du moteur si jamais il tourne dans le mauvais sens.

