2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Ultrazvukový senzor vzdálenosti HC-SR04 používá k měření vzdálenosti k objektu bezkontaktní ultrazvukový sonar. Skládá se ze dvou vysílačů, přijímače a řídicího obvodu. Vysílače vydávají vysokofrekvenční ultrazvukový zvuk, který se odráží od okolních pevných předmětů, a přijímač naslouchá jakékoli zpětné ozvěně. Toto echo je pak zpracováno řídicím obvodem pro výpočet časového rozdílu mezi vysílaným a přijímaným signálem. Tento čas lze následně použít, spolu s nějakou chytrou matematikou, k výpočtu vzdálenosti mezi senzorem a odrážejícím se objektem!
Zásoby
Co budete potřebovat:
- Raspberry Pi 2/3/4
- Micro SD karta nabitá Raspbianem
- Napájení 5,1 V USB
- HC-SR04 (samozřejmě)
- Prkénko
- 4 kabely pro muže a ženy
- Monitor a klávesnice pro Raspberry Pi
Krok 1: Nastavte Raspberry Pi
- Vložte kartu SD, kterou jste nastavili pomocí Raspbian (přes NOOBS), do slotu pro kartu microSD na spodní straně vašeho Raspberry Pi.
- Najděte konec konektoru USB na kabelu vaší klávesnice a připojte klávesnici k portu USB na Raspberry Pi (nezáleží na tom, který port používáte).
-
Zkontrolujte, zda je obrazovka zapojena do zásuvky a zapnutá. Podívejte se na porty HDMI na Raspberry Pi - všimněte si, že mají nahoře plochou stranu. Pomocí kabelu připojte obrazovku k portu HDMI Raspberry Pi - v případě potřeby použijte adaptér.
- Zapojte napájecí zdroj USB do zásuvky a připojte jej k napájecímu portu vašeho Raspberry Pi.
- Váš Raspberry Pi se spustí, pak budete připraveni jít.
Krok 2: Nastavení hardwaru
Nastavení ultrazvukového senzoru vzdálenosti je poměrně jednoduché, nejsou potřeba žádné další složité součásti, pouze senzor, 4 kabely a Raspberry Pi. Má pouze čtyři piny:
- VCC na pin 2 (5V)
- TRIG na Pin 12 (GPIO 18)
- ECHO na pin 18 (GPIO 24)
- GND na Pin 6 (GND)
Krok 3: Python Script
Nejprve bychom měli mít nainstalovanou knihovnu python gpiozero a pro použití vytvoříme nový skript
sudo nano distance_sensor.py
s následujícím:
# Získání potřebných knihoven
from gpiozero import DistanceSensor from time import sleep # Initialize ultrasonic sensor sensor = DistanceSensor (trigger = 18, echo = 24) while True: # Počkejte 2 sekundy spánek (2) # Získejte vzdálenost v metrech vzdálenost = senzor.distance # Ale my chceme to v centimetrech vzdálenost = senzor.distance * 100 # Dostali bychom velké desetinné číslo, takže to zaokrouhlíme na 2 místa vzdálenost = kolo (senzor.distance, 2) # Vytiskněte informace na sítotisk („Vzdálenost: {} cm .formát (vzdálenost senzoru))