Anda ingin rentang sinyal dari 0V hingga 5V. Bukankah kita semua :-)? Mari kita pergi untuk pendekatan yang berbeda dan melihat di mana itu membawa kita.
Titik awal: solusi termurah dan paling sederhana.
Itu akan menjadi resistor seri untuk membuat pembagi tegangan. Itu minimum absolut. Saya perhatikan bahwa orang tidak terlalu memikirkan resistor itu, hanya memilih nilai bulat yang bagus seperti 10k . Tetapi saya menemukan bahwa ada nilai optimal untuk ini. Ω
Kurva menunjukkan perbedaan tegangan antara pembacaan minimum dan maksimum (9k dan 20k resp.) Sebagai fungsi dari resistor seri (dalam k ). Lihat, memang memang sudah maksimal. Itu mudah ditemukan jika Anda mengingatnya ΩΩΩ
(f(x)g(x))′=f′(x)⋅g(x)−f(x)⋅g′(x)g2(x)
Perbedaan - memiliki ekstrem untuk VMAXVMIN
ddRX(RMAXRMAX+RX−RMINRMIN+RX)=0
Memecahkan untuk memberi RX
RX=RMIN⋅RMAX−−−−−−−−−−−√
Kecantikan!
Jadi dalam kasus kami resistor seri akan 13,42 k , Anda dapat memeriksa ini pada grafik. Menempatkan resistor antara 0V dan + 5V ini akan memberi kita rentang keluaran [2V, 3V]. Itu rentang maksimum yang bisa Anda dapatkan dengan 1 resistor (*). Ω
Cukup? Arduino memiliki ADC 10-bit, sehingga kisaran ini akan memberi Anda kisaran 200 tingkat diskrit. Itu harus memberikan akurasi yang cukup untuk sensor DIY. Jadi tidak ada komponen lain seperti opamps yang dibutuhkan.
(*) Jawaban yang diterima memberikan kisaran 1,9V, tetapi memiliki persamaan yang salah . Tidak mungkin mendapatkan rentang yang lebih tinggi dari 1V dengan 1 resistor dan hanya pasokan + 5V.