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

Αυτόματο Photobooth: 4 βήματα (με εικόνες)
Αυτόματο Photobooth: 4 βήματα (με εικόνες)

Βίντεο: Αυτόματο Photobooth: 4 βήματα (με εικόνες)

Βίντεο: Αυτόματο Photobooth: 4 βήματα (με εικόνες)
Βίντεο: Generate Studio Quality Realistic Photos By Kohya LoRA Stable Diffusion Training - Full Tutorial 2024, Ιούλιος
Anonim
Αυτόματο Photobooth
Αυτόματο Photobooth

Αυτό θα σας δείξει πώς να φτιάξετε έναν αυτοματοποιημένο φωτογραφικό θάλαμο χρησιμοποιώντας το βατόμουρο pi, έναν υπερηχητικό αισθητήρα απόστασης και μερικά άλλα αξεσουάρ. Iθελα να κάνω ένα έργο που χρησιμοποιεί τόσο εξελιγμένο υλικό όσο και ένα πρόγραμμα εκλεπτυσμένο. Έψαξα έργα όπως αυτό στη σελίδα πόρων raspberry pi, μερικά από αυτά τα έργα είναι φυσικός υπολογισμός με python και micro bit selfie. Ένα από αυτά έδειξε πώς να χρησιμοποιείτε την κάμερα raspberry pi και το άλλο πώς να χρησιμοποιήσετε τον υπερηχητικό αισθητήρα απόστασης.

Βήμα 1: Υλικά

Υλικά
Υλικά

Πριν ξεκινήσουμε να κατασκευάζουμε το κύκλωμά μας, θα χρειαστείτε μερικά υλικά:

1 x Raspberry Pi 3

1 x T-Cobbler

1 x κάμερα Pi

1 x Αισθητήρας υπερήχων απόστασης

3 x LED RGB

Αντίσταση 10 x 330 Ohms

1 x 560 Ohms Resistor

5 x Καρούλι διαφορετικών χρωμάτων καλωδίων

1 x Breadboard

Βήμα 2: Χτίζοντας το Circut

Χτίζοντας το Circut
Χτίζοντας το Circut
Χτίζοντας το Circut
Χτίζοντας το Circut
Χτίζοντας το Circut
Χτίζοντας το Circut
Χτίζοντας το Circut
Χτίζοντας το Circut

Αυτός είναι ο τρόπος που πήγα για τη σύνδεση του κυκλώματός μου:

1. Για να κάνετε αυτό το κύκλωμα, θα θέλατε να συνδέσετε την κάμερα Raspberry Pi στην κατάλληλη πρίζα

2. Συνδέστε το T-Cobbler στη σανίδα ψωμιού.

3. Χρησιμοποιώντας καλώδια βραχυκυκλωτήρα προσαρμοσμένου μήκους συνδέστε ένα στη ράγα ισχύος και ένα στη ράγα γείωσης

4. Συνδέστε τον αισθητήρα απόστασης υπερήχων και συνδέστε το πόδι "vcc" σε ισχύ, το "gnd" στη γείωση, το "trig" σε μια καρφίτσα GPIO και το "echo" σε μια αντίσταση 330 ohm που συνδέεται με μια αντίσταση 560 ohm που είναι συνδεδεμένο με τη γείωση και μια καρφίτσα GPIO.

5. Τοποθετήστε τις τρεις λυχνίες LED RGB στην πλάκα ψωμιού συνδέοντας την άνοδο των LED σε ισχύ και συνδέστε τα διαφορετικά σκέλη που ελέγχουν το χρώμα των LED σε αντιστάσεις 330 ohms και στη συνέχεια σε ακίδες GPIO.

Βήμα 3: Ο κώδικας

Προκειμένου το Raspberry Pi να χρησιμοποιήσει τις καρφίτσες GPIO, θα πρέπει να κωδικοποιήσουμε τους πείρους για να κάνουμε κάτι. Για να φτιάξω τον κώδικα που έκανα χρησιμοποίησα python 3 IDLE. Ο κώδικας που έφτιαξα χρησιμοποιεί το RPi. GPIO καθώς και τη βιβλιοθήκη gpiozero για να λειτουργήσει. Υπάρχουν διαδικασίες για τα διαφορετικά χρώματα και υπάρχει μια λειτουργία που υπολογίζει την απόσταση χρησιμοποιώντας τον υπερηχητικό αισθητήρα απόστασης και όταν υπάρχει κάτι στην εμβέλεια, θα ανοίξει την προεπισκόπηση της κάμερας pi και οι λυχνίες LED θα μετρήσουν αντίστροφα και στη συνέχεια θα ληφθεί μια φωτογραφία.

Εδώ είναι ο κώδικας που χρησιμοποίησα:

από την εισαγωγή picamera PiCamera από το κουμπί εισαγωγής gpiozero, LED από ώρα εισαγωγής ύπνου εισαγωγής RPi. GPIO ως ώρα εισαγωγής GPIO

r = [LED (23), LED (25), LED (12)]

g = [LED (16), LED (20), LED (21)] b = [LED (17), LED (27), LED (22)] κουμπί = Κουμπί (24) GPIO.setmode (GPIO. BCM) GPIO_TRIGGER = 19 GPIO_ECHO = 26 GPIO.setup (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN)

def κόκκινο (x):

r [x]. off () g [x].on () b [x].on ()

def off (x):

r [x].on () g [x].on () b [x].on ()

def off ():

r [0].on () g [0].on () b [0].on () r [1].on () g [1].on () b [1].on () r [2].on () g [2].on () b [2].on ()

def green (x):

r [x].on () g [x]. off () b [x].on ()

def blue (x):

r [x].on () g [x].on () b [x].off ()

def run ():

camera.capture ('selfie.jpg') camera.stop_preview ()

def απόσταση ():

GPIO.output (GPIO_TRIGGER, True) time.sleep (0.00001) GPIO.putput (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () while GPIO.input (GPIO_ECHO) == 0: TimeTime = time.time () ενώ GPIO.input (GPIO_ECHO) == 1: StopTime = time.time () TimeElapsed = StopTime - Απόσταση StartTime = (TimeElapsed *34300) / 2 απόσταση επιστροφής

μακριά από()

ενώ True: d = απόσταση () αν int (d) <= 30: με PiCamera () ως κάμερα: camera.start_preview () κόκκινο (0) ύπνο (1) μπλε (1) ύπνο (1) πράσινο (2) ύπνο (1) απενεργοποιημένη () camera.capture ('selfie.jpg') camera.stop_preview ()

Συνιστάται: