Daftar Isi:

Raspberry Pi Photobooth: 5 Langkah
Raspberry Pi Photobooth: 5 Langkah

Video: Raspberry Pi Photobooth: 5 Langkah

Video: Raspberry Pi Photobooth: 5 Langkah
Video: Raspberry Pi PhotoBooth with Printer Tutorial 2024, November
Anonim
Photobooth Raspberry Pi
Photobooth Raspberry Pi

Tujuan:

  • Pelajari cara membuat kode dan memasang Pi Camera
  • Menggunakan pernyataan define dan if dalam pengkodean
  • Belajar menggunakan teknologi baru seperti LED RGB

Langkah 1: Apa yang Anda Butuhkan

Apa yang Anda Butuhkan
Apa yang Anda Butuhkan
Apa yang Anda Butuhkan
Apa yang Anda Butuhkan
Apa yang Anda Butuhkan
Apa yang Anda Butuhkan
  • 1 Raspberry Pi 3
  • Papan tempat memotong roti
  • jumper
  • 1 Resistor Tergantung Cahaya
  • 1 Kapasitor
  • 1 Tombol Tekan
  • 6 220 Ohm Resistor
  • 2 LED RGB
  • 1 Kamera Raspberry Pi

Langkah 2: Menghubungkan Modul Kamera

Menghubungkan Modul Kamera
Menghubungkan Modul Kamera

Pertama-tama, dengan Pi dimatikan, Anda harus menghubungkan Modul Kamera ke port kamera Raspberry Pi, kemudian memulai Pi dan memastikan perangkat lunak diaktifkan.

  1. Temukan port kamera yang berada di antara port HDMI dan 3.5mm
  2. Tarik klip kamera di tepi plastik hingga klip diagonal
  3. Sekarang masukkan kabel kamera dengan warna biru menghadap ke port 3.5mm

Langkah 3: Menyiapkan Kamera

Menyiapkan Kamera
Menyiapkan Kamera
Menyiapkan Kamera
Menyiapkan Kamera

Buka alat Konfigurasi Raspberry Pi dari menu utama dan nonaktifkan dan aktifkan semua antarmuka di atas

Dari menu Utama buka Terminal dan ketik baris kode berikut:

Sudo Raspi-config

Sekarang dari sini gunakan tombol panah Anda untuk beroperasi melalui sistem dan klik opsi Koneksi periferal dan dari kliknya pada Kamera P1 dan aktifkan kamera, lalu pilih selesai. Kembali ke tipe terminal di baris kode berikut:

pip menginstal picamera

atau Sudo pip instal Picamera

Langkah 4: Menguji Modul Kamera

Menguji Modul Kamera
Menguji Modul Kamera

Dari sini kita dapat menguji apakah kamera berfungsi atau tidak karena kita telah mengaktifkan semua perangkat lunak dan perangkat keras.

Buka Python 3 dari menu

Dari sana buka file baru dari shell dan simpan sebagai cameratest.py.

Masukkan kode berikut:

dari picamera import PiCamera #modul yang diimpor dibuat dari perintah pip install pi camerafrom time import sleep #imported sleep untuk memastikan bahwa kamera kita tetap berada di kamera = PiCamera() #Setup untuk kamera

camera.start_preview()#memulai kamera dan menunjukkan seperti apa tampilan keluaran kamera

sleep(10)#membiarkan pratinjau selama 10 detik

camera.stop_preview()#akhirnya keluar dari pratinjau

Jalankan kode dengan F5

Jika Anda menerima kesalahan ini saat menjalankan kode:

(mmal: mmal_vc_component_create: gagal membuat komponen 'vc.ril.camera' (1:ENOMEM)

mmal: mmal_component_create_core: tidak dapat membuat komponen 'vc.ril.camera' (1) Traceback (panggilan terakhir terakhir): File "", baris 1, di File "/usr/lib/python2.7/dist-packages/picamera /camera.py", baris 257, di _init_ self._init_camera() File "/usr/lib/python2.7/dist-packages/picamera/camera.py", baris 288, di _init_camera prefix="Gagal membuat kamera component") File "/usr/lib/python2.7/dist-packages/picamera/exc.py", baris 112, di mmal_check naikkan PiCameraMMArror(status, prefix) picamera.exc. PiCameraMMALError: Gagal membuat komponen kamera: Keluar dari memori)

Silahkan masuk ke konfigurasi Raspberry Pi masuk ke kolom performance dan boost memori GPU anda sampai error hilang (harus reboot).

Sekarang untuk membuat foto yang akan disimpan ke desktop kita akan menggunakan kode berikut:

dari picamera import PiCamera #Modul impor dibuat dari pip install pi camera commandfrom time import sleep #Imported sleep untuk memastikan kamera kita tetap menyala

camera = PiCamera() #Setup untuk kamera

camera.start_preview() #Memulai previewsleep(5)#Membiarkan pratinjau selama 5 detik

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

camera.stop_preview()#Menghentikan Pratinjau

Langkah 5: Membuat Sirkuit Dengan Kode

Membuat Sirkuit Dengan Kode!
Membuat Sirkuit Dengan Kode!
Membuat Sirkuit Dengan Kode!
Membuat Sirkuit Dengan Kode!
Membuat Sirkuit Dengan Kode!
Membuat Sirkuit Dengan Kode!

Seperti yang terlihat di atas dari diagram rangkaian, kita perlu mengatur tombol, LDR, dan akhirnya dua LED RGB. Pertama kita akan mengatur tombol di sisi kiri bawah papan tempat memotong roti. Selama pengaturan Anda untuk tombol, kami akan menggunakan jalur kereta api umum yang berarti bahwa kami akan mencolokkan 3.3V kami pada positif dan ground untuk negatif. Setelah Anda menyelesaikan pengaturan sirkuit untuk tombol saja.

Kami akan menguji sirkuit kami untuk melihat apakah kami dapat membuatnya sehingga jika tombol ditekan kami menyalakan led menggunakan kode berikut:

#Modul yang Diimpor dari gpiozero Tombol impor dari picamera impor PiCamera dari waktu impor tidur

#Mempersiapkan

Kamera = PiCamera() Tombol = Tombol (22)

#Fungsi pengambilan foto, saya telah memutuskan untuk memasukkannya ke dalam fungsi define karena membantu kita membersihkan kode utama

def fotocap():

Kamera.start_preview()

sleep(5) Camera.capture('/home/pi/Desktop/image.jpg') print ("Foto diambil") Camera.stop_preview()

#Kode utama:

while True: if Button.is_pressed: print ("Tombol ditekan") photocap()

#Mengapa ini berhasil: Kode utama berfungsi karena yang kami lakukan hanyalah menggunakan perintah if button.is_pressed dalam pernyataan while true sehingga terus diperbarui ketika tombol ditekan untuk mengambil foto

Sekarang kita akan mengatur 2 LED RGB sampai ke bagian atas sirkuit dan memisahkannya di tengah papan tempat memotong roti dan membuat simetris. Jika Anda tidak memiliki resistor 220 ohm untuk proyek ini, Anda dapat mengaturnya secara paralel tergantung pada hambatan Anda untuk resistor yang Anda miliki. Pin kedua dari 4 pin RGB LED (yang terpanjang harus dihubungkan ke ground melalui rel kereta api. Semua pin lainnya harus terhubung ke pin GPIO mereka sendiri. (Pin pertama = merah, Pin kedua = ground, Pin Ketiga = hijau, Pin keempat = biru).

Kami akan menguji salah satu LED RGB kami di rangkaian tombol kami dengan kode di bawah ini:

#Modul Impordari gpiozero Tombol impor dari picamera impor PiCamera

dari gpiozero impor RGBLED

dari waktu impor tidur

#Mempersiapkan

Kamera = PiCamera() Tombol = Tombol (22)

TimedLED=RGBLED(merah=21, hijau=20, biru=16)

#Fungsi pengambilan foto dengan LED RGB, saya telah memutuskan untuk memasukkannya ke dalam fungsi definisi karena membantu kita membersihkan kode utama

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

berjangka waktu.warna(1, 0, 0)

tidur (2)

berjangka waktu.warna(0, 1, 0)

tidur(1)

Camera.capture('/home/pi/Desktop/image.jpg') print ("Foto diambil") Camera.stop_preview()

#Kode utama:

sementara Benar:

jika Button.is_pressed:

print ("Tombol ditekan") photocap()

#Mengapa ini berhasil: Alasan mengapa kode ini berfungsi adalah karena sekarang kami membuat RGBLED berfungsi sebagai pengatur waktu saat foto akan diambil

Sekarang atur resistor Light Dependent di sisi kanan bawah papan tempat memotong roti menggunakan diagram di bagian atas dan jalur kereta api umum yang dibahas sebelumnya. Ingat kedua kaki panjang LDR dan kapasitor harus disambungkan ke pin GPIO.

Setelah kita menghubungkan LDR kita akan menggunakan kode berikut:

#Modul Impor

dari Tombol impor gpiozero

dari picamera impor PiCamera dari gpiozero impor RGBLED

dari gpiozero impor LightSensor

dari waktu impor tidur

#Mempersiapkan

Kamera = PiCamera() Tombol = Tombol(22) TimedLED=RGBLED(merah=21, hijau=20, biru=16)

LightSensor=Sensor Cahaya(23)

#Fungsi pengambilan foto dengan LED RGB, saya telah memutuskan untuk memasukkannya ke dalam fungsi definisi karena membantu kita membersihkan kode utama

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 ("Foto diambil") Camera.stop_preview()

#Kode utama:

sementara Benar:

jika Button.is_pressed: print ("Tombol ditekan") photocap()

jika Button.is_pressed dan Lightsensor.when_dark:

print ("Tombol Ditekan")

print("Gelap")

tutup foto()

#Mengapa ini berhasil: Cara saya menambahkan sensor Cahaya ke kode saya adalah melalui pernyataan if lain yang berisi fungsi impor sensor cahaya.saat gelap mengatur kami dengan sempurna untuk langkah selanjutnya

Sekarang langkah terakhir melalui proyek ini adalah mengaktifkan simetris RGBLED lainnya untuk bekerja sebagai lampu flash, Kode terakhir:

dari Tombol impor gpiozero

dari picamera impor PiCamera

dari gpiozero impor RGBLED

dari gpiozero impor LightSensor

dari waktu impor tidur

#Mempersiapkan

Kamera = PiCamera()

Tombol = Tombol (22)

TimedLED=RGBLED(merah=21, hijau=20, biru=16)

FlashLED=RGBLED(merah=19, hijau=13, biru=6)

LightSensor=Sensor Cahaya(23)

#Fungsi pengambilan foto dengan LED RGB, saya telah memutuskan untuk memasukkannya ke dalam fungsi define karena membantu kita membersihkan kode utama 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 ("Foto diambil") Camera.stop_preview() # Kode utama: while True: if Button.is_pressed:

print("Tombol ditekan")

tutup foto()

jika Button.is_pressed dan Lightsensor.when_dark:

print("Tombol Ditekan") print("Gelap")

FlashLED.warna(1, 1, 1)

tutup foto()

#Mengapa ini berhasil: Cara saya menambahkan Senter saya adalah dengan menggunakan LED RGB untuk menghasilkan warna putih yaitu 1, 1, 1 dan hanya berfungsi jika pernyataan if benar.

Direkomendasikan: