Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

HC-SR04 Ultraschall-Reichweitensensor auf dem Raspberry Pi

In früheren Tutorials haben wir die Temperaturmessung, PIR-Bewegungscontroller sowie Tasten und Schalter beschrieben, die alle direkt an die GPIO-Ports des Raspberry Pi angeschlossen werden können. Der Ultraschall-Entfernungsmesser HC-SR04 ist sehr einfach zu bedienen, das ausgegebene Signal muss jedoch von 5 V auf 3,3 V umgewandelt werden, um unseren Raspberry Pi nicht zu beschädigen! Wir werden in diesem Tutorial einige Physik zusammen mit Elektronik vorstellen, um jeden Schritt zu erklären!

Was Sie brauchen:

HC-SR04

1kΩ Widerstand

2kΩ Widerstand

Überbrückungsdrähte

Ultraschall-Abstandssensoren

Schall besteht aus oszillierenden Wellen durch ein Medium (z. B. Luft), wobei die Tonhöhe durch die Nähe dieser Wellen zueinander bestimmt wird, die als Frequenz definiert wird. Nur ein Teil des Schallspektrums (der Bereich der Schallwellenfrequenzen) ist für das menschliche Ohr hörbar, definiert als der „akustische“ Bereich. Schall mit sehr niedriger Frequenz unten Akustisch wird als „Infraschall“ definiert, mit hochfrequenten Tönen darüber, als „Ultraschall“ bezeichnet. Ultraschallsensoren sind so konzipiert, dass sie die Nähe oder Entfernung von Objekten mithilfe von Ultraschallreflexion messen, ähnlich wie bei Radar, um die Zeit zu berechnen, die benötigt wird, um Ultraschallwellen zwischen dem Sensor und einem festen Objekt zu reflektieren. Ultraschall wird hauptsächlich verwendet, weil er für das menschliche Ohr nicht hörbar ist und auf kurze Distanzen relativ genau ist. Sie könnten dafür natürlich Acoustic Sound verwenden, aber Sie hätten einen lauten Roboter, der alle paar Sekunden piept. . . .

Ein grundlegender Ultraschallsensor besteht aus einem oder mehreren Ultraschallsendern (im Grunde Lautsprecher), einem Empfänger und einem Regelkreis. Die Sender senden einen hochfrequenten Ultraschallton aus, der von nahegelegenen festen Objekten reflektiert wird. Ein Teil dieses Ultraschallrauschens wird vom Empfänger des Sensors reflektiert und erkannt. Dieses Rücksignal wird dann von der Steuerschaltung verarbeitet, um die Zeitdifferenz zwischen dem gesendeten und empfangenen Signal zu berechnen. Diese Zeit kann anschließend zusammen mit einer geschickten Mathematik verwendet werden, um den Abstand zwischen dem Sensor und dem reflektierenden Objekt zu berechnen.

Der Ultraschallsensor HC-SR04, den wir in diesem Tutorial für den Raspberry Pi verwenden, hat vier Pins:Masse (GND), Echopulsausgang (ECHO), Triggerpulseingang (TRIG) und 5V-Versorgung (Vcc). Wir versorgen das Modul mit Vcc, erden es mit GND und senden mit unserem Raspberry Pi ein Eingangssignal an TRIG, das den Sensor zum Senden eines Ultraschallimpulses auslöst. Die Pulswellen prallen von nahegelegenen Objekten ab und einige werden zurück zum Sensor reflektiert. Der Sensor erkennt diese Rückwellen und misst die Zeit zwischen dem Trigger und dem Rückimpuls und sendet dann ein 5V-Signal an den ECHO-Pin.

ECHO ist „low“ (0 V), bis der Sensor ausgelöst wird, wenn er den Echoimpuls empfängt. Sobald ein Rückimpuls lokalisiert wurde, wird ECHO für die Dauer dieses Impulses auf „high“ (5 V) gesetzt. Die Impulsdauer ist die volle Zeit zwischen der Ausgabe eines Ultraschallimpulses durch den Sensor und der Erfassung des Rückimpulses durch den Sensorempfänger. Unser Python-Skript muss daher die Pulsdauer messen und daraus dann die Entfernung berechnen.

WICHTIG. Das Sensorausgangssignal (ECHO) des HC-SR04 ist mit 5 V bemessen. Der Eingangspin des Raspberry Pi GPIO ist jedoch mit 3,3 V bewertet. Das Senden eines 5-V-Signals an diesen ungeschützten 3,3-V-Eingangsanschluss könnte Ihre GPIO-Pins beschädigen, was wir vermeiden möchten! Wir müssen eine kleine Spannungsteilerschaltung verwenden, die aus zwei Widerständen besteht, um die Sensorausgangsspannung auf etwas zu senken, das unser Raspberry Pi verarbeiten kann.

