Sisällysluettelo:
- Vaihe 1: Mitä tarvitset
- Vaihe 2: Kameramoduulin liittäminen
- Vaihe 3: Kameran käyttöönotto
- Vaihe 4: Kameramoduulin testaus
- Vaihe 5: Piirin luominen koodilla
Video: Raspberry Pi Photobooth: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Tarkoitus:
- Opi Pi -kameran koodaamiseen ja asentamiseen
- Määrittele ja jos -lausekkeiden käyttäminen koodauksessa
- Opi käyttämään uutta tekniikkaa, kuten RGB -LED -valoja
Vaihe 1: Mitä tarvitset
- 1 Vadelma Pi 3
- Leipälauta
- Puserot
- 1 Valosta riippuvainen vastus
- 1 kondensaattori
- 1 Painike
- 6220 ohmin vastukset
- 2 RGB -LEDiä
- 1 Raspberry Pi -kamera
Vaihe 2: Kameramoduulin liittäminen
Ensinnäkin, kun Pi on kytketty pois päältä, sinun on liitettävä kameramoduuli Raspberry Pi: n kameraporttiin, käynnistettävä sitten Pi ja varmistettava, että ohjelmisto on käytössä.
- Etsi kameraportti, joka on HDMI- ja 3,5 mm -portin välissä
- Vedä kameran pidikettä ylöspäin muovireunoista, kunnes pidike on lävistäjä
- Liitä nyt kameran kaapeli sinisellä 3,5 mm: n porttiin päin
Vaihe 3: Kameran käyttöönotto
Avaa Raspberry Pi Configuration -työkalu päävalikosta ja poista kaikki yllä olevat rajapinnat käytöstä ja ota ne käyttöön
Avaa päävalikosta päätelaite ja kirjoita seuraavat koodirivit:
Sudo Raspi-config
Käytä tästä lähtien nuolinäppäimiä järjestelmän läpi ja napsauta Oheisliitäntä -vaihtoehtoa ja napsauta sitten P1 -kameraa ja ota kamera käyttöön ja valitse sitten Valmis. Palaten päätelaitetyyppiin seuraavilla koodiriveillä:
pip asenna picamera
tai Sudo pip asenna Picamera
Vaihe 4: Kameramoduulin testaus
Täältä voimme testata, toimiiko kamera vai ei, koska meillä on kaikki ohjelmistot ja laitteistot käytössä.
Avaa Python 3 valikosta
Sieltä avaa uusi tiedosto kuorista ja tallenna se cameratest.py.
Syötä seuraava koodi:
alkaen picamera tuonti PiCamera #tuodut moduuli luotu pip asenna asenna pi kamerakomento ajasta tuonti lepotila #tuonti lepotila varmistaaksemme, että kamera pysyy kamerassa = PiCamera () #Asetukset kameralle
camera.start_preview ()#käynnistää kameran ja näyttää miltä kameran ulostulo näyttää
lepotila (10)#jättää esikatselun päälle 10 sekunniksi
camera.stop_preview ()#lopettaa lopulta esikatselun
Suorita koodi F5: llä
Jos saat tämän virheen koodia suoritettaessa:
(mmal: mmal_vc_component_create: komponentin 'vc.ril.camera' luominen epäonnistui (1: ENOMEM)
mmal: mmal_component_create_core: komponenttia 'vc.ril.camera' ei voitu luoda (1) Jäljitys (viimeisin puhelu viimeksi): Tiedosto "", rivi 1, tiedostossa /usr/lib/python2.7/dist-packages/picamera /camera.py ", rivi 257, _init_ self._init_camera () Tiedosto" /usr/lib/python2.7/dist-packages/picamera/camera.py ", rivi 288, _init_camera prefix =" Kameran luominen epäonnistui komponentti ") Tiedosto" /usr/lib/python2.7/dist-packages/picamera/exc.py ", rivi 112, mmal_check raise PiCameraMMALError (tila, etuliite) picamera.exc. PiCameraMMALEvirhe: Kamerakomponentin luonti epäonnistui: Out muistista)
Siirry Raspberry Pi -kokoonpanoon, siirry suorituskykysarakkeen alle ja lisää GPU -muistiasi, kunnes virhe poistuu (täytyy käynnistää uudelleen).
Nyt luodaan valokuva, joka tallennetaan työpöydälle, käytämme seuraavaa koodia:
picamera tuonnista PiCamera #Pip -asennuksesta luotu tuodut moduuli pi -kamerakomento aikatuonnin lepotilasta #tuonti lepotilasta, jotta kamera pysyy päällä
camera = PiCamera () #Asetukset kameralle
camera.start_preview () #Käynnistää esikatselun (5) #Jättää esikatselun päälle 5 sekunniksi
camera.capture ('/home/pi/Desktop/image.jpg')# Lähteestä
camera.stop_preview ()#Pysäyttää esikatselun
Vaihe 5: Piirin luominen koodilla
Kuten yllä olevasta piirikaaviosta näkyy, meidän on asetettava painike, LDR ja lopuksi kaksi RGB -LEDiä. Asetamme ensin painikkeen leipälevyn vasempaan alakulmaan. Painikkeesi asennuksen aikana käytämme yhteisiä rautateitä, mikä tarkoittaa, että liitämme 3,3 V: n positiiviseen ja negatiivisen maan. Kun olet suorittanut piirin asetukset vain painikkeelle.
Testaamme virtapiiriä nähdäksemme, pystymmekö tekemään sen niin, että jos painiketta painetaan, kytketään ledi päälle seuraavan koodin avulla:
#Imported Modulesfrom gpiozero import Button from picamera Import PiCamera from time Import Sleep
#Perustaa
Kamera = PiCamera () -painike = -painike (22)
#Valokuvaustoiminto, olen päättänyt laittaa sen määrittelytoimintoon, koska se auttaa meitä puhdistamaan pääkoodin
def photocap ():
Camera.start_preview ()
lepotila (5) Camera.capture ('/home/pi/Desktop/image.jpg') print ("Valokuva on otettu") Camera.stop_preview ()
#Pääkoodi:
kun taas Totta: jos Button.is_pressed: print ("painiketta painettiin") photocap ()
#Miksi tämä toimii: Pääkoodi toimii, koska kaikki mitä teemme, on käyttää komentoa if button.is_pressed in a true true, joten se päivittyy jatkuvasti, kun painiketta otetaan valokuvan ottamiseksi
Nyt aiomme asentaa 2 RGB -LEDiä aina piirin yläosaan asti ja erottaa ne leipälaudan keskelle ja tehdä symmetriset. Jos sinulla ei ole 220 ohmin vastuksia tähän projektiin, voit asettaa ne rinnakkain riippuen vastuksistasi. 4 -nastaisen RGB -LEDin toinen nasta (pisin on liitettävä maahan rautateiden kautta. Muut nastat on liitettävä omiin GPIO -nastoihinsa. (Ensimmäinen nasta = punainen, toinen nasta = maadoitus, kolmas nasta = vihreä, Neljäs nasta = sininen).
Testaamme yhden RGB -merkkivaloistamme painikepiirissämme alla olevalla koodilla:
#Imported Modulesfrom gpiozero import Button from picamera import PiCamera
gpiozero -tuonnista RGBLED
tuontihetkestä
#Perustaa
Kamera = PiCamera () -painike = -painike (22)
TimedLED = RGBLED (punainen = 21, vihreä = 20, sininen = 16)
#Valokuvaustoiminto RGB -LEDillä, olen päättänyt laittaa sen määrittelytoimintoon, koska se auttaa meitä puhdistamaan pääkoodin
def photocap (): Camera.start_preview () uni (4)
ajoitettu. väri (1, 0, 0)
nukkua (2)
ajoitettu. väri (0, 1, 0)
nukkua (1)
Camera.capture ('/home/pi/Desktop/image.jpg') print ("Valokuva on otettu") Camera.stop_preview ()
#Pääkoodi:
vaikka totta:
jos Button.is_pressed:
tulosta ("painiketta painettiin") photocap ()
#Miksi tämä toimii: Tämä koodi toimii siksi, että nyt saimme RGBLED -laitteen toimimaan ajastimena valokuvan ottamiselle
Asenna nyt valosta riippuva vastus leipälaudan oikeaan alakulmaan käyttämällä kaaviota ylöspäin yläreunassa ja edellä mainittuja yhteisiä rautateitä. Muista, että LDR: n ja kapikitaattorin molemmat pitkät jalat on liitettävä GPIO -nastaan.
Kun olemme liittäneet LDR: n, käytämme seuraavaa koodia:
#Tuodut moduulit
gpiozeron tuontipainikkeesta
picamera tuonnista PiCamera gpiozerosta tuonti RGBLED
gpiozeron tuonnista LightSensor
tuontihetkestä
#Perustaa
Kamera = PiCamera () -painike = -painike (22) TimedLED = RGBLED (punainen = 21, vihreä = 20, sininen = 16)
Valoanturi = Valoanturi (23)
#Valokuvaustoiminto RGB -LEDillä, olen päättänyt laittaa sen määrittelytoimintoon, koska se auttaa meitä puhdistamaan pääkoodin
def photocap (): Camera.start_preview () uni (4) timedled.color (1, 0, 0) uni (2) ajastettu.väri (0, 1, 0) uni (1) Camera.capture ('/home/ pi/Desktop/image-j.webp
#Pääkoodi:
vaikka totta:
jos Button.is_pressed: print ("painiketta painettiin") photocap ()
jos Button.is_pressed ja Lightsensor.when_dark:
tulosta ("painiketta painettiin")
tulosta ("On pimeää")
valokuvakorkki ()
#Miksi tämä toimii: Valoanturin lisääminen koodiini tapahtuu toisen if -lauseen kautta, joka sisältää valotunnistimen tuodun toiminnon. Kun tumma asettaa meidät täydellisesti seuraavaan vaiheeseen
Tämän projektin viimeinen vaihe olisi aktivoida toinen RGBLED -symmetrinen toiselle, jotta se toimisi salamavalona, Lopullinen koodi:
gpiozeron tuontipainikkeesta
picamera tuonti PiCamera
gpiozero -tuonnista RGBLED
gpiozeron tuonnista LightSensor
tuontihetkestä
#Perustaa
Kamera = PiCamera ()
Painike = painike (22)
TimedLED = RGBLED (punainen = 21, vihreä = 20, sininen = 16)
FlashLED = RGBLED (punainen = 19, vihreä = 13, sininen = 6)
Valoanturi = Valoanturi (23)
#Valokuvan ottotoiminto RGB -LED -valolla) uni (2) ajastettu.väri (0, 1, 0) uni (1) Camera.capture ('/home/pi/Desktop/image.jpg') print ("Valokuva on otettu") Camera.stop_preview () # Pääkoodi: kun True: if Button.is_pressed:
tulosta ("painiketta painettiin")
valokuvakorkki ()
jos Button.is_pressed ja Lightsensor.when_dark:
print ("Painiketta painettiin") print ("On pimeää")
FlashLED. Väri (1, 1, 1)
valokuvakorkki ()
#Miksi tämä toimii: Olen lisännyt taskulampun käyttämällä RGB -lediä valkoisen värin tuottamiseksi, joka on 1, 1, 1, ja se toimii vain, jos if -lause on totta.
Suositeltava:
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): 8 vaihetta
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): ultraäänikaiuttimet L298N DC-naarasadapterin virtalähde urospuolisella dc-nastalla ja analogiset portit koodin muuntamiseksi (C ++)
LED vilkkuu Raspberry Pi: n kanssa GPIO -nastojen käyttäminen Raspberry Pi: ssä: 4 vaihetta
LED vilkkuu Raspberry Pi: n kanssa GPIO -nastojen käyttäminen Raspberry Pi: ssä: Hei kaverit tässä ohjeessa opimme käyttämään Raspberry pi: n GPIO: ta. Jos olet koskaan käyttänyt Arduinoa, luultavasti tiedät, että voimme liittää LED -kytkimen jne. Sen nastoihin ja saada sen toimimaan. anna LED -valon vilkkua tai syötä kytkintä, joten
Raspbianin asentaminen Raspberry Pi 3 B: hen ilman HDMI: tä - Raspberry Pi 3B: n käytön aloittaminen - Raspberry Pi: n asentaminen 3: 6 vaihetta
Raspbianin asentaminen Raspberry Pi 3 B: hen ilman HDMI: tä | Raspberry Pi 3B: n käytön aloittaminen | Raspberry Pi 3: n asentaminen: Kuten jotkut teistä tietävät, Raspberry Pi -tietokoneet ovat aivan mahtavia ja saat koko tietokoneen vain yhdelle pienelle levylle. Raspberry Pi 3 Model B: ssä on neliytiminen 64-bittinen ARM Cortex A53 kellotaajuus 1,2 GHz. Tämä tekee Pi 3: sta noin 50
Raspberry Pi PhotoBooth: HTML5 ja NodeJS: 4 vaihetta
Raspberry Pi PhotoBooth: HTML5 & NodeJS: HTML5- ja NodeJS -valokuvat, joissa on live -esikatselu ja mukautetut reunat. Tämä projekti alkoi tyttäreni koulutanssille. Halusin jotain hauskaa hänelle ja hänen ystävilleen muistamaan tapahtuman (joka oli viimeinen kerta, kun he
DIY Photobooth: 7 vaihetta (kuvilla)
DIY Photobooth: Tämä on opetusohjelma siitä, miten voit rakentaa oman valokuvakopin aivan kuten perinteiset, joita näkee ostoskeskuksissa, huvipuistoissa ja ostoskeskuksissa ympäri maailmaa. Tämä koppi on kuitenkin täysin digitaalinen ja se on paljon halvempaa/helpompaa tehdä kotona. Minä kirjotin