Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Capteur de portée à ultrasons HC-SR04 sur le Raspberry Pi

Dans les didacticiels précédents, nous avons décrit la détection de température, les contrôleurs de mouvement PIR et les boutons et commutateurs, qui peuvent tous se brancher directement sur les ports GPIO du Raspberry Pi. Le télémètre à ultrasons HC-SR04 est très simple d'utilisation, cependant le signal qu'il délivre doit être converti de 5V à 3,3V afin de ne pas endommager notre Raspberry Pi ! Nous allons présenter un peu de physique avec l'électronique dans ce tutoriel afin d'expliquer chaque étape !

Ce dont vous aurez besoin :

HC-SR04

Résistance 1kΩ

Résistance 2kΩ

Cavaliers

Capteurs de distance à ultrasons

Le son consiste en des ondes oscillantes à travers un milieu (tel que l'air) dont la hauteur est déterminée par la proximité de ces ondes les unes par rapport aux autres, définie comme la fréquence. Seule une partie du spectre sonore (la gamme des fréquences des ondes sonores) est audible à l'oreille humaine, définie comme la gamme « acoustique ». Le son à très basse fréquence en dessous de l'acoustique est défini comme « infrasons », avec des sons à haute fréquence au-dessus, appelés « ultrasons ». Les capteurs à ultrasons sont conçus pour détecter la proximité ou la distance d'un objet à l'aide de la réflexion ultrasonore, similaire au radar, pour calculer le temps nécessaire pour réfléchir les ondes ultrasonores entre le capteur et un objet solide. L'échographie est principalement utilisée car elle est inaudible à l'oreille humaine et est relativement précise sur de courtes distances. Vous pouvez bien sûr utiliser le son acoustique à cette fin, mais vous auriez un robot bruyant, émettant un bip toutes les quelques secondes. . . .

Un capteur à ultrasons de base se compose d'un ou plusieurs émetteurs à ultrasons (essentiellement des haut-parleurs), d'un récepteur et d'un circuit de commande. Les émetteurs émettent un son ultrasonore à haute fréquence, qui rebondit sur tous les objets solides à proximité. Une partie de ce bruit ultrasonore est réfléchie et détectée par le récepteur sur le capteur. Ce signal de retour est ensuite traité par le circuit de commande pour calculer la différence de temps entre le signal transmis et reçu. Ce temps peut ensuite être utilisé, avec quelques calculs intelligents, pour calculer la distance entre le capteur et l'objet réfléchissant.

Le capteur à ultrasons HC-SR04 que nous utiliserons dans ce didacticiel pour le Raspberry Pi possède quatre broches :la masse (GND), la sortie d'impulsion d'écho (ECHO), l'entrée d'impulsion de déclenchement (TRIG) et l'alimentation 5 V (Vcc). Nous alimentons le module à l'aide de Vcc, le mettons à la terre à l'aide de GND et utilisons notre Raspberry Pi pour envoyer un signal d'entrée à TRIG, ce qui déclenche le capteur pour envoyer une impulsion ultrasonore. Les ondes de pouls rebondissent sur tous les objets à proximité et certaines sont réfléchies vers le capteur. Le capteur détecte ces ondes de retour et mesure le temps entre le déclenchement et l'impulsion renvoyée, puis envoie un signal 5V sur la broche ECHO.

L'écho sera « bas » (0 V) jusqu'à ce que le capteur soit déclenché lorsqu'il reçoit l'impulsion d'écho. Une fois qu'une impulsion de retour a été localisée, ECHO est réglé sur « haut » (5 V) pour la durée de cette impulsion. La durée d'impulsion est le temps complet entre le capteur émettant une impulsion ultrasonore et l'impulsion de retour détectée par le récepteur du capteur. Notre script Python doit donc mesurer la durée d'impulsion puis calculer la distance à partir de celle-ci.

IMPORTANT. Le signal de sortie du capteur (ECHO) sur le HC-SR04 est évalué à 5V. Cependant, la broche d'entrée du GPIO Raspberry Pi est évaluée à 3,3 V. L'envoi d'un signal 5V dans ce port d'entrée 3,3V non protégé pourrait endommager vos broches GPIO, ce que nous voulons éviter ! Nous devrons utiliser un petit circuit diviseur de tension, composé de deux résistances, pour abaisser la tension de sortie du capteur à quelque chose que notre Raspberry Pi peut gérer.

Diviseurs de tension

Un diviseur de tension se compose de deux résistances (R1 et R2) en série connectées à une tension d'entrée (Vin), qui doit être réduite à notre tension de sortie (Vout). Dans notre circuit, Vin sera ECHO, qui doit être diminué de 5V à notre Vout de 3,3V.

Le circuit suivant et l'équation simple peuvent être appliqués à de nombreuses applications où une tension doit être réduite. Si vous ne voulez pas apprendre le côté technique, prenez simplement 1 résistance de 1 kΩ et 1 x 2 kΩ.

Sans entrer trop profondément dans le côté mathématique, nous n'avons en fait besoin de calculer qu'une seule valeur de résistance, car c'est le rapport de division qui est important. Nous connaissons notre tension d'entrée (5 V) et notre tension de sortie requise (3,3 V) et nous pouvons utiliser n'importe quelle combinaison de résistances pour obtenir la réduction. Il se trouve que j'ai un tas de résistances supplémentaires de 1 kΩ, j'ai donc décidé d'en utiliser une dans le circuit en tant que R1.

Assembler le circuit

Nous utiliserons quatre broches sur le Raspberry Pi pour ce projet :GPIO 5V [Broche 2] ; Vcc (alimentation 5 V), GPIO GND [broche 6] ; GND (0V Terre), GPIO 23 [Broche 16] ; TRIG (sortie GPIO) et GPIO 24 [Broche 18] ; ECHO (Entrée GPIO)

1. Branchez quatre de vos cavaliers mâles à femelles dans les broches du HC-SR04 comme suit : rouge ; Vcc, bleu ; TRIG, jaune ; ÉCHO et Noir ; GND.

2. Branchez Vcc sur le rail positif de votre maquette et branchez GND sur votre rail négatif.

3. Branchez GPIO 5V [Broche 2] dans le rail positif et GPIO GND [Broche 6] dans le rail négatif.

4. Branchez TRIG dans un rail vierge et branchez ce rail dans GPIO 23 [Broche 16]. (Vous pouvez brancher TRIG directement dans GPIO 23 si vous le souhaitez). Personnellement, j'aime tout faire sur une planche à pain !

5. Branchez ECHO dans un rail vierge, reliez un autre rail vierge à l'aide de R1 (résistance 1kΩ)

6. Reliez votre rail R1 au rail GND en utilisant R2 (résistance 2kΩ). Laissez un espace entre les deux résistances.

7. Ajoutez GPIO 24 [Broche 18] au rail avec votre R1 (résistance 1kΩ). Cette broche GPIO doit se situer entre R1 et R2

C'est ça! Notre capteur HC-SR04 est connecté à notre Raspberry Pi !

Détection avec Python

Maintenant que nous avons connecté notre capteur à ultrasons à notre Pi, nous devons programmer un script Python pour détecter la distance !

La sortie du capteur à ultrasons (ECHO) produira toujours une sortie faible (0 V) à moins qu'elle n'ait été déclenchée, auquel cas elle produira 5 V (3,3 V avec notre diviseur de tension !). Nous devons donc définir une broche GPIO comme sortie, pour déclencher le capteur, et une comme entrée pour détecter le changement de tension ECHO.

Tout d'abord, importez la bibliothèque Python GPIO, importez notre bibliothèque de temps (donc nous faisons attendre notre Pi entre les étapes) et définissez notre numérotation de broche GPIO.

importer RPi.GPIO en tant que GPIO

heure d'importation

GPIO.setmode(GPIO.BCM)

Pour plus de détails :Capteur de portée à ultrasons HC-SR04 sur le Raspberry Pi


Processus de fabrication

  1. Enregistreur de température Raspberry Pi
  2. Surveillance de la température sur le Raspberry Pi
  3. Capteur de température Python et Raspberry Pi
  4. Station météo Raspberry Pi
  5. DHT Tiny Breakout pour Raspberry Pi
  6. L'intégration des données du capteur avec le microprocesseur Raspberry Pi
  7. Capteur à ultrasons (HC-SR04) + Raspberry Pi
  8. Capteur de mouvement utilisant Raspberry Pi
  9. Capteur d'humidité du sol Raspberry Pi