Spannungsteiler

Ein Spannungsteiler besteht aus zwei Widerständen (R1 und R2) in Reihe mit einer Eingangsspannung (Vin), die auf unsere Ausgangsspannung (Vout) reduziert werden muss. In unserer Schaltung ist Vin ECHO, das von 5 V auf unseren Vout von 3,3 V gesenkt werden muss.

Die folgende Schaltung und einfache Gleichung können auf viele Anwendungen angewendet werden, bei denen eine Spannung reduziert werden muss. Wenn Sie die Technik nicht lernen möchten, greifen Sie einfach zu 1 x 1kΩ und 1 x 2kΩ Widerstand.

Ohne zu tief in die Mathematik einzusteigen, müssen wir eigentlich nur einen Widerstandswert berechnen, da das Teilungsverhältnis wichtig ist. Wir kennen unsere Eingangsspannung (5 V) und unsere erforderliche Ausgangsspannung (3,3 V) und können jede beliebige Kombination von Widerständen verwenden, um die Reduzierung zu erreichen. Ich habe zufällig eine Reihe zusätzlicher 1kΩ-Widerstände, also habe ich mich entschieden, einen davon in der Schaltung als R1 zu verwenden.

Bauen Sie die Strecke zusammen

Wir werden für dieses Projekt vier Pins auf dem Raspberry Pi verwenden:GPIO 5V [Pin 2]; Vcc (5V Power), GPIO GND [Pin 6]; GND (0V Masse), GPIO 23 [Pin 16]; TRIG (GPIO-Ausgang) und GPIO 24 [Pin 18]; ECHO (GPIO-Eingang)

1. Stecken Sie vier Ihrer Stecker-auf-Buchse-Überbrückungsdrähte wie folgt in die Stifte des HC-SR04:Rot; Vcc, Blau; TRIG, Gelb; ECHO und Schwarz; Masse.

2. Stecken Sie Vcc in die positive Schiene Ihres Steckbretts und stecken Sie GND in Ihre negative Schiene.

3. Stecken Sie GPIO 5V [Pin 2] in die positive Schiene und GPIO GND [Pin 6] in die negative Schiene.

4. Stecken Sie TRIG in eine leere Schiene und stecken Sie diese Schiene in GPIO 23 [Pin 16]. (Sie können TRIG direkt an GPIO 23 anschließen, wenn Sie möchten). Ich persönlich mache einfach alles gerne auf einem Steckbrett!

5. Stecken Sie ECHO in eine leere Schiene, verbinden Sie eine andere leere Schiene mit R1 (1kΩ Widerstand)

6. Verbinden Sie Ihre R1-Schiene mit der GND-Schiene mit R2 (2kΩ Widerstand). Lassen Sie einen Abstand zwischen den beiden Widerständen.

7. Fügen Sie GPIO 24 [Pin 18] mit Ihrem R1 (1kΩ Widerstand) zur Schiene hinzu. Dieser GPIO-Pin muss zwischen R1 und R2 sitzen

Das ist es! Unser HC-SR04 Sensor ist mit unserem Raspberry Pi verbunden!

Erkennen mit Python

Nachdem wir unseren Ultraschallsensor an unseren Pi angeschlossen haben, müssen wir ein Python-Skript programmieren, um die Entfernung zu erkennen!

Der Ultraschallsensorausgang (ECHO) gibt immer Low (0 V) aus, es sei denn, er wurde ausgelöst. In diesem Fall gibt er 5 V aus (3,3 V mit unserem Spannungsteiler!). Wir müssen daher einen GPIO-Pin als Ausgang setzen, um den Sensor auszulösen, und einen als Eingang, um die ECHO-Spannungsänderung zu erkennen.

Importieren Sie zuerst die Python GPIO-Bibliothek, importieren Sie unsere Zeitbibliothek (damit wir unseren Pi zwischen den Schritten warten lassen) und legen Sie unsere GPIO-Pin-Nummerierung fest.

RPi.GPIO als GPIO importieren

Importzeit

GPIO.setmode(GPIO.BCM)

Für weitere Details:HC-SR04 Ultraschall-Entfernungssensor auf dem Raspberry Pi


Herstellungsprozess

  1. Himbeer-Pi-Temperaturlogger
  2. Temperaturüberwachung auf dem Raspberry Pi
  3. Python- und Raspberry Pi-Temperatursensor
  4. Raspberry Pi Wetterstation
  5. DHT Tiny Breakout für den Raspberry Pi
  6. Integration von Sensordaten mit Raspberry Pi-Mikroprozessor
  7. Ultraschallsensor (HC-SR04) + Raspberry Pi
  8. Bewegungssensor mit Raspberry Pi
  9. Raspberry Pi Bodenfeuchtigkeitssensor
  10. Raspberry Pi digitaler Hall-Sensor in JAVA