master
Gnieark 5 years ago
parent 6ab7bdde32
commit be1d8ef6b6

@ -15,7 +15,7 @@
// Broches sur lesquelles les moteurs sont connectés. // Broches sur lesquelles les moteurs sont connectés.
// Ce sont des broches de sortie numériques. // Ce sont des broches de sortie numériques.
#define MOTEUR_GAUCHE 2 #define MOTEUR_GAUCHE 2
#define MOTEUR_DROITE 3 #define MOTEUR_DROITE 8
// Broches sur lesquelles les capteurs sont connectés. // Broches sur lesquelles les capteurs sont connectés.
// Ce sont des broches de lecture analogique. // Ce sont des broches de lecture analogique.
@ -35,6 +35,7 @@
#define BOUTON_PRESSE 1 #define BOUTON_PRESSE 1
#define BOUTON_RELEVE 0 #define BOUTON_RELEVE 0
// Variables utilisées pour définir les seuils de détection des capteurs. Les // Variables utilisées pour définir les seuils de détection des capteurs. Les
// seuils sont réglés à 200 par défaut. // seuils sont réglés à 200 par défaut.
int seuil_gauche = 200; int seuil_gauche = 200;
@ -68,6 +69,7 @@ void setup() {
// Les broches analogiques des capteurs sont obligatoirement en mode lecture // Les broches analogiques des capteurs sont obligatoirement en mode lecture
// analogique. Il ny a donc pas de réglage à faire sur ces broches. // analogique. Il ny a donc pas de réglage à faire sur ces broches.
Serial.begin(9600);
} }
// ============================================================================= // =============================================================================
@ -142,6 +144,7 @@ void etalonnage() {
// Létalonnage est déclenché quand lutilisateur appuie sur le bouton // Létalonnage est déclenché quand lutilisateur appuie sur le bouton
// détalonnage. On attend que le bouton soit relaché pour étalonner. // détalonnage. On attend que le bouton soit relaché pour étalonner.
continuer_si(BOUTON_RELEVE); continuer_si(BOUTON_RELEVE);
Serial.println("BOUTON_RELEVE");
// Lit létat des deux capteurs. // Lit létat des deux capteurs.
min_gauche = analogRead(CAPTEUR_GAUCHE); min_gauche = analogRead(CAPTEUR_GAUCHE);
@ -153,6 +156,7 @@ void etalonnage() {
// Attend que lutilisateur clique sur le bouton (clic = appui + relache). // Attend que lutilisateur clique sur le bouton (clic = appui + relache).
continuer_si(BOUTON_PRESSE); continuer_si(BOUTON_PRESSE);
continuer_si(BOUTON_RELEVE); continuer_si(BOUTON_RELEVE);
Serial.println("BOUTON_PRESSE_RELEVE");
// Lit létat des deux capteurs. // Lit létat des deux capteurs.
max_gauche = analogRead(CAPTEUR_GAUCHE); max_gauche = analogRead(CAPTEUR_GAUCHE);
@ -162,6 +166,7 @@ void etalonnage() {
// maximales que le capteur retourne. // maximales que le capteur retourne.
seuil_gauche = (min_gauche + max_gauche) / 2; seuil_gauche = (min_gauche + max_gauche) / 2;
seuil_droite = (min_droite + max_droite) / 2; seuil_droite = (min_droite + max_droite) / 2;
Serial.println("FIN_ETALONNAGE");
clignoter(); clignoter();
} }
@ -174,6 +179,7 @@ void etalonnage() {
// Arrête les deux moteurs. Le robot ne bouge plus. // Arrête les deux moteurs. Le robot ne bouge plus.
void moteur_arret() { void moteur_arret() {
Serial.println("ARRET_MOTEUR");
digitalWrite(MOTEUR_GAUCHE, LOW); digitalWrite(MOTEUR_GAUCHE, LOW);
digitalWrite(MOTEUR_DROITE, LOW); digitalWrite(MOTEUR_DROITE, LOW);
} }
@ -182,6 +188,8 @@ void moteur_arret() {
void moteur_droite() { void moteur_droite() {
// Pour tourner à droite, on bloque le côté droit et on fait avancer le côté // Pour tourner à droite, on bloque le côté droit et on fait avancer le côté
// gauche. // gauche.
Serial.println("MOTEUR_DROITE");
digitalWrite(MOTEUR_GAUCHE,HIGH); digitalWrite(MOTEUR_GAUCHE,HIGH);
digitalWrite(MOTEUR_DROITE,LOW); digitalWrite(MOTEUR_DROITE,LOW);
} }
@ -190,12 +198,14 @@ void moteur_droite() {
void moteur_gauche() { void moteur_gauche() {
// Pour tourner à gauche, on bloque le côté gauche et on fait avancer le côté // Pour tourner à gauche, on bloque le côté gauche et on fait avancer le côté
// droit. // droit.
Serial.println("MOTEUR_GAUCHE");
digitalWrite(MOTEUR_GAUCHE, LOW); digitalWrite(MOTEUR_GAUCHE, LOW);
digitalWrite(MOTEUR_DROITE, HIGH); digitalWrite(MOTEUR_DROITE, HIGH);
} }
// Fait tourner les deux moteurs. Le robot avance. // Fait tourner les deux moteurs. Le robot avance.
void moteur_avance() { void moteur_avance() {
Serial.println("MOTEUR_AVANCE");
digitalWrite(MOTEUR_GAUCHE, HIGH); digitalWrite(MOTEUR_GAUCHE, HIGH);
digitalWrite(MOTEUR_DROITE, HIGH); digitalWrite(MOTEUR_DROITE, HIGH);
} }

Binary file not shown.
Loading…
Cancel
Save