Orodha ya maudhui:

Raspberry Pi Photobooth: Hatua 5
Raspberry Pi Photobooth: Hatua 5

Video: Raspberry Pi Photobooth: Hatua 5

Video: Raspberry Pi Photobooth: Hatua 5
Video: MSC Meraviglia Full Ship Tour Tips Tricks & Review Award Winning Cruise Ship Vista Project 2024, Desemba
Anonim
Picha ya Raspberry Pi
Picha ya Raspberry Pi

Kusudi:

  • Jifunze jinsi ya kuweka nambari na kusanikisha Kamera ya Pi
  • Kutumia fafanua na ikiwa ni taarifa katika usimbuaji
  • Kujifunza kutumia teknolojia mpya kama RGB za LED

Hatua ya 1: Nini Utahitaji

Nini Utahitaji
Nini Utahitaji
Nini Utahitaji
Nini Utahitaji
Nini Utahitaji
Nini Utahitaji
  • 1 Raspberry Pi 3
  • Bodi ya mkate
  • Wanarukaji
  • 1 Mpingaji anayetegemea Mwanga
  • 1 Mtunzaji
  • 1 Kitufe cha Bonyeza
  • 6 220 Ohm Resistors
  • 2 RGB LEDs
  • 1 Kamera ya Raspberry Pi

Hatua ya 2: Kuunganisha Moduli ya Kamera

Kuunganisha Moduli ya Kamera
Kuunganisha Moduli ya Kamera

Kwanza kabisa, na Pi ikiwa imezimwa, utahitaji kuunganisha Moduli ya Kamera kwenye bandari ya kamera ya Raspberry Pi, kisha uanzishe Pi na uhakikishe kuwa programu imewezeshwa.

  1. Pata bandari ya kamera ambayo iko kati ya HDMI na 3.5mm bandari
  2. Vuta kipande cha picha ya kamera na kingo za plastiki hadi kipande cha picha kiwe sawa
  3. Sasa ingiza kebo ya kamera na bluu ikiangalia bandari ya 3.5mm

Hatua ya 3: Kuweka Kamera

Kuweka Kamera
Kuweka Kamera
Kuweka Kamera
Kuweka Kamera

Kufungua zana ya Usanidi wa Raspberry Pi kutoka kwenye menyu kuu na uzima na uwezesha miingiliano yote hapo juu

Kutoka kwenye menyu kuu fungua Kituo na uandike katika mistari ifuatayo ya nambari:

Sudo Raspi-config

Sasa kutoka hapa tumia vitufe vyako vya mshale kufanya kazi kupitia mfumo na bonyeza kitufe cha uunganisho wa Pembeni na kutoka kwa kubofya kwenye Kamera ya P1 na uwezeshe kamera, kisha uchague kumaliza. Kurudi kwa aina ya wastaafu katika mistari ifuatayo ya nambari:

bomba kufunga picamera

au Sudo pip sakinisha Picamera

Hatua ya 4: Kupima Moduli ya Kamera

Kupima Moduli ya Kamera
Kupima Moduli ya Kamera

Kutoka hapa tunaweza kujaribu ikiwa kamera inafanya kazi au la kwa sababu tuna programu na vifaa vyote vimewezeshwa.

Fungua Python 3 kutoka kwenye menyu

Kutoka hapo fungua faili mpya kutoka kwenye ganda na uihifadhi cameratest.py.

Ingiza nambari ifuatayo:

kutoka kwa picha ya kuagiza kamera ya PiCamera imesimamishwa kutoka kwa amri ya kusakinisha kamera ya pi kutoka kwa wakati wa kuagiza usingizi

mwonekano wa kamera (mwanzo_preview () # inaanzisha kamera na inakuonyesha jinsi pato la kamera linavyoonekana

lala (10) #inaacha mwoneko awali kwa sekunde 10

kamera.acha_preview () # mwishowe huacha hakikisho

Tumia nambari kwa F5

Ukipokea kosa hili wakati wa kutumia nambari:

(mmal: mmal_vc_component_create: imeshindwa kuunda sehemu 'vc.ril.camera' (1: ENOMEM)

mmal: mmal_component_create_core: haikuweza kuunda sehemu 'vc.ril.camera' (1) Traceback (simu ya hivi karibuni mwisho): Faili "", laini 1, katika Faili "/ usr/lib/python2.7/dist-packages/picamera /camera.py ", mstari wa 257, ndani ya _init_ mwenyewe._init_camera () Faili" / usr/lib/python2.7/dist-packages/picamera/camera.py ", mstari wa 288, katika kiambishi cha _init_camera =" Imeshindwa kuunda kamera sehemu ") Faili" / usr / lib / python2.7/dist-packages/picamera/exc.py ", mstari wa 112, katika mmal_check kuongeza PiCameraMMALError (hadhi, kiambishi awali) picamera.exc. PiCameraMMALError: Imeshindwa kuunda kipengee cha kamera: Nje ya kumbukumbu)

Tafadhali nenda kwenye usanidi wa Raspberry Pi nenda chini ya safu ya utendaji na uongeze kumbukumbu yako ya GPU hadi kosa litakapokwenda (lazima uwashe upya).

Sasa ili kuunda picha ambayo itahifadhi kwenye desktop tutatumia nambari ifuatayo:

kutoka kwa picha ya kuagiza kamera ya PiCamera #Imoduli iliyoingizwa iliyoundwa kutoka kwa bomba la kusakinisha pi kamera kutoka wakati wa kuagiza kulala #Iliingizwa kulala ili kuhakikisha kuwa kamera yetu inakaa

kamera = PiCamera () #Setup kwa kamera

Kamera. anza hakikisho () #Aanzisha hakikisho la kulala

camera.capture ('/ home / pi / Desktop / image.jpg') # Kutoka kwa

kamera.acha_preview () # Acha hakikisho

Hatua ya 5: Kuunda Mzunguko na Msimbo

Kuunda Mzunguko na Msimbo!
Kuunda Mzunguko na Msimbo!
Kuunda Mzunguko na Msimbo!
Kuunda Mzunguko na Msimbo!
Kuunda Mzunguko na Msimbo!
Kuunda Mzunguko na Msimbo!

Kama inavyoonekana hapo juu kutoka kwa michoro za mzunguko tunahitaji kusanidi kitufe, LDR, na mwishowe RGB mbili za RGB. Kwanza tutaanzisha kitufe upande wa kushoto chini ya ubao wa mkate. Wakati wa usanidi wako wa kitufe tutatumia njia za reli za kawaida ikimaanisha kwamba tutaziba 3.3V yetu kwenye chanya na uwanja wa hasi. Baada ya kumaliza usanidi wa mzunguko kwa kitufe tu.

Tutajaribu mzunguko wetu ili tuone ikiwa tunaweza kuifanya ili ikiwa kitufe kimesisitizwa tugeuze mwongozo kwa kutumia nambari ifuatayo:

Modules # ZilizosafirishwaKutoka kwa kifungo cha kuagiza gpiozero kutoka kwa picha ya kuingiza PiCamera kutoka wakati wa kuagiza usingizi

#Sanidi

Kamera = PiCamera () Kitufe = Kitufe (22)

# Picha kuchukua kazi, nimeamua kuiweka katika kazi ya kufafanua kwani inatusaidia kusafisha nambari kuu

def photocap ():

Uhakiki wa kamera.

lala (5) Camera.capture ('/ home / pi / Desktop / image.jpg') chapa ("Picha ilipigwa") Camera.stop_preview ()

Nambari kuu ya #:

wakati Kweli: ikiwa Button.is_pressed: print ("Button was pressed") photocap ()

# Kwa nini hii inafanya kazi: Nambari kuu inafanya kazi kama yote tunayofanya ni kutumia amri ikiwa kitufe. Kimechapishwa kwa taarifa ya kweli kwa muda kwa hivyo inasasisha kila wakati kitufe kinapobanwa kuchukua picha

Sasa tutaanzisha 2 RGB za LED hadi juu ya mzunguko na kuwatenganisha katikati ya ubao wa mkate na tengeneze ulinganifu. Ikiwa huna vipinga 220 ohm kwa mradi huu unaweza kuziweka sawa kulingana na upinzani wako kwa vipinga ulivyonavyo. Pini ya pili ya pini 4 ya RGB LED (ndefu zaidi inapaswa kushikamana na ardhi kupitia reli. Pini zingine zinapaswa kushikamana na pini zao za GPIO., Pini ya nne = bluu).

Tutajaribu moja ya LED zetu za RGB kwenye mzunguko wa kitufe na nambari hapa chini:

Modules # ZilizosafirishwaKutoka kwa kitufe cha kuagiza gpiozero kutoka kwa kamera ya kuagiza kamera

kutoka gpiozero kuagiza RGBLED

kutoka wakati kuagiza kuagiza

#Sanidi

Kamera = PiCamera () Kitufe = Kitufe (22)

Imewekwa wakati = RGBLED (nyekundu = 21, kijani = 20, bluu = 16)

# Picha inachukua kazi na RGB LED, nimeamua kuiweka katika kazi ya kufafanua kwani inatusaidia kusafisha nambari kuu

def photocap (): Camera.start_preview () kulala (4)

rangi ya muda (1, 0, 0)

kulala (2)

rangi ya muda (0, 1, 0)

lala (1)

Kamera.capture ('/ home / pi / Desktop / image.jpg') chapa ("Picha ilipigwa") Camera.stop_preview ()

Nambari kuu ya #:

wakati Kweli:

ikiwa Kitufe kimesisitizwa:

chapa ("Kitufe kilibanwa") picha ()

#Kwa nini hii inafanya kazi: Sababu kwa nini nambari hii inafanya kazi ni kwa sababu sasa tumepata RGBLED kufanya kazi kama kipima muda cha wakati picha itapigwa

Sasa weka mpinzani anayetegemea Mwanga upande wa chini wa kulia wa ubao wa mkate ukitumia mchoro hadi juu na reli za kawaida zilizojadiliwa hapo awali. Kumbuka miguu yote mirefu ya LDR na kiunga kinapaswa kushikamana na pini ya GPIO.

Baada ya kuunganisha LDR tutatumia nambari ifuatayo:

#Modyuli Zilizohamishwa

kutoka kwa kifungo cha kuagiza gpiozero

kutoka kwa picha ya kuagiza PiCamera kutoka gpiozero kuagiza RGBLED

kutoka gpiozero kuagiza LightSensor

kutoka wakati kuagiza kuagiza

#Sanidi

Kamera = PiCamera () Kitufe = Kitufe (22) Imewekwa Wakati = RGBLED (nyekundu = 21, kijani = 20, bluu = 16)

LightSensor = LightSensor (23)

# Picha inachukua kazi na RGB LED, nimeamua kuiweka katika kazi ya kufafanua kwani inatusaidia kusafisha nambari kuu

def photocap (): Camera.start_preview () kulala (4) kwa wakati uliopangwa. rangi (1, 0, 0) kulala (2) wakati uliopangwa. rangi (0, 1, 0) kulala (1) Kamera.capture ('/ home / pi / Desktop / image-j.webp

Nambari kuu ya #:

wakati Kweli:

ikiwa Button.is_pressed: print ("Button was pressed") fotokopi ()

ikiwa Kitufe kimesisitizwa na Lightsensor. wakati_ giza:

chapa ("Kitufe kilibanwa")

chapisha ("Ni giza")

picha ()

#Kwa nini hii inafanya kazi: Njia ambayo nimeongeza sensa ya Nuru kwenye nambari yangu ni kupitia nyingine ikiwa taarifa ambayo ina kazi ya nje ya sensa ya mwanga. Wakati giza linatuweka vizuri kwa hatua yetu inayofuata.

Sasa hatua ya mwisho ya kumaliza mradi huu itakuwa kuamsha ulinganifu mwingine wa RGBLED hadi nyingine kufanya kazi kama taa, Nambari ya mwisho:

kutoka kwa kifungo cha kuagiza gpiozero

kutoka kwa picha ya kuagiza PiCamera

kutoka gpiozero kuagiza RGBLED

kutoka gpiozero kuagiza LightSensor

kutoka wakati kuagiza kuagiza

#Sanidi

Kamera = PiCamera ()

Kitufe = Kifungo (22)

Imewekwa wakati = RGBLED (nyekundu = 21, kijani = 20, bluu = 16)

FlashLED = RGBLED (nyekundu = 19, kijani = 13, bluu = 6)

LightSensor = LightSensor (23)

# Picha inayofanya kazi na RGB LED, nimeamua kuiweka katika kazi ya kufafanua kwani inatusaidia kusafisha nambari kuu ya def photocap (): Camera.start_preview () kulala (4) iliyopangwa wakati. Rangi (1, 0, 0) kulala (2) kwa wakati uliopangwa. rangi (0, 1, 0) kulala (1) Camera.capture ('/ home / pi / Desktop / image.jpg') chapa ("Picha ilipigwa") Camera.stop_preview () # Nambari kuu: wakati ni Kweli: ikiwa Button.is_press:

chapa ("Kitufe kilibanwa")

picha ()

ikiwa Kitufe kimesisitizwa na Lightsensor. wakati_ giza:

chapa ("Kitufe kilibanwa") chapisha ("Ni giza")

Rangi ya FlashLED (1, 1, 1)

picha ()

# Kwa nini hii inafanya kazi: Njia ambayo nimeongeza Tochi yangu ni kwa kutumia RGB imesababisha kutoa rangi nyeupe ambayo ni 1, 1, 1 na inafanya tu ikiwa taarifa hiyo ni kweli.

Ilipendekeza: