Cuprins:
- Pasul 1: De ce veți avea nevoie
- Pasul 2: Conectarea modulului camerei
- Pasul 3: Configurarea camerei
- Pasul 4: Testarea modulului camerei
- Pasul 5: Crearea circuitului cu cod
Video: Photobooth Raspberry Pi: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Scopul:
- Aflați cum să codificați și să instalați o cameră Pi
- Utilizarea instrucțiunilor define și if în codificare
- Învățând să folosesc noi tehnologii precum LED-urile RGB
Pasul 1: De ce veți avea nevoie
- 1 Raspberry Pi 3
- Pană de pâine
- Jumpers
- 1 rezistor dependent de lumină
- 1 condensator
- 1 Buton
- 6 Rezistoare de 220 Ohm
- 2 LED-uri RGB
- 1 cameră Raspberry Pi
Pasul 2: Conectarea modulului camerei
În primul rând, cu Pi oprit, va trebui să conectați modulul camerei la portul camerei Raspberry Pi, apoi să porniți Pi și să vă asigurați că software-ul este activat.
- Localizați portul camerei care se află între portul HDMI și portul de 3,5 mm
- Trageți în sus clema camerei de marginile din plastic până când clema este în diagonală
- Acum introduceți cablul camerei cu albastrul orientat spre portul de 3,5 mm
Pasul 3: Configurarea camerei
Deschideți instrumentul de configurare Raspberry Pi din meniul principal și dezactivați și activați toate interfețele de mai sus
Din meniul principal deschideți terminalul și tastați următoarele linii de cod:
Sudo Raspi-config
Acum, de aici, utilizați tastele săgeți pentru a opera prin sistem și faceți clic pe opțiunea Conexiune periferică și din clicul acestora pe Camera P1 și activați camera, apoi selectați Finalizare. Revenind la tipul terminalului în următoarele linii de cod:
pip instala picamera
sau Sudo pip instalează Picamera
Pasul 4: Testarea modulului camerei
De aici putem testa dacă camera funcționează sau nu, deoarece avem toate software-urile și hardware-ul activat.
Deschideți Python 3 din meniu
De acolo deschideți un fișier nou din shell și salvați-l pe cameratest.py.
Introduceți următorul cod:
din picamera import PiCamera #modul importat creat din comanda pip install pi camera de la import timp somn # importat somn pentru a ne asigura că camera noastră rămâne pe cameră = PiCamera () #Setup for the camera
camera.start_preview () # pornește camera și vă arată cum arată ieșirea camerei
sleep (10) # lasă previzualizarea activată timp de 10 secunde
camera.stop_preview () # părăsește în cele din urmă previzualizarea
Rulați codul până la F5
Dacă primiți această eroare când rulați codul:
(mmal: mmal_vc_component_create: nu s-a putut crea componenta 'vc.ril.camera' (1: ENOMEM)
mmal: mmal_component_create_core: nu s-a putut crea componenta 'vc.ril.camera' (1) Traceback (ultimul apel cel mai recent): Fișier "", linia 1, în Fișier "/usr/lib/python2.7/dist-packages/picamera /camera.py ", linia 257, în _init_ self._init_camera () Fișier" /usr/lib/python2.7/dist-packages/picamera/camera.py ", linia 288, în prefixul _init_camera =" Nu s-a putut crea camera componentă ") Fișier" /usr/lib/python2.7/dist-packages/picamera/exc.py ", linia 112, în mmal_check mărire PiCameraMMALError (stare, prefix) picamera.exc. PiCameraMMALError: Nu s-a putut crea componenta camerei: Out de memorie)
Accesați configurația Raspberry Pi, intrați sub coloana de performanță și măriți memoria GPU până când eroarea dispare (trebuie să reporniți).
Acum, pentru a crea o fotografie care va fi salvată pe desktop, vom folosi următorul cod:
din picamera import PiCamera # Modulul importat creat din comanda pip instala pi camera
camera = PiCamera () #Setup pentru camera
camera.start_preview () # Începe previzualizarea (5) # Lasă previzualizarea activă timp de 5 secunde
camera.capture ('/ home / pi / Desktop / image.jpg') # Din
camera.stop_preview () # Oprește previzualizarea
Pasul 5: Crearea circuitului cu cod
După cum se vede mai sus din schemele de circuite, trebuie să configurăm un buton, un LDR și, în cele din urmă, două LED-uri RGB. Mai întâi vom configura butonul din partea stângă jos a panoului de verificare. În timpul configurării pentru buton, vom folosi liniile de cale ferată comune, ceea ce înseamnă că vom conecta 3.3V la pozitiv și la sol pentru negativ. După ce ați terminat configurarea circuitului doar pentru buton.
Vom testa circuitul nostru pentru a vedea dacă îl putem face astfel încât, dacă butonul este apăsat, pornim ledul folosind următorul cod:
#Module importate de la importul gpiozero Buton de la importul camerei foto PiCamera de la ora de somn la import
#Înființat
Camera = PiCamera () Buton = Buton (22)
Funcția #Photo taking, am decis să o pun într-o funcție de definire, deoarece ne ajută să curățăm codul principal
photocap def ():
Camera.start_preview ()
sleep (5) Camera.capture ('/ home / pi / Desktop / image.jpg') print ("A fost făcută fotografia") Camera.stop_preview ()
#Cod principal:
în timp ce este adevărat: dacă Button.is_pressed: print ("Butonul a fost apăsat") photocap ()
#De ce funcționează: Codul principal funcționează așa cum facem doar folosind comanda dacă butonul este apăsat într-o declarație adevărată în timp ce se actualizează constant atunci când butonul este apăsat pentru a face fotografia
Acum vom configura 2 LED-uri RGB până în partea de sus a circuitului și le vom separa la mijlocul panoului și vom face simetricul. Dacă nu aveți rezistențe de 220 ohmi pentru acest proiect, le puteți configura în paralel, în funcție de rezistența dvs. pentru rezistențele pe care le aveți. Al doilea pin al LED-ului RGB cu 4 pini (cel mai lung ar trebui să fie conectat la masă prin calea ferată. Ceilalți pini trebuie conectați toți la propriii lor pini GPIO. (Primul pin = roșu, Al doilea pin = masă, Al treilea pin = verde, Al patrulea pin = albastru).
Vom testa unul dintre LED-urile noastre RGB în circuitul nostru de butoane cu codul de mai jos:
#Imported Modulesde la gpiozero import Buton de la picamera import PiCamera
din importul gpiozero RGBLED
din timp import somn
#Înființat
Camera = PiCamera () Buton = Buton (22)
TimedLED = RGBLED (roșu = 21, verde = 20, albastru = 16)
#Funcția de fotografiere cu LED RGB, am decis să o pun într-o funcție de definire, deoarece ne ajută să curățăm codul principal
photocap def (): Camera.start_preview () sleep (4)
timedled.color (1, 0, 0)
somn (2)
timedled.color (0, 1, 0)
dormi (1)
Camera.capture ('/ home / pi / Desktop / image.jpg') print („A fost făcută fotografia”) Camera.stop_preview ()
# Cod principal:
în timp ce este adevărat:
dacă Button.is_pressed:
print ("Butonul a fost apăsat") photocap ()
#De ce funcționează acest lucru: Motivul pentru care funcționează acest cod este că acum am primit RGBLED să funcționeze ca temporizator pentru momentul în care va fi făcută fotografia
Acum configurați rezistorul Light Dependent din partea dreaptă jos a panoului de calcul folosind diagrama până în partea de sus și căile ferate comune discutate anterior. Amintiți-vă că ambele picioare lungi ale LDR și capicitatorul trebuie să fie conectate la pinul GPIO.
După ce am conectat LDR, vom folosi următorul cod:
#Module importate
din butonul de importare gpiozero
din picamera import PiCamera din gpiozero import RGBLED
din importul gpiozero LightSensor
din timp import somn
#Înființat
Camera = PiCamera () Buton = Buton (22) TimedLED = RGBLED (roșu = 21, verde = 20, albastru = 16)
LightSensor = LightSensor (23)
#Funcția de fotografiere cu LED RGB, am decis să o pun într-o funcție de definire, deoarece ne ajută să curățăm codul principal
photocap def (): Camera.start_preview () sleep (4) timedled.color (1, 0, 0) sleep (2) timedled.color (0, 1, 0) sleep (1) Camera.capture ('/ home / pi / Desktop / image-j.webp
# Cod principal:
în timp ce este adevărat:
dacă Button.is_pressed: print ("Butonul a fost apăsat") photocap ()
dacă Button.is_pressed și Lightsensor.when_dark:
print („Butonul a fost apăsat”)
print („Este întuneric”)
fotocap ()
#De ce funcționează acest lucru: modul în care am adăugat senzorul de lumină la codul meu este printr-o altă instrucțiune if care conține funcția importată a senzorului de lumină. Când întunericul ne configurează perfect pentru următorul nostru pas
Acum, ultimul pas prin realizarea acestui proiect ar fi să activezi celălalt simetric RGBLED la celălalt pentru a funcționa ca o lumină flash, Codul final:
din butonul de importare gpiozero
din picamera import PiCamera
din importul gpiozero RGBLED
din importul gpiozero LightSensor
din timp import somn
#Înființat
Camera = PiCamera ()
Buton = Buton (22)
TimedLED = RGBLED (roșu = 21, verde = 20, albastru = 16)
FlashLED = RGBLED (roșu = 19, verde = 13, albastru = 6)
LightSensor = LightSensor (23)
#Funcția de fotografiere cu LED RGB, am decis să o pun într-o funcție de definire, deoarece ne ajută să curățăm codul principal def photocap (): Camera.start_preview () sleep (4) timedled.color (1, 0, 0) sleep (2) timedled.color (0, 1, 0) sleep (1) Camera.capture ('/ home / pi / Desktop / image.jpg') print ("Fotografia a fost făcută") Camera.stop_preview () # Cod principal: în timp ce este adevărat: dacă Button.is_pressed:
print („Butonul a fost apăsat”)
fotocap ()
dacă Button.is_pressed și Lightsensor.when_dark:
print („Butonul a fost apăsat”) print („Este întuneric”)
FlashLED.color (1, 1, 1)
fotocap ()
#De ce funcționează: modul în care mi-am adăugat lanterna este prin utilizarea ledului RGB pentru a afișa culoarea albă, care este 1, 1, 1 și face acest lucru numai dacă afirmația if este adevărată.
Recomandat:
Instalarea Raspbian în Raspberry Pi 3 B Fără HDMI - Noțiuni introductive despre Raspberry Pi 3B - Configurarea Raspberry Pi 3: 6 pași
Instalarea Raspbian în Raspberry Pi 3 B Fără HDMI | Noțiuni introductive despre Raspberry Pi 3B | Configurarea Raspberry Pi 3: După cum unii dintre voi știți, computerele Raspberry Pi sunt minunate și puteți obține întregul computer doar pe o singură placă mică. Raspberry Pi 3 Model B are un quad-core 64-bit ARM Cortex A53 tactat la 1,2 GHz. Acest lucru pune Pi 3 aproximativ 50
Raspberry Pi PhotoBooth: HTML5 și NodeJS: 4 pași
Raspberry Pi PhotoBooth: HTML5 și NodeJS: un fotobooth HTML5 și NodeJS cu previzualizare live și margini personalizate. Acest proiect a început ca ceva ce am construit pentru dansul școlii fiicei mele. Am vrut ceva distractiv pentru ea și prietenii ei să-și amintească evenimentul (care a fost ultima dată când vor
Photobooth de nuntă / eveniment: 6 pași (cu imagini)
Photobooth de nuntă / eveniment: Bună tuturor, m-am căsătorit anul trecut, când căutam pregătirea zilei D. Am făcut o mulțime de convenții de nuntă. În fiecare convenție există un chiriaș Photobooth, am crezut că un photobooth a fost o idee grozavă pentru o nuntă, fiecare invitat c
Photobooth automat: 4 pași (cu imagini)
Photobooth automat: aceasta vă va arăta cum să realizați o cabină foto automată folosind raspberry pi, un senzor de distanță cu ultrasunete și alte câteva accesorii. Am vrut să fac un proiect care utilizează atât hardware sofisticat, cât și un program care este sofisticat. Caut
DIY Photobooth: 7 pași (cu imagini)
DIY Photobooth: Acesta este un tutorial despre cum să-ți construiești propriul photobooth la fel ca cele tradiționale văzute la mall-uri, parcuri de distracții și centre comerciale din întreaga lume. Cu toate acestea, acest stand este complet digital și este mult mai ieftin / mai ușor de făcut acasă. Am scris