Sensor Cahaya Raspberry Pi:Tutorial LDR Sederhana
Dalam tutorial sensor cahaya Raspberry Pi ini saya tunjukkan cara menghubungkan sensor resistor foto dengan benar ke pin GPIO. Terakhir saya tunjukkan bagaimana itu dapat digunakan dalam skrip python sederhana sehingga Anda dapat mengumpulkan dan menggunakan data darinya.
Ini adalah sensor lain yang akan saya pertimbangkan untuk digabungkan ke dalam proyek masa depan seperti jam alarm yang diaktifkan dengan cahaya.
Saya menjelaskan sedikit lebih jauh ke bawah masing-masing bagian yang akan saya gunakan di sirkuit ini. Pastikan untuk membacanya jika Anda memerlukan informasi lebih lanjut tentang ini. Penting untuk dicatat untuk tutorial ini saya hanya menggunakan sensor fotosel sederhana sementara ini sempurna untuk beberapa tugas yang mungkin tidak seakurat yang Anda inginkan.
Jika Anda ingin melihat secara visual langkah demi langkah tentang cara menyiapkan rangkaian &kode sensor cahaya, pastikan untuk melihat videonya tepat di bawah daftar peralatan.
Peralatan:
Anda akan memerlukan peralatan berikut untuk dapat menyelesaikan tutorial sensor cahaya Raspberry Pi ini. Anda dapat melakukannya tanpa peralatan papan tempat memotong roti, tetapi saya sangat menyarankan untuk berinvestasi di beberapa peralatan jika Anda berencana melakukan banyak pekerjaan sirkuit.
Direkomendasikan:
Raspberry Pi
8 GB SD Card atau Micro SD Card jika Anda menggunakan Raspberry Pi 2 atau B+
Kabel Ethernet atau dongle Wifi
Sensor cahaya (Sensor LDR)
1 1uF Kapasitor
Opsional:
Casing Raspberry Pi
Papan Ketik USB
Mouse USB
Kit Perincian GPIO
Papan tempat memotong roti
Kawat papan tempat memotong roti
Video
Video berisi hampir semua versi teks dari tutorial ini. Ini sempurna jika Anda lebih suka melihat sesuatu dilakukan secara visual. Anda juga akan melihat bagaimana kinerja sirkuit setelah Anda selesai.
Anda dapat menemukan petunjuk teks &informasi tepat di bawah video.
Sirkuit Sensor Cahaya Raspberry Pi
Sirkuit yang akan kita buat untuk tutorial ini sangat sederhana dan bagus untuk siapa saja yang baru memulai dengan sirkuit.
Resistor yang bergantung pada cahaya atau juga dikenal sebagai sensor LDR adalah peralatan terpenting di sirkuit kami (jelas). Tanpa itu kita tidak akan bisa mendeteksi apakah itu gelap atau terang. Dalam cahaya, sensor ini akan memiliki hambatan hanya beberapa ratus ohm sedangkan dalam gelap dapat memiliki hambatan beberapa megohm.
Kapasitor di sirkuit kami ada sehingga kami dapat mengukur resistansi sensor LDR. Kapasitor pada dasarnya bertindak seperti baterai yang mengisi daya saat menerima daya dan kemudian mengeluarkan daya saat tidak lagi menerima daya. Dengan menggunakan rangkaian ini dengan LDR, kita dapat mengetahui seberapa besar hambatan yang diberikan LDR, apakah itu terang atau gelap.
Untuk mendapatkan rangkaian sensor cahaya yang dibangun dengan benar ikuti langkah-langkah di bawah ini atau lihat diagram rangkaian tepat di bawah langkah-langkahnya. Dalam langkah-langkah berikut saya mengacu pada nomor fisik pin (urutan logis).
- Pertama sambungkan pin #1 (3v3) ke rel positif pada papan tempat memotong roti.
- Selanjutnya sambungkan pin #6 (ground) ke ground rail pada breadboard.
- Sekarang tempatkan sensor LDR ke board dan hubungkan kabel dari satu ujung ke rel positif.
- Di sisi lain dari sensor LDR, letakkan kabel yang mengarah kembali ke Raspberry Pi. Kaitkan ini ke pin #7.
- Akhirnya tempatkan kapasitor dari kabel ke rel negatif pada papan tempat memotong roti. Pastikan Anda memiliki pin negatif kapasitor di rel negatif.
Kami sekarang siap untuk pindah ke kode Python, jika Anda memiliki masalah dengan sirkuit, lihat diagram di bawah ini.
Kode
Kode untuk proyek ini cukup sederhana dan akan memberi tahu kita secara kasar apakah itu terang, teduh, atau benar-benar gelap.
Masalah terbesar yang kita hadapi dengan sirkuit ini adalah kenyataan bahwa Pi tidak memiliki pin analog. Semuanya digital, jadi kami tidak dapat secara akurat mengukur varians resistansi pada input kami. Kurangnya pin analog ini tidak menjadi masalah dalam tutorial sensor gerak karena output darinya tinggi atau rendah (Digital). Sebagai gantinya, kami akan mengukur waktu yang diperlukan kapasitor untuk mengisi dan mengirim pin tinggi. Metode ini adalah cara yang mudah tetapi tidak akurat untuk mengetahui apakah itu terang atau gelap.
Saya akan menjelaskan secara singkat kode sensor cahaya Raspberry Pi, dan apa fungsinya, jika Anda menginginkan kodenya, Anda dapat menyalin dan menempelkannya di bawah atau mengunduhnya dari GitHub saya.
Untuk memulai, kita mengimpor paket GPIO yang kita perlukan agar kita dapat berkomunikasi dengan pin GPIO. Kami juga mengimpor paket waktu, sehingga kami dapat menidurkan skrip saat diperlukan.
#!/usr/local/bin/pythonimport RPi.GPIO sebagai GPIOimport waktu
Kami kemudian mengatur mode GPIO ke GPIO.BOARD ini berarti semua penomoran yang kami gunakan dalam skrip ini akan mengacu pada penomoran fisik pin. Karena kita hanya memiliki satu pin input/output, kita hanya perlu mengatur satu variabel. Setel variabel ini ke nomor pin yang Anda gunakan sebagai pin input/output.
GPIO.setmode(GPIO.BOARD)#tentukan pin yang menuju ke sirkuitpin_to_circuit =7
Selanjutnya, kita memiliki fungsi yang disebut rc_time yang membutuhkan satu parameter yang merupakan nomor pin ke rangkaian. Dalam fungsi ini kita menginisialisasi variabel yang disebut count, kita akan mengembalikan nilai ini setelah pin menjadi tinggi.
Kami kemudian mengatur pin kami untuk bertindak sebagai output dan kemudian mengaturnya ke rendah, kami kemudian memiliki skrip tidur selama 10 ms.
Setelah ini, kami kemudian mengatur pin untuk menjadi input dan kemudian kami memasukkan loop sementara. Kami tetap di loop ini sampai pin menjadi tinggi, ini adalah saat kapasitor mengisi sekitar 3/4. Setelah menjadi tinggi, kami mengembalikan nilai hitungan ke fungsi utama. Anda dapat menggunakan nilai ini untuk menghidupkan dan mematikan LED, mengaktifkan sesuatu yang lain atau mencatat data dan menyimpan statistik pada setiap varian dalam cahaya.
def rc_time (pin_to_circuit):count =0 #Output pada pin untuk GPIO.setup(pin_to_circuit, GPIO.OUT) GPIO.output(pin_to_circuit, GPIO.LOW) time.sleep(0.1) #Ubah waktu pin back ke input GPIO.setup(pin_to_circuit, GPIO.IN) #Hitung sampai pin high while (GPIO.input(pin_to_circuit) ==GPIO.LOW):count +=1 return count#Catch saat script terganggu, cleanup benar coba:# Main loop while True:print rc_time(pin_to_circuit)kecuali KeyboardInterrupt:passfinally:GPIO.cleanup()
Menyebarkan &Menjalankan Kode di Raspberry Pi Anda
Langkah ini sangat mudah, tetapi saya akan segera melalui langkah-langkahnya sehingga Anda dapat menjalankannya dan menjalankannya di Pi Anda secepat dan semulus mungkin. Seperti semua tutorial di situs web ini, saya menggunakan Raspbian jika Anda memerlukan bantuan untuk menginstal Raspbian, lihat panduan saya untuk menginstal Raspbian.
Meskipun semua paket perangkat lunak seharusnya sudah diinstal dalam beberapa kasus, mungkin tidak. Jika Anda ingin mempelajari lebih lanjut tentang pin GPIO dan cara memperbarui dan menginstal perangkat lunak, pastikan untuk membaca tutorial saya tentang menyiapkan pin GPIO di Raspberry Pi.
Anda dapat mengunduh kode dengan menggunakan git clone. Perintah berikut akan melakukan hal itu:
git clone https://github.com/pimylifeup/Light_Sensor/cd ./Light_Sensor
Atau, Anda dapat menyalin dan menempelkan kode, pastikan file tersebut adalah skrip python.
sudo nano light_sensor.py
Setelah Anda selesai dalam file, cukup gunakan ctrl x lalu y untuk menyimpan dan keluar.
Terakhir, jalankan kode dengan menggunakan perintah berikut:
sudo python light_sensor.py
Saya harap Anda sekarang memiliki skrip yang berfungsi dan Anda menerima data yang mencerminkan dengan benar perubahan cahaya pada sensor. Jika Anda mengalami kesulitan, jangan ragu untuk meninggalkan komentar di bawah.
Meningkatkan Akurasi &Kemungkinan Penggunaan
Ada banyak sekali kegunaan sensor cahaya dalam sebuah rangkaian. Saya hanya akan menyebutkan beberapa yang saya pikirkan saat menulis tutorial ini.
- Alarm Aktif Ringan – Saya menyebutkan yang ini sebelumnya, tetapi Anda dapat menggunakan LDR untuk mendeteksi ketika mulai menyala sehingga Anda dapat membunyikan alarm untuk bangun. Jika program dan sensornya akurat, Anda dapat membuat alarm perlahan menjadi lebih keras saat menjadi lebih ringan.
- Pemantau taman – Sensor cahaya dapat digunakan di taman untuk memeriksa seberapa banyak sinar matahari yang diterima di area taman tertentu. Ini bisa menjadi informasi yang berguna jika Anda menanam sesuatu yang membutuhkan banyak sinar matahari atau sebaliknya.
- Pemantau Ruangan – Ingin memastikan lampu di ruangan tertentu selalu dimatikan? Anda dapat menggunakan ini untuk memperingatkan Anda setiap kali cahaya terdeteksi di tempat yang tidak seharusnya.
Ada banyak hal yang dapat Anda lakukan dengan sensor kecil yang keren ini, tetapi ingat juga jika Anda memerlukan sesuatu yang sedikit lebih akurat daripada fotosel, maka lihatlah sesuatu seperti sensor cahaya digital rentang dinamis tinggi Adafruit.
Saya harap Anda dapat mengatur sensor cahaya Raspberry Pi ini tanpa masalah. Jika Anda menemukan masalah, memiliki umpan balik, saya melewatkan sesuatu atau hal lain yang ingin Anda katakan, jangan ragu untuk memberikan komentar di bawah.
Sumber:Sensor Cahaya Raspberry Pi:Tutorial LDR Sederhana