Raspberry Pi - Capteur ultrasonique - Écran LCD

Ce tutoriel vous explique comment utiliser un Raspberry Pi pour obtenir la distance à partir d'un capteur ultrasonique et l'afficher sur un écran LCD I2C.

Préparation du matériel

1×Raspberry Pi 4 Model B
1×LCD I2C
1×Ultrasonic Sensor
1×Jumper Wires
1×(Optional) Screw Terminal Block Shield for Raspberry Pi
1×(Optional) USB-C Power Cable with On/Off Switch for Raspberry Pi 4B
1×(Optional) Plastic Case and Cooling Fan for Raspberry Pi 4B
1×(Optional) HDMI Touch Screen Monitor for Raspberry Pi

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 n'êtes pas familier avec le capteur ultrasonique et l'écran LCD (y compris le brochage, le fonctionnement et la programmation), les tutoriels suivants peuvent vous aider à apprendre :

Diagramme de câblage

Diagramme de câblage capteur ultrasonique Raspberry Pi LCD

This image is created using Fritzing. Click to enlarge image

Pour simplifier et organiser votre câblage, nous vous recommandons d'utiliser un Screw Terminal Block Shield pour Raspberry Pi. Ce shield garantit des connexions plus sûres et plus faciles à gérer, comme illustré ci-dessous :

Raspberry Pi Screw Terminal Block Shield

Code Raspberry Pi

Étapes rapides

  • Assurez-vous d'avoir Raspbian ou tout autre système d'exploitation compatible Raspberry Pi installé sur votre Pi.
  • Assurez-vous que votre Raspberry Pi est connecté au même réseau local que votre PC.
  • Assurez-vous que votre Raspberry Pi est connecté à Internet si vous avez besoin d'installer des bibliothèques.
  • Si c'est la première fois que vous utilisez Raspberry Pi, consultez Installation du logiciel - Raspberry Pi..
  • Connectez votre PC au Raspberry Pi via SSH en utilisant le client SSH intégré sur Linux et macOS ou PuTTY sur Windows. Consultez comment connecter votre PC au Raspberry Pi via SSH.
  • Assurez-vous que la bibliothèque RPi.GPIO est installée. Sinon, installez-la en utilisant la commande suivante :
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Avant d'utiliser l'écran LCD I2C avec un Raspberry Pi, nous devons activer l'interface I2C sur le Raspberry Pi. Voir Comment activer l'interface I2C sur Raspberry Pi
  • Installez la bibliothèque LCD I2C en exécutant la commande suivante :
pip install lcddriver
  • Créez un fichier de script Python ultrasonic_lcd.py et ajoutez le code suivant :
# Ce code Raspberry Pi a été développé par newbiely.fr # Ce code Raspberry Pi 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/raspberry-pi/raspberry-pi-ultrasonic-sensor-lcd from gpiozero import DistanceSensor from lcddriver import lcd from time import sleep # GPIO pins for ultrasonic sensor TRIGGER_PIN = 16 ECHO_PIN = 20 # I2C address 0x27, 16 columns, 2 rows LCD = lcd() # Create ultrasonic sensor instance ultrasonic_sensor = DistanceSensor(trigger=TRIGGER_PIN, echo=ECHO_PIN) def display_distance(distance): LCD.lcd_clear() LCD.lcd_display_string(f"Distance: {distance:.2f} m", 1) try: while True: distance = ultrasonic_sensor.distance display_distance(distance) sleep(0.5) # Sleep for 500 milliseconds except KeyboardInterrupt: pass finally: LCD.lcd_clear()
  • Enregistrez le fichier et exécutez le script Python en exécutant la commande suivante dans le terminal :
python3 ultrasonic_lcd.py

Le script s'exécute en boucle infinie jusqu'à ce que vous appuyiez sur Ctrl + C dans le terminal.

Explication du Code

Consultez l'explication ligne par ligne contenue dans les commentaires du code source !

※ Note:

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!