Sommario:

Photobooth automatizzato: 4 passaggi (con immagini)
Photobooth automatizzato: 4 passaggi (con immagini)

Video: Photobooth automatizzato: 4 passaggi (con immagini)

Video: Photobooth automatizzato: 4 passaggi (con immagini)
Video: 360 degree photo booth | GO360BOOTH 2024, Novembre
Anonim
Cabina fotografica automatizzata
Cabina fotografica automatizzata

Questo ti mostrerà come realizzare una cabina fotografica automatizzata utilizzando il Raspberry Pi, un sensore di distanza a ultrasuoni e alcuni altri accessori. Volevo realizzare un progetto che utilizzasse sia hardware sofisticato che un programma sofisticato. Ho ricercato progetti come questo nella pagina delle risorse di raspberry pi, alcuni di questi progetti sono il calcolo fisico con python e micro bit selfie. Uno di questi ha mostrato come utilizzare la fotocamera Raspberry Pi e l'altro ha mostrato come utilizzare il sensore di distanza a ultrasuoni.

Passaggio 1: materiali

Materiali
Materiali

Prima di iniziare a costruire il nostro circuito avrai bisogno di alcuni materiali:

1 x Raspberry Pi 3

1 x calzolaio a T

1 x fotocamera Pi

1 x sensore di distanza ad ultrasuoni

3 x LED RGB

Resistori da 10 x 330 Ohm

1 x 560 Ohm resistore

5 x Bobina di cavi di colore diverso

1 x tagliere

Passaggio 2: costruire il circuito

Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito
Costruire il circuito

Questo è il modo in cui ho collegato il mio circuito:

1. Per realizzare questo circuito dovresti collegare la fotocamera Raspberry Pi alla presa appropriata

2. Collega il T-Cobbler alla breadboard.

3. Utilizzando cavi jumper di lunghezza personalizzata, collegarne uno al binario di alimentazione e uno al binario di terra

4. Collegare il sensore di distanza a ultrasuoni e collegare la gamba "vcc" all'alimentazione, "gnd" a terra, "trig" a un pin GPIO e "echo" a un resistore da 330 ohm che si collega a un resistore da 560 ohm che è collegato a terra e un pin GPIO.

5. Metti i tre LED RGB sulla breadboard in linea collegando l'anodo dei LED all'alimentazione e collega le diverse gambe che controllano il colore dei LED ai resistori da 330 ohm e quindi ai pin GPIO.

Passaggio 3: il codice

Per fare in modo che il Raspberry Pi utilizzi i pin GPIO, dovremmo codificare i pin per fare qualcosa. Per creare il codice che ho creato ho usato python 3 IDLE. Il codice che ho creato utilizza RPi. GPIO e la libreria gpiozero per funzionare. Ci sono procedure per i diversi colori e c'è una funzione che calcola la distanza usando il sensore di distanza ad ultrasuoni e quando c'è qualcosa nel raggio d'azione aprirà l'anteprima della fotocamera pi e i LED faranno il conto alla rovescia e quindi verrà scattata una foto.

Ecco il codice che ho usato:

from picamera import PiCamerafrom gpiozero import Button, LED from time import sleep import RPi. GPIO as GPIO import time

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

g = [LED (16), LED (20), LED (21)] b = [LED (17), LED (27), LED (22)] pulsante = Pulsante(24) GPIO.setmode(GPIO. BCM) GPIO_TRIGGER = 19 GPIO_ECHO = 26 GPIO.setup(GPIO_TRIGGER, GPIO. OUT) GPIO.setup(GPIO_ECHO, GPIO. IN)

def rosso(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 verde(x):

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

def blu(x):

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

def run():

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

def distanza():

GPIO.output(GPIO_TRIGGER, True) time.sleep(0.00001) GPIO.output(GPIO_TRIGGER, False) StartTime = time.time() StopTime = time.time() mentre GPIO.input(GPIO_ECHO) == 0: StartTime = time.time() while GPIO.input(GPIO_ECHO) == 1: StopTime = time.time() TimeElapsed = StopTime - Distanza StartTime = (TimeElapsed *34300) / 2 distanza di ritorno

spento()

while True: d = distance() if int(d) <= 30: con PiCamera() come fotocamera: camera.start_preview() red(0) sleep(1) blue(1) sleep(1) green(2) sleep (1) off() camera.capture('selfie.jpg') camera.stop_preview()

Consigliato: