Πίνακας περιεχομένων:

Raspberry Pi Park Sensor: 3 βήματα (με εικόνες)
Raspberry Pi Park Sensor: 3 βήματα (με εικόνες)

Βίντεο: Raspberry Pi Park Sensor: 3 βήματα (με εικόνες)

Βίντεο: Raspberry Pi Park Sensor: 3 βήματα (με εικόνες)
Βίντεο: GATE OPENING DRIVE from a conventional tube and a wiper motor! 2024, Νοέμβριος
Anonim
Image
Image
Πράγματα που θα χρειαστείτε
Πράγματα που θα χρειαστείτε

Σε αυτό το διδακτικό θα φτιάξουμε έναν αισθητήρα πάρκου. Η ιδέα αυτού του αισθητήρα στάθμευσης είναι να δείξει πράσινο όταν έχετε άφθονο χώρο για να τραβήξετε το αυτοκίνητό σας μπροστά στο πάρκινγκ και στη συνέχεια να γίνει κίτρινο καθώς πλησιάζετε στην πλήρως μπροστινή θέση και έπειτα κόκκινο όταν πρέπει να σταματήσετε. Θα δημιουργήσουμε αυτό το σύστημα με το Raspberry Pi και θα χρησιμοποιήσουμε μερικές αποστάσεις που μπορούμε εύκολα να δοκιμάσουμε.

Βήμα 1: Πράγματα που θα χρειαστείτε

Θα χρειαστείτε τα ακόλουθα στοιχεία εκτός από τη ρύθμιση Raspberry Pi.

  1. HC-SR04 Αισθητήρας υπερήχων απόστασης
  2. Led (X3)
  3. Αντίσταση 330Ω (X3)
  4. Αντίσταση 10KΩ (x2)
  5. Ανδρικά-αρσενικά / αρσενικά-θηλυκά άλματα καλωδίων
  6. Breadboard

Βήμα 2: Κάντε την καλωδίωση

Κάντε την καλωδίωση
Κάντε την καλωδίωση
Κάντε την καλωδίωση
Κάντε την καλωδίωση
Κάντε την καλωδίωση
Κάντε την καλωδίωση
  1. Ενεργοποίηση για τον αισθητήρα απόστασης είναι GPIO 4, ηχώ είναι GPIO 18, το πράσινο φως 17, το κίτρινο φως 27 και το κόκκινο φως 22.
  2. Οι αντιστάσεις 330 ohm είναι για τα led και συνδέονται με το θετικό σκέλος των led και μετά με το GPIO.
  3. Οι αντιστάσεις 10K ohm είναι για τον πείρο ηχώ του αισθητήρα απόστασης και συνδέονται με το GPIO.

Βήμα 3: Κωδικός

εισαγωγή RPi. GPIO ως GPIOimport time

GPIO.setwarnings (False)

GPIO.cleanup ()

GPIO.setmode (GPIO. BCM)

TRIG = 4

ECHO = 18

ΠΡΑΣΙΝΟ = 17

ΚΙΤΡΙΝΟ = 27

ΚΟΚΚΙΝΟ = 22

GPIO.setup (TRIG, GPIO. OUT)

GPIO.setup (ECHO, GPIO. IN)

GPIO.setup (ΠΡΑΣΙΝΟ, GPIO. OUT)

GPIO.setup (ΚΙΤΡΙΝΟ, GPIO. OUT)

GPIO.setup (RED, GPIO. OUT)

def green_light ():

GPIO.output (ΠΡΑΣΙΝΟ, GPIO. HIGHT)

GPIO.output (ΚΙΤΡΙΝΟ, GPIO. LOW)

GPIO.output (RED, GPIO. LOW)

def yellow_light ():

GPIO.output (ΠΡΑΣΙΝΟ, GPIO. LOW)

GPIO.output (ΚΙΤΡΙΝΟ, GPIO. HIGHT)

GPIO.output (RED, GPIO. LOW)

def red_light (): GPIO.output (ΠΡΑΣΙΝΟ, GPIO. LOW)

GPIO.output (ΚΙΤΡΙΝΟ, GPIO. LOW)

GPIO.output (RED, GPIO. HIGH)

def get_distance ():

GPIO.output (TRIG, True)

time.sleep (0.00001)

GPIO.output (TRIG, False)

ενώ GPIO.input (ECHO) == False: start = time.time ()

ενώ GPIO.input (ECHO) == True: τέλος = time.time ()

signal_time = τέλος-εκκίνηση

απόσταση = signal_time / 0.000058

απόσταση επιστροφής

ενώ True:

απόσταση = get_distance ()

ώρα. ύπνος (0,05)

εκτύπωση (απόσταση)

αν απόσταση> = 25:

πράσινο φως()

elif 25> απόσταση> 10:

κίτρινο φως ()

elif απόσταση <= 5:

κόκκινο φως()

Εάν η απόσταση είναι μεγαλύτερη ή ίση με 25 cm, δείχνουμε πράσινο φως. Αν είναι μεταξύ 10 και 25 εκατοστών, θα γίνουμε κίτρινοι και μετά θα κοκκινίσουμε για λιγότερο από ή ίσο με 10 εκατοστά.

Συνιστάται: