Memasukkan LDR ke pin GPIO dari Raspberry Pi


12

Saya ingin menghubungkan LDR ke pin GPIO Raspberry Pi saya, saya tahu bahwa Raspberry Pi tidak memiliki konverter analog-ke-digital sehingga yang ingin saya lakukan adalah memberi sinyal sinyal TINGGI (3.3V) pada GPIO ketika ada resistansi rendah pada LDR (sesuatu di bawah 200 ohm) dan sinyal RENDAH ketika resistansi LDR tinggi (di atas 2k misalnya). Arus maksimum yang saya dapat dengan aman diambil dari pin GPIO dari Raspberry Pi, menurut dokumentasi adalah 50mA, bagaimana cara menghitung resistor yang diperlukan, apakah saya perlu menambahkan resistor pull up / down juga? Saya tidak punya ide yang jelas tentang cara melakukannya dengan cara yang aman tanpa membakar prosesor saya.

Saya membayangkan bahwa saya juga harus memasang resistor di sirkuit untuk memastikan bahwa selalu memiliki resistansi ketika LDR berada pada resistansi yang sangat rendah.

Pembaruan : itu berfungsi dengan baik, saya membangun sirkuit dan itu ditampilkan di posting ini , terima kasih atas bantuannya.


1
"Input histeresis GPIO (pemicu Schmitt) dapat hidup atau mati, laju perubahan tegangan keluaran dapat cepat atau terbatas, dan sumber dan arus tenggelam dapat dikonfigurasi dari 2 mA hingga 16 mA." 50mA adalah penarikan maksimum dari pin 3V3.
Ignacio Vazquez-Abrams

Jawaban:


13

Cara terbaik untuk melakukan ini adalah dengan menggunakan transistor sebagai pembanding untuk membuat transisi menjadi tajam.
Berikut ini contoh sirkuit:

LDR

Menggunakan LDR sebagai bagian atas pembagi tegangan. Ketika resistansi LDR turun tegangan pada basis transistor naik dan menyalakannya. Transistor dapat berupa tujuan umum NPN.
Kita dapat menghitung nilai resistor berdasarkan keberadaan kita ingin menghidupkan terjadi.

Katakanlah resistensi LDR berubah dari 200Ω (gelap) ke 10kΩ (gelap). Kami ingin transistor menyala ketika LDR berada di 5kΩ. Suplai (V +) pada 3.3V. Transistor NPN tipikal menyala sekitar 0,7V, jadi jika kita lakukan:

5.000 * (0,7 / 3.3) = 1060Ω diperlukan untuk resistor dasar. Kita dapat memilih resistor 1kΩ karena cukup dekat. Sesuaikan nilai Anda agar sesuai dengan poin giliran Anda.

Berikut ini adalah simulasi rangkaian:

LDR sim

Sumbu horizontal adalah hambatan LDR, dan garis biru adalah tegangan pada titik Vout (Anda menghubungkan ini ke pin input Rpi - harus diatur ke input. Anda dapat menambahkan resistor 1kΩ antara Vout dan pin Rpi untuk melindunginya. jika tidak sengaja mengaturnya ke output) Kita dapat melihat transistor menyala pada sekitar 5 kΩ seperti yang diperkirakan (tidak akan tepat karena tegangan basis-emitor transistor akan bervariasi dengan suhu, dll tetapi cukup dekat untuk keperluan Anda)

Perhatikan bahwa output transistor rendah ketika terang dan tinggi ketika gelap, Anda dapat menukar LDR dan resistor sekitar dan menggunakan 5.000 * (3.3 / 0.7) = 23.5kΩ untuk resistor jika Anda menginginkannya sebaliknya - ini adalah sebenarnya konfigurasi yang lebih baik karena menarik lebih sedikit saat ini (karena resistensi yang lebih tinggi) jadi jika itu penting gunakan versi ini.


Sepakat. Saya akan menyarankan komparator op-amp tetapi kemudian berpikir itu berlebihan. Solusi sederhana menggunakan transistor sebagai saklar tidak terpikir oleh saya.
Ignacio Vazquez-Abrams

2
Itulah yang saya butuhkan, saya akan melakukannya, terima kasih banyak atas jawabannya, cukup menakjubkan bahwa kita dapat membangun sigmoid ini untuk mengontrol level logika, saya tidak akan pernah membayangkan sesuatu seperti ini, terima kasih telah menghabiskan waktu Anda untuk menulis ini.
Tarantula

@Tarantula - tidak ada masalah, senang membantu.
Oli Glaser
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.