VIDEO
Objectifs
Savoir faire la commande multimodes d’un automate
Savoir utiliser le module IR
Test des capteurs à ultrasons
Savoir mesurer la distance avec un capteur à US
Savoir lire le code d’une télécommande IR
Comprendre le principe de fonctionnement de la commande IR
Etc.
L’objectif du tuto est de valider le fonctionnement des capteurs de distances à ultrasons. Ils seront utilisés pour la mesure de la distance droite et gauche. Voir le tuto pour les détails techniques.
Schéma synoptique
Programme Arduino
#define Trig_out_pin_g 2 #define Trig_out_pin_d 3 #define Echo_in_pin_g 4 #define Echo_in_pin_d 5 void setup() { // Affichage Serial.begin(115200); // Initialisation des capteurs US pinMode(Trig_out_pin_g, OUTPUT); digitalWrite(Trig_out_pin_g, LOW); pinMode(Trig_out_pin_d, OUTPUT); digitalWrite(Trig_out_pin_d, LOW); } void loop() { // Test des capteurs US float disg=getDistmm(Trig_out_pin_g, Echo_in_pin_g); float disd=getDistmm(Trig_out_pin_d, Echo_in_pin_d); Serial.print("disg(mm)=");Serial.print(disg); Serial.print("\t"); Serial.print("disd(mm)=");Serial.println(disd); delay(100); } double getDistmm(int trigpin, int echopin) { // Vitesse du son (mm/us) const double speedson=340.0e-3; // Déclanchement mesure avec l'envoie d'une impulsion de 10µs digitalWrite(trigpin, HIGH); delayMicroseconds(10); digitalWrite(trigpin, LOW); // Lecture du temps aller/retour de l'onde double HC_val = pulseIn(echopin, HIGH, 30000); // Calcul de distance d(mm) double Dist_mm = (HC_val/2.0) * speedson; // Renvoi de la distance en (mm) if (Dist_mm <= 10.0) return 10.0; // Zone aveugle du capteur else return Dist_mm; }
Obtenir le livre « Codage en C du GRAFCET avec ARDUINO «