Talaan ng mga Nilalaman:
- Hakbang 1: Ano ang Kakailanganin Mo
- Hakbang 2: Pagkonekta sa Module ng Camera
- Hakbang 3: Pag-set up ng Camera
- Hakbang 4: Pagsubok sa Modyul ng Camera
- Hakbang 5: Paglikha ng Circuit With Code
Video: Raspberry Pi Photobooth: 5 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Ang Pakay:
- Alamin kung paano mag-code at mag-install ng isang Pi Camera
- Paggamit ng tukuyin at kung mga pahayag sa coding
- Pag-aaral na gumamit ng bagong teknolohiya tulad ng RGB LEDs
Hakbang 1: Ano ang Kakailanganin Mo
- 1 Raspberry Pi 3
- Breadboard
- Mga jumper
- 1 Banayad na Nakasalalay na Resistor
- 1 Kapasitor
- 1 Push Button
- 6 220 Ohm Resistors
- 2 RGB LEDs
- 1 Raspberry Pi Camera
Hakbang 2: Pagkonekta sa Module ng Camera
Una sa lahat, sa naka-off ang Pi, kakailanganin mong ikonekta ang Module ng Camera sa port ng camera ng Raspberry Pi, pagkatapos ay simulan ang Pi at tiyaking pinagana ang software.
- Hanapin ang port ng camera na nasa pagitan ng HDMI at 3.5mm port
- Hilahin ang clip ng camera sa pamamagitan ng mga plastik na gilid hanggang sa diagonal ang clip
- Ipasok ngayon ang camera cable na may asul na nakaharap sa 3.5mm port
Hakbang 3: Pag-set up ng Camera
Ang pagbubukas ng tool na Pag-configure ng Raspberry Pi mula sa pangunahing menu at huwag paganahin at paganahin ang lahat ng mga interface sa itaas
Mula sa Pangunahing menu buksan ang Terminal at i-type ang mga sumusunod na linya ng code:
Sudo Raspi-config
Mula dito gamitin ang iyong mga arrow key upang mapatakbo sa pamamagitan ng system at mag-click sa Peripheral na pagpipilian ng koneksyon at mula sa kanilang pag-click sa P1 Camera at paganahin ang camera, pagkatapos ay piliin ang tapusin. Bumabalik sa uri ng terminal sa mga sumusunod na linya ng code:
pip install picamera
o Sudo pip i-install ang Picamera
Hakbang 4: Pagsubok sa Modyul ng Camera
Mula dito maaari naming subukan kung gumagana ang camera o hindi dahil mayroon kaming lahat ng software at hardware na pinagana.
Buksan ang Python 3 mula sa menu
Mula doon buksan ang isang bagong file mula sa shell at i-save ito ng cameratest.py.
Ipasok ang sumusunod na code:
mula sa picamera import PiCamera #imported module na nilikha mula sa pip install pi camera command mula sa oras na pag-import ng pagtulog #import na pagtulog upang matiyak na ang aming camera ay mananatili sa camera = PiCamera () #Setup para sa camera
camera.start_preview () # nagsisimula ang camera at ipinapakita sa iyo kung ano ang hitsura ng output ng camera
tulog (10) # umalis sa preview sa loob ng 10 segundo
camera.stop_preview () # sa wakas ay umalis sa preview
Patakbuhin ang code sa pamamagitan ng F5
Kung natanggap mo ang error na ito kapag pinapatakbo ang code:
(mmal: mmal_vc_component_create: bigong lumikha ng sangkap na 'vc.ril.camera' (1: ENOMEM)
mmal: mmal_component_create_core: hindi makalikha ng sangkap na 'vc.ril.camera' (1) Traceback (pinakahuling huling tawag): File "", linya 1, sa File "/usr/lib/python2.7/dist-packages/picamera /camera.py ", linya 257, sa _init_ self._init_camera () File" /usr/lib/python2.7/dist-packages/picamera/camera.py ", linya 288, sa _init_camera prefix =" Nabigong lumikha ng camera sangkap na ") File" /usr/lib/python2.7/dist-packages/picamera/exc.py ", linya 112, sa mmal_check itaas ang PiCameraMMALError (katayuan, unlapi) picamera.exc. PiCameraMMALError: Nabigong lumikha ng bahagi ng camera: Lumabas ng memorya)
Mangyaring pumunta sa pagsasaayos ng Raspberry Pi pumunta sa ilalim ng haligi ng pagganap at palakasin ang iyong memorya ng GPU hanggang nawala ang error (kailangang mag-reboot).
Ngayon upang lumikha ng isang larawan na makatipid sa desktop gagamitin namin ang sumusunod na code:
mula sa picamera import PiCamera #Import na module na nilikha mula sa pip install pi camera command mula sa oras na pag-import ng pagtulog #I-import na pagtulog upang matiyak na mananatili ang aming camera
camera = PiCamera () #Setup para sa camera
camera.start_preview () #Simulan ang previews Sleep (5) #Ngaiwan ang preview sa loob ng 5 segundo
camera.capture ('/ home / pi / Desktop / image.jpg') # Mula sa
camera.stop_preview () # Ititigil ang Pag-preview
Hakbang 5: Paglikha ng Circuit With Code
Tulad ng nakikita sa itaas mula sa mga circuit diagram kailangan naming mag-setup ng isang pindutan, isang LDR, at sa wakas dalawang RGB LEDs. Una naming i-setup ang pindutan sa ibabang kaliwang bahagi ng breadboard. Sa panahon ng iyong pag-set up para sa pindutan gagamitin namin ang mga karaniwang linya ng riles na nangangahulugang mai-plug namin ang aming 3.3V sa positibo at sa lupa para sa negatibo. Matapos mong matapos ang pag-setup ng circuit para sa pindutan lamang.
Susubukan namin ang aming circuit upang makita kung magagawa namin ito upang kung napindot ang pindutan ay pinapagana namin ang paggamit ng sumusunod na code:
# Na-import na Mga Modyul mula sa gpiozero na pindutan ng pag-import mula sa picamera import na PiCamera mula sa oras na pag-import ng pagtulog
#Setup
Camera = PiCamera () Button = Button (22)
# Pag-andar ng pagkuha ng larawan, napagpasyahan kong ilagay ito sa isang tukuyin na pagpapaandar dahil nakakatulong ito sa amin na linisin ang pangunahing code
def photocap ():
Camera.start_preview ()
pagtulog (5) Camera.capture ('/ home / pi / Desktop / image.jpg') print ("Kuha ang larawan") Camera.stop_preview ()
# Pangunahing code:
habang Totoo: kung ang Button.is_pressed: print ("Ang pindutan ay pinindot") photocap ()
#Bakit ito gumagana: Ang pangunahing code ay gumagana tulad ng lahat ng ginagawa namin ay ang paggamit ng utos kung ang pindutan ay nai-compress nang ilang sandali totoong pahayag kaya't patuloy itong ina-update kapag pinindot ang pindutan upang kunan ang larawan
Ngayon ay magse-set up kami ng 2 RGB LEDs hanggang sa tuktok ng circuit at paghiwalayin ang mga ito sa gitna ng breadboard at gawin ang simetriko. Kung wala kang 220 ohm resistors para sa proyektong ito maaari mong i-set up ang mga ito nang kahanay depende sa iyong paglaban para sa mga resistors na mayroon ka. Ang pangalawang pin ng 4 pin RGB LED (ang pinakamahaba ay dapat na konektado sa lupa sa pamamagitan ng riles. Ang iba pang mga pin ay dapat na konektado sa kanilang sariling mga GPIO pin. (Unang pin = pula, Pangalawang pin = lupa, Ikatlong Pin = berde, Pang-apat na pin = asul).
Susubukan namin ang isa sa aming mga RGB LED sa aming button circuit na may code sa ibaba:
# Na-import na Mga Modyul mula sa gpiozero na import na Button mula sa pag-import ng picamera na PiCamera
mula sa gpiozero import RGBLED
mula sa oras mag-import ng pagtulog
#Setup
Camera = PiCamera () Button = Button (22)
TimedLED = RGBLED (pula = 21, berde = 20, asul = 16)
# Pag-andar ng pagkuha ng larawan sa RGB LED, napagpasyahan kong ilagay ito sa isang tukuyin na pagpapaandar dahil nakakatulong ito sa amin na linisin ang pangunahing code
def photocap (): Camera.start_preview () pagtulog (4)
nag-time.color (1, 0, 0)
tulog (2)
nag-time.color (0, 1, 0)
tulog (1)
Camera.capture ('/ home / pi / Desktop / image.jpg') print ("Kuha ang larawan") Camera.stop_preview ()
# Pangunahing code:
habang Totoo:
kung ang Button.is_pressed:
print ("pinindot ang pindutan") photocap ()
#Bakit ito gumagana: Ang dahilan kung bakit gumagana ang code na ito ay dahil nakuha namin ang RGBLED upang gumana bilang isang timer kung kailan kukuha ng larawan
Ngayon ay itatakda ang Light Dependent resistor sa ibabang kanang bahagi ng breadboard gamit ang diagram hanggang sa itaas at ang mga karaniwang riles na tinalakay dati. Alalahanin ang parehong mga mahabang binti ng LDR at ang capicitator ay dapat na konektado sa GPIO pin.
Matapos naming ikonekta ang LDR gagamitin namin ang sumusunod na code:
#Mga Na-import na Modyul
mula sa gpiozero import Button
mula sa picamera import PiCamera mula sa gpiozero import RGBLED
mula sa gpiozero import LightSensor
mula sa oras mag-import ng pagtulog
#Setup
Camera = PiCamera () Button = Button (22) TimedLED = RGBLED (pula = 21, berde = 20, asul = 16)
LightSensor = LightSensor (23)
# Pag-andar ng pagkuha ng larawan sa RGB LED, napagpasyahan kong ilagay ito sa isang tukuyin na pagpapaandar dahil nakakatulong ito sa amin na linisin ang pangunahing code
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-j.webp
# Pangunahing code:
habang Totoo:
kung Button.is_pressed: print ("Ang pindutan ay pinindot") photocap ()
kung ang Button.is_pressed at Lightsensor.when_dark:
i-print ("Pinindot ang Button")
i-print ("Madilim")
photocap ()
#Bakit ito gumagana: Ang paraan na naidagdag ko ang Light sensor sa aking code ay sa pamamagitan ng isa pa kung ang pahayag na naglalaman ng na-import na pag-andar ng light sensor. Kapag maitim na naitakda kami ng perpekto para sa aming susunod na hakbang
Ngayon ang pangwakas na hakbang sa pamamagitan ng proyektong ito ay upang buhayin ang iba pang RGBLED simetriko sa iba pa upang gumana bilang isang flash light, Ang pangwakas na code:
mula sa gpiozero import Button
mula sa picamera import PiCamera
mula sa gpiozero import RGBLED
mula sa gpiozero import LightSensor
mula sa oras mag-import ng pagtulog
#Setup
Camera = PiCamera ()
Button = Button (22)
TimedLED = RGBLED (pula = 21, berde = 20, asul = 16)
FlashLED = RGBLED (pula = 19, berde = 13, asul = 6)
LightSensor = LightSensor (23)
# Pag-andar ng pagkuha ng larawan sa RGB LED, napagpasyahan kong ilagay ito sa isang tinukoy na pagpapaandar dahil nakakatulong ito sa amin na linisin ang pangunahing code def photocap (): Camera.start_preview () pagtulog (4) nag-time.color (1, 0, 0) sleep (2) timedled.color (0, 1, 0) sleep (1) Camera.capture ('/ home / pi / Desktop / image.jpg') print ("Kuha ang larawan") Camera.stop_preview () # Pangunahing code: habang Tama: kung Button.is_pressed:
i-print ("pinindot ang pindutan")
photocap ()
kung ang Button.is_pressed at Lightsensor.when_dark:
print ("Button was Pressed") print ("Madilim")
FlashLED.kulay (1, 1, 1)
photocap ()
#Bakit ito gumagana: Ang paraan na naidagdag ko ang aking Flashlight ay sa pamamagitan ng paggamit ng RGB na humantong sa paglabas ng kulay puti na 1, 1, 1 at gagawin lamang ito kung totoo ang pahayag kung.
Inirerekumendang:
Pag-install ng Raspbian sa Raspberry Pi 3 B Nang Walang HDMI - Pagsisimula Sa Raspberry Pi 3B - Pag-set up ng Iyong Raspberry Pi 3: 6 Mga Hakbang
Pag-install ng Raspbian sa Raspberry Pi 3 B Nang Walang HDMI | Pagsisimula Sa Raspberry Pi 3B | Pagse-set up ng Iyong Raspberry Pi 3: Tulad ng ilan sa inyo na alam na ang mga computer ng Raspberry Pi ay lubos na kahanga-hanga at makukuha mo ang buong computer sa isang solong maliit na board. Nagtatampok ang Raspberry Pi 3 Model B ng isang quad-core 64-bit ARM Cortex A53 naorasan sa 1.2 GHz. Inilalagay nito ang Pi 3 na humigit-kumulang 50
Raspberry Pi PhotoBooth: HTML5 at NodeJS: 4 na Hakbang
Raspberry Pi PhotoBooth: HTML5 & NodeJS: Isang photobooth ng HTML5 at NodeJS na may live na preview at pasadyang mga hangganan. Nagsimula ang proyektong ito bilang isang bagay na itinayo ko para sa sayaw ng paaralan ng aking anak na babae. Gusto ko ng isang bagay na masaya para sa kanya at sa kanyang mga kaibigan na matandaan ang kaganapan (na kung saan ay ang huling oras na gagawin nila
Photobooth sa Kasal / Kaganapan: 6 na Hakbang (na may Mga Larawan)
Photobooth sa Kasal / Kaganapan: Kumusta kayong lahat, ikinasal ako noong nakaraang taon, nang hinahanap namin ang paghahanda ng D-araw, nagpunta kami sa maraming mga kombensyon sa kasal. Sa bawat kombensiyon ay may isang nangungupahan sa Photobooth, naisip ko na isang photobooth ay isang mahusay na idee para sa isang kasal, bawat bisita c
Automated Photobooth: 4 Hakbang (na may Mga Larawan)
Automated Photobooth: Ipapakita nito sa iyo kung paano gumawa ng isang automated photo booth gamit ang raspberry pi, isang sensor ng distansya ng ultrasonic, at ilang iba pang mga accessories. Nais kong gumawa ng isang proyekto na gumagamit ng parehong sopistikadong hardware at isang program na sopistikado. Nagsaliksik ako
DIY Photobooth: 7 Hakbang (na may Mga Larawan)
DIY Photobooth: Ito ay isang tutorial sa kung paano bumuo ng iyong sariling photobooth kagaya ng tradisyonal na nakikita sa mga mall, amusement parks, at shopping center sa buong mundo. Ang booth na ito gayunpaman ay ganap na digital at mas mura / mas madaling gawin sa bahay. I wr