Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-13 06:56
In diesem anweisbaren werden wir einen Parksensor bauen. Die Idee dieses Parksensors besteht darin, grün anzuzeigen, wenn Sie genügend Platz haben, um Ihr Auto auf dem Parkplatz nach vorne zu ziehen, und dann gelb, wenn Sie sich der vollständig vorderen Position nähern, und dann rot, wenn Sie anhalten sollten. Wir werden dieses System mit unserem Raspberry Pi bauen und einige Entfernungen verwenden, die wir leicht testen können.
Schritt 1: Dinge, die Sie brauchen
Sie benötigen die folgenden Komponenten außer dem Raspberry Pi-Setup.
- HC-SR04 Ultraschall-Distanzsensor
- LED (X3)
- 330Ω Widerstand (X3)
- 10KΩ Widerstand (x2)
- Männlich-männlich / Männlich-weiblich Überbrückungsdrähte
- Steckbrett
Schritt 2: Machen Sie die Verkabelung
- Trigger für den Distanzsensor ist GPIO 4, Echo ist GPIO 18, das grüne Licht ist 17, das gelbe Licht ist 27 und das rote Licht ist 22.
- 330-Ohm-Widerstände sind für die LEDs und sie werden an den positiven Schenkel der LEDs und dann an GPIO angeschlossen.
- 10K Ohm Widerstände sind für den Echo-Pin des Distanzsensors und werden mit dem GPIO verbunden.
Schritt 3: Code
RPi. GPIO als GPIOimport-Zeit importieren
GPIO.setwarnings(Falsch)
GPIO.cleanup()
GPIO.setmode(GPIO. BCM)
TRIG = 4
ECHO = 18
GRÜN = 17
GELB = 27
ROT = 22
GPIO.setup(TRIG, GPIO. OUT)
GPIO.setup(ECHO, GPIO. IN)
GPIO.setup(GRÜN, GPIO. OUT)
GPIO.setup(GELB, GPIO. OUT)
GPIO.setup (ROT, GPIO. OUT)
def green_light():
GPIO. Ausgabe (GRÜN, GPIO. HIGH)
GPIO. Ausgabe (GELB, GPIO. LOW)
GPIO. Ausgang (ROT, GPIO. LOW)
def yellow_light():
GPIO. Ausgabe (GRÜN, GPIO. LOW)
GPIO. Ausgabe (GELB, GPIO. HIGH)
GPIO. Ausgang (ROT, GPIO. LOW)
def red_light(): GPIO.output(GREEN, GPIO. LOW)
GPIO. Ausgabe (GELB, GPIO. LOW)
GPIO. Ausgang (ROT, GPIO. HIGH)
def get_distance():
GPIO.output(TRIG, True)
time.sleep(0.00001)
GPIO.output(TRIG, False)
while GPIO.input(ECHO) == False: start = time.time()
while GPIO.input(ECHO) == True: end = time.time()
signal_time = Ende-Start
Entfernung = Signalzeit / 0.000058
Rückweg
während Wahr:
Distanz = get_distance()
time.sleep(0.05)
Drucken (Entfernung)
wenn Abstand >= 25:
grünes Licht()
elif 25 > Distanz > 10:
gelbes Licht()
Elif-Abstand <= 5:
Rotlicht()
Wenn der Abstand größer oder gleich 25 cm ist, zeigen wir ein grünes Licht. Wenn es zwischen 10 und 25 cm liegt, werden wir gelb, und dann werden wir für weniger als oder gleich 10 cm rot.