2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Në këtë udhëzues ne do të ndërtojmë një sensor parku. Ideja e këtij sensori të parkut është të shfaqet e gjelbër kur keni shumë hapësirë për të tërhequr makinën tuaj përpara në parking, dhe pastaj të zverdhet ndërsa i afroheni pozicionit plotësisht përpara, dhe pastaj të kuqe kur duhet të ndaleni. Ne do ta ndërtojmë këtë sistem me Raspberry Pi tonë dhe do të përdorim disa distanca që mund t’i testojmë lehtësisht.
Hapi 1: Gjërat që ju nevojiten
Ju do të keni nevojë për përbërësit e mëposhtëm, përveç konfigurimit të Raspberry Pi.
- Sensori i distancës tejzanor HC-SR04
- Led (X3)
- Rezistencë 330Ω (X3)
- Rezistencë 10KΩ (x2)
- Telat e kërcyesit Mashkull-Mashkull / Femër-Femër
- Breadboard
Hapi 2: Bëni instalimet elektrike
- Shkaktari për sensorin e distancës është GPIO 4, jehona është GPIO 18, drita jeshile është 17, drita e verdhë është 27 dhe drita e kuqe është 22.
- Rezistencat 330 ohm janë për leds dhe ato lidhen me këmbën pozitive të leds dhe më pas GPIO.
- Rezistencat 10K ohm janë për kunjin e jehonës së sensorit të distancës dhe lidhen me GPIO.
Hapi 3: Kodi
importoni RPi. GPIO si kohë GPIOimport
GPIO.setwarnings (False)
GPIO.cleanup ()
GPIO.setmode (GPIO. BCM)
TRIG = 4
ECHO = 18
E GJELBR = 17
E verdhë = 27
KUQ = 22
GPIO.setup (TRIG, GPIO. OUT)
GPIO.setup (ECHO, GPIO. IN)
GPIO.setup (GREEN, GPIO. OUT)
GPIO.setup (E verdhë, GPIO. OUT)
GPIO.setup (E KUQ, GPIO. OUT)
def green_light ():
GPIO.putput (GREEN, GPIO. HIGHT)
GPIO.putput (E Verdhë, GPIO. LOW)
GPIO.putput (E KUQ, GPIO. LOW)
def yellow_light ():
GPIO.putput (GREEN, GPIO. LOW)
GPIO.putput (E Verdhë, GPIO. HIGHT)
GPIO.putput (E KUQ, GPIO. LOW)
def red_light (): GPIO.output (GREEN, GPIO. LOW)
GPIO.putput (E Verdhë, GPIO. LOW)
GPIO.putput (KUQ, GPIO. HIGHT)
def get_distance ():
GPIO.putput (TRIG, E vërtetë)
koha. gjumi (0.00001)
GPIO.putput (TRIG, False)
ndërsa GPIO.input (ECHO) == False: fillimi = koha. koha ()
ndërsa GPIO.input (ECHO) == E vërtetë: fund = kohë. kohë ()
sinjali_ kohë = përfundimi-fillimi
distanca = sinjali_ kohë / 0.000058
distanca e kthimit
ndërsa e vërtetë:
distanca = marr_distanca ()
koha. gjumi (0.05)
print (distanca)
nëse distanca> = 25:
dritë e gjelbër()
elif 25> distanca> 10:
drita e verdhe ()
elif distanca <= 5:
drite e kuqe()
Nëse distanca është më e madhe ose e barabartë me 25 cm, ne tregojmë një dritë jeshile. Nëse është midis 10 dhe 25 cm, ne do të kthehemi në të verdhë, dhe pastaj do të kthehemi në të kuq për më pak se ose të barabartë me 10 cm.