Mündəricat:

Avtomatik Photobooth: 4 Addım (Şəkillərlə birlikdə)
Avtomatik Photobooth: 4 Addım (Şəkillərlə birlikdə)

Video: Avtomatik Photobooth: 4 Addım (Şəkillərlə birlikdə)

Video: Avtomatik Photobooth: 4 Addım (Şəkillərlə birlikdə)
Video: WhatsApp-ın bu hiyləsini bilirsən? 😎 2024, Iyul
Anonim
Avtomatik Photobooth
Avtomatik Photobooth

Bu, moruq pi, ultrasəs məsafə sensoru və bir neçə digər aksesuardan istifadə edərək avtomatlaşdırılmış foto köşkünün necə hazırlanacağını sizə göstərəcək. Həm mürəkkəb aparat, həm də inkişaf etmiş bir proqramdan istifadə edən bir layihə etmək istədim. Raspberry pi resursları səhifəsində bu kimi layihələri araşdırdım, bu layihələrdən bəziləri python ilə fiziki hesablama və mikro bit selfie. Bunlardan biri moruq pi kamerasının necə istifadə ediləcəyini, digəri ultrasəs məsafə sensorunun necə istifadə olunacağını göstərdi.

Addım 1: Materiallar

Materiallar
Materiallar

Dövrümüzü qurmağa başlamazdan əvvəl bəzi materiallara ehtiyacınız olacaq:

1 x Raspberry Pi 3

1 x T-Cobbler

1 x Pi Kamera

1 x Ultrasonik Məsafə Sensoru

3 x RGB LED

10 x 330 Ohm Rezistorlar

1 x 560 Ohm rezistor

5 x Müxtəlif rəngli kabellər

1 x Çörək paneli

Addım 2: Dövrün qurulması

Circut tikintisi
Circut tikintisi
Circut tikintisi
Circut tikintisi
Circut tikintisi
Circut tikintisi
Circut tikintisi
Circut tikintisi

Dövrəmi birləşdirmək üçün getdiyim yol budur:

1. Bu dövrəni etmək üçün Raspberry Pi kamerasını uyğun yuvaya bağlamaq istərdiniz

2. T-Cobbler-i çörək taxtasına qoşun.

3. Xüsusi uzunluqdakı tullanan kabellərdən istifadə etməklə birini elektrik rayına, digəri isə torpaq rayına bağlayın

4. Ultrasonik məsafə sensoru qoşun və 'vcc' ayağını gücə, 'gnd' -i yerə, 'trig' -i GPIO pininə və 'echo' -u 560 ohm rezistora bağlayan 330 ohm rezistora qoşun. yerə və GPIO pininə bağlıdır.

5. LED -lərin anodunu gücə bağlayan çörək taxtasının içərisinə üç RGB LED -i qoyun və LED -lərin rəngini idarə edən fərqli ayaqları 330 ohm rezistorlara, sonra GPIO sancaqlarına qoşun.

Addım 3: Kod

Raspberry Pi -nin GPIO sancaqlarından istifadə etməsi üçün pinləri bir şey etmək üçün kodlaşdırmalıyıq. Etdiyim kodu hazırlamaq üçün python 3 IDLE istifadə etdim. Etdiyim kod, işləməsi üçün RPi. GPIO və gpiozero kitabxanasından istifadə edir. Fərqli rənglər üçün prosedurlar var və ultrasəs məsafə sensoru ilə məsafəni hesablayan bir funksiya var və aralığında bir şey olduğunda pi kamera ön görünüşünü açacaq və LEDlər geri sayılacaq və sonra şəkil çəkiləcək.

İşdə istifadə etdiyim kod budur:

picamera idxalından PiCamerafrom gpiozero idxal Düyməsini, LEDdən idxal yuxu idxalı RPi. GPIO GPIO idxal vaxtı olaraq

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

g = [LED (16), LED (20), LED (21)] b = [LED (17), LED (27), LED (22)] düyməsi = Düymə (24) GPIO.setmode (GPIO. BCM) GPIO_TRIGGER = 19 GPIO_ECHO = 26 GPIO. qurulumu (GPIO_TRIGGER, GPIO. OUT) GPIO.setup (GPIO_ECHO, GPIO. IN)

def qırmızı (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 yaşıl (x):

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

def mavi (x):

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

def run ():

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

def məsafəsi ():

GPIO.output (GPIO_TRIGGER, True) time.sleep (0.00001) GPIO.output (GPIO_TRIGGER, False) StartTime = time.time () StopTime = time.time () while GPIO.input (GPIO_ECHO) == 0: StartTime = time. zaman () GPIO.input (GPIO_ECHO) == 1 olarkən: StopTime = time.time () TimeElapsed = StopTime - StartTime məsafəsi = (TimeElapsed *34300) / 2 qaytarılma məsafəsi

söndür ()

isə True: d = məsafə () əgər int (d) <= 30: PiCamera () ilə kamera: kamera.start_preview () qırmızı (0) yuxu (1) mavi (1) yuxu (1) yaşıl (2) yuxu (1) off () camera.capture ('selfie.jpg') camera.stop_preview ()

Tövsiyə: