Arduino - Capteur à ultrasons - Écran LCD
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.
À propos du capteur ultrasonique et de l'écran LCD
Si vous ne connaissez pas le capteur à ultrasons et l'écran LCD (brochage, fonctionnement, programmation...), renseignez-vous dans les tutoriels suivants :
Diagramme de câblage
- Schéma de câblage
This image is created using Fritzing. Click to enlarge image
- Câblage réel
This image is created using Fritzing. Click to enlarge image
Code Arduino
/*
* Ce code Arduino a été développé par newbiely.fr
* Ce code Arduino est mis à disposition du public sans aucune restriction.
* Pour des instructions complètes et des schémas de câblage, veuillez visiter:
* https://newbiely.fr/tutorials/arduino/arduino-ultrasonic-sensor-lcd
*/
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows
int trigPin = 9; // TRIG pin
int echoPin = 8; // ECHO pin
float duration_us, distance_cm;
void setup() {
lcd.init(); // initialize the lcd
lcd.backlight(); // open the backlight
pinMode(trigPin, OUTPUT); // config trigger pin to output mode
pinMode(echoPin, INPUT); // config echo pin to input mode
}
void loop() {
// generate 10-microsecond pulse to TRIG pin
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// measure duration of pulse from ECHO pin
duration_us = pulseIn(echoPin, HIGH);
// calculate the distance
distance_cm = 0.017 * duration_us;
lcd.clear();
lcd.setCursor(0, 0); // start to print at the first row
lcd.print("Distance: ");
lcd.print(distance_cm);
delay(500);
}
※ NOTE THAT:
L'adresse I2C de l'écran LCD peut varier selon les fabricants. Dans le code, nous avons utilisé 0x27 qui est spécifié par le fabricant DIYables.
Étapes rapides
- Connectez l'Arduino au PC via un câble USB
- Ouvrez l'IDE Arduino, sélectionnez la bonne carte et le bon port
- Naviguez jusqu'à l'icône Libraries sur la barre gauche de l'IDE Arduino.
- Recherchez "LiquidCrystal I2C", puis trouvez la bibliothèque LiquidCrystal_I2C de Frank de Brabander
- Cliquez sur le bouton Install pour installer la bibliothèque LiquidCrystal_I2C.
- Copiez le code ci-dessus et ouvrez-le avec Arduino IDE
- Cliquez sur le bouton Upload dans Arduino IDE pour téléverser le code vers Arduino
- Placez le capteur sur l'eau chaude et froide, ou saisissez le capteur avec votre main
- Consultez le résultat sur l'écran LCD
This image is created using Fritzing. Click to enlarge image
Explication du code
Lisez l'explication ligne par ligne dans les lignes de commentaire du code source !
※ NOTE THAT:
- Si l'écran LCD n'affiche rien, consultez Dépannage sur LCD I2C
- Le code ci-dessus est à des fins d'apprentissage. Le capteur ultrasonique est très sensible au bruit. Si vous souhaitez utiliser le capteur ultrasonique en pratique, vous devez filtrer le bruit pour le capteur ultrasonique. Voir comment filtrer le bruit pour le capteur ultrasonique