Sisukord:
- Samm: mida vajate
- Samm 2: Kaameramooduli ühendamine
- 3. samm: kaamera seadistamine
- 4. samm: kaameramooduli testimine
- Samm: ahela loomine koodiga
Video: Vaarika Pi fotobooth: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Eesmärk:
- Siit saate teada, kuidas Pi -kaamerat kodeerida ja installida
- Defineerimise ja if -lausete kasutamine kodeerimisel
- Õppige kasutama uut tehnoloogiat, nagu RGB LED -id
Samm: mida vajate
- 1 Vaarika Pi 3
- Leivalaud
- Džemprid
- 1 valgusest sõltuv takisti
- 1 kondensaator
- 1 Vajutage nuppu
- 6 220 oomi takistid
- 2 RGB LED -i
- 1 Raspberry Pi kaamera
Samm 2: Kaameramooduli ühendamine
Esiteks, kui Pi on välja lülitatud, peate ühendama kaamera mooduli Raspberry Pi kaamerapordiga, seejärel käivitama Pi ja veenduma, et tarkvara on lubatud.
- Leidke kaameraport, mis asub HDMI ja 3,5 mm pordi vahel
- Tõmmake kaamera klambrit plastist servadest üles, kuni klamber on diagonaal
- Nüüd sisestage kaamera kaabel nii, et sinine oleks 3,5 mm pordi poole
3. samm: kaamera seadistamine
Peamenüüst Raspberry Pi seadistustööriista avamine ja kõigi ülaltoodud liideste keelamine ja lubamine
Avage peamenüüst terminal ja tippige järgmised koodiridad:
Sudo Raspi-config
Nüüd kasutage siit süsteemis liikumiseks nooleklahve ja klõpsake suvandil Perifeerne ühendus ning nende klõpsamisel P1 kaamera ja lubage kaamera, seejärel valige Lõpeta. Tagasi terminalitüübi juurde järgmistes koodiridades:
pip installige picamera
või Sudo pip installige Picamera
4. samm: kaameramooduli testimine
Siit saame testida, kas kaamera töötab või mitte, kuna meil on kogu tarkvara ja riistvara lubatud.
Avage menüüst Python 3
Sealt avage kestast uus fail ja salvestage see cameratest.py.
Sisestage järgmine kood:
alates picamera import PiCamera #imporditud moodul, mis on loodud pip installimisest pi kaamera käsk ajast importimine uni #imporditud uni, et veenduda, et meie kaamera jääb kaamerasse = PiCamera () #Kaamera seadistamine
camera.start_preview ()#käivitab kaamera ja näitab teile, milline kaamera väljund välja näeb
unerežiim (10)#jätab eelvaate 10 sekundiks sisse
camera.stop_preview ()#lõpetab lõpuks eelvaate
Käivitage kood F5 abil
Kui saate koodi käivitamisel selle tõrke:
(mmal: mmal_vc_component_create: komponendi 'vc.ril.camera' loomine ebaõnnestus (1: ENOMEM)
mmal: mmal_component_create_core: komponenti 'vc.ril.camera' ei saanud luua (1) Traceback (viimane kõne): Fail "", rida 1, failis /usr/lib/python2.7/dist-packages/picamera /camera.py ", rida 257, _init_ self._init_camera () Fail" /usr/lib/python2.7/dist-packages/picamera/camera.py ", rida 288, _init_camera prefix =" Kaamera loomine nurjus komponent ") Fail" /usr/lib/python2.7/dist-packages/picamera/exc.py ", rida 112, mmal_check tõsta PiCameraMMALError (olek, eesliide) picamera.exc. PiCameraMMALEviga: Kaamera komponendi loomine ebaõnnestus: Väljas mälestusest)
Palun minge Raspberry Pi konfiguratsiooni, minge jõudlusveeru alla ja suurendage oma GPU mälu, kuni viga on kadunud (peate taaskäivitama).
Nüüd, et luua foto, mis salvestatakse töölauale, kasutame järgmist koodi:
alates picamera import PiCamera #Pip install installitud imporditud moodul pi kaamera käsk ajast importimine unerežiim #Imporditud uni, et veenduda, et meie kaamera jääb sisse
kaamera = PiCamera () #Kaamera seadistamine
camera.start_preview () #Käivitab eelvaate une (5) #Jätab eelvaate 5 sekundiks sisse
camera.capture ('/home/pi/Desktop/image.jpg')# Sealt
camera.stop_preview ()#Peatab eelvaate
Samm: ahela loomine koodiga
Nagu ülaltoodud skeemidest näha, peame seadistama nupu, LDR -i ja lõpuks kaks RGB -LED -i. Kõigepealt seadistame leivalaua vasakus alanurgas oleva nupu. Nupu seadistamisel kasutame ühisraudteeliini, mis tähendab, et ühendame oma 3.3V positiivse ja negatiivse pinnasega. Kui olete lõpetanud ainult nupu vooluringi seadistamise.
Testime oma vooluringi, et näha, kas suudame selle nii teha, et kui nuppu vajutatakse, lülitame LED -i sisse järgmise koodi abil:
#Imported Modulesfp gpiozero import nupust picamera import PiCamera ajast importimise unerežiimist
#Seadistamine
Kaamera = PiCamera () Nupp = Nupp (22)
#Pildistamisfunktsioon, olen otsustanud selle määratleda, kuna see aitab meil põhikoodi puhastada
def photocap ():
Camera.start_preview ()
unerežiim (5) Camera.capture ('/home/pi/Desktop/image.jpg') print ("Foto on tehtud") Camera.stop_preview ()
#Põhikood:
samas tõsi: kui Button.is_pressed: print ("Nupule vajutati") photocap ()
#Miks see toimib? Põhikood töötab, kuna kõik, mida me teeme, on käsu if
Nüüd seadistame 2 RGB LED -i kuni ahela ülaosani ja eraldame need leivaplaadi keskel ja muudame sümmeetriliseks. Kui teil pole selle projekti jaoks 220 oomi takistit, saate need paralleelselt seadistada, sõltuvalt teie takistite takistusest. 4 kontaktiga RGB LED -i teine tihvt (pikim peaks olema raudteega maandusega ühendatud. Teised tihvtid tuleks ühendada oma GPIO -tihvtidega. (Esimene tihvt = punane, teine tihvt = maandus, kolmas tihvt = roheline, Neljas tihvt = sinine).
Testime ühte meie RGB LED -idest oma nupuahelas järgmise koodiga:
#Imporditud moodulid gpiozero importnupust picamera import PiCamera
gpiozero import RGBLED
ajast importige uni
#Seadistamine
Kaamera = PiCamera () Nupp = Nupp (22)
TimedLED = RGBLED (punane = 21, roheline = 20, sinine = 16)
#Pildistusfunktsioon koos RGB LED -iga, olen otsustanud selle määratleda, kuna see aitab meil põhikoodi puhastada
def photocap (): Camera.start_preview () uni (4)
timedled.color (1, 0, 0)
magama (2)
timedled.color (0, 1, 0)
magama (1)
Camera.capture ('/home/pi/Desktop/image.jpg') print ("Foto on tehtud") Camera.stop_preview ()
#Põhikood:
kuigi tõsi:
kui Button.is_pressed:
print ("Nuppu vajutati") photocap ()
#Miks see töötab: Selle koodi toimimise põhjus on see, et nüüd saime RGBLED -i töötama taimerina foto tegemise ajaks.
Nüüd seadistage kergelt sõltuv takisti leivaplaadi paremasse alumisse serva, kasutades ülaosas olevat diagrammi ja ülalkirjeldatud ühisraudteid. Pidage meeles, et LDR -i mõlemad pikad jalad ja kapitsitaator peavad olema GPIO -tihvtiga ühendatud.
Pärast LDR -i ühendamist kasutame järgmist koodi:
#Imporditud moodulid
gpiozero impordi nupust
alates picamera import PiCamera alates gpiozero import RGBLED
gpiozero import LightSensor
ajast importige uni
#Seadistamine
Kaamera = PiCamera () Nupp = Nupp (22) TimedLED = RGBLED (punane = 21, roheline = 20, sinine = 16)
LightSensor = Valgusandur (23)
#Pildistusfunktsioon koos RGB LED -iga, olen otsustanud selle määratleda, kuna see aitab meil põhikoodi puhastada
def photocap (): Camera.start_preview () uni (4) timedled.color (1, 0, 0) uni (2) ajastatud.värv (0, 1, 0) uni (1) Camera.capture ('/home/ pi/Desktop/image-j.webp
#Põhikood:
kuigi tõsi:
kui Button.is_pressed: print ("Nuppu vajutati") photocap ()
kui Button.is_pressed ja Lightsensor.when_dark:
print ("Nupule vajutati")
print ("See on pime")
fotokaas ()
#Miks see toimib? Valgusanduri lisamine minu koodile toimub teise if -lause kaudu, mis sisaldab valgusanduri imporditud funktsiooni.
Selle projekti viimane samm oleks aktiveerida teine RGBLED -sümmeetriline, et töötada välklambina.
Lõplik kood:
gpiozero impordi nupust
alates picamera import PiCamera
gpiozero import RGBLED
gpiozero import LightSensor
ajast importige uni
#Seadistamine
Kaamera = PiCamera ()
Nupp = nupp (22)
TimedLED = RGBLED (punane = 21, roheline = 20, sinine = 16)
FlashLED = RGBLED (punane = 19, roheline = 13, sinine = 6)
LightSensor = Valgusandur (23)
#Pildistusfunktsioon koos RGB LED -iga, olen otsustanud selle määratleda, kuna see aitab meil puhastada põhikoodi def photocap (): Camera.start_preview () sleep (4) timedled.color (1, 0, 0) uni (2) timedled.color (0, 1, 0) uni (1) Camera.capture ('/home/pi/Desktop/image.jpg') print ("Foto on tehtud") Camera.stop_preview () # Põhikood: tõsi: kui Button.is_pressed:
print ("Nuppu vajutati")
fotokaas ()
kui Button.is_pressed ja Lightsensor.when_dark:
print ("Nupule vajutati") print ("See on pime")
FlashLED.värv (1, 1, 1)
fotokaas ()
#Miks see toimib? See, kuidas ma oma taskulampi lisasin, on RGB -d kasutades valge värv, mis on 1, 1, 1 ja see toimib ainult juhul, kui väide on tõene.
Soovitan:
Vaarika Pi tulemustabel: 4 sammu
Vaarika Pi tulemustabel: Täna selgitan, kuidas ma tegin selle tulemustabeli, mida juhib vaarika pi ja mida toidab 5 V toiteallikas. See kasutab valgustite kombinatsiooni ws2811 ja ws2812b ning konstruktsioon on valmistatud vineerist ja punasest tammest. Kirjelduse jaoks
Vaarika Pi väljalülitumise indikaator: 6 sammu
Vaarika Pi väljalülitumise indikaator: see on väga lihtne vooluring vaarika pi (edaspidi RPI) oleku näitamiseks. Võib-olla on see kasulik, kui käivitate RPI peata (ilma monitorita). Mõnikord olen mures, millal on õige aeg täielikuks väljalülitamiseks pärast RPI sulgemist
Vaarika Pi trummimasin: 5 sammu
Vaarika Pi trummimasin: Proovijärjestus Raspberry Pi + Pythoni kaudu. Sekvenseerijal on 4 polüfooniat ja see võimaldab kasutajal salvestada ja luua 6 erinevat järjestust, mida nad saavad reaalajas vaheldumisi vahetada, ning toetab võimalust erinevate proovide vahel vahetada . Ma w
Vaarika Pi NOAA ja Meteor-M 2 vastuvõtja: 6 sammu
Raspberry Pi NOAA ja Meteor-M 2 vastuvõtja: see juhend aitab teil luua vastuvõtujaama mitte ainult NOAA-15, 18 ja 19 APT jaoks, vaid ka Meteor-M 2 jaoks. See on tõesti vaid väike jätkuprojekt haslettj suurepärane " Raspberry Pi NOAA ilmastiku satelliidi vastuvõtja " projekti
Mega RasPi - Vaarika Pi Sega Mega Drive'is / Genesis: 13 sammu (piltidega)
Mega RasPi - Raspberry Pi Sega Mega Drive'is / Genesis: see juhend juhendab teid vana Sega Mega Drive'i teisendamisel retro -mängukonsooliks, kasutades selleks Raspberry Pi. Olen veetnud lugematuid tunde oma lapsepõlvest videomänge mängides minu Sega Mega Drive. Enamikul mu sõpradel oli ka üks, nii et me tahaksime