Sensor Cahaya (Photodioda) dengan Arduino


Assalamualaikum warahmatullahi wabarakatuh

Photodioda merupakan komponen semi konduktor yang peka terhadap cahaya, Photodioda terbagi dua yaitu photodioda yang peka terhadap cahaya yang tampak dan photodioda yang peka terhadap cahaya yang tak tampak.

Di pasaran biasanya photodioda yang peka terhadap cahaya yang tampak berwana bening dan photodioda yang peka terhadap cahaya yang tidak tampak (IR) bisanya dipasaran berwarna hitam.


Untuk membedakan polaritas dari photodioda dengan cara melihat kaki-kaki dari photodioda yang pendek merupakan positif (+) yang lebih panjang negatif (-), atau kalau pada photidioda yang bening kita dapat melihat lempengan di dalalam kepalanya, lempengan yang paling besar merupakan positif (+) dan yang kecil negatif (-). Memang Photodioda berbeda dengan LED kalau LED kebalikan dari Photodioda.
Berikut untuk rangkaiannya:

Untuk peletakan resistor dapat diletakkan sesudah photodioda atau sebelum photodioda jika berpegangan dengan vcc awal dari sebuah rangkaian, peletakan resistor akan berdampak pada pembacaan jika peletakan resistor sesudah photodioda maka semakin terang cahaya semakin kecil tegangan yang di baca arduino jika peletakan resistor sebelum arduino maka semakin terang cahaya maka semakin besar tegangan yang dibaca arduino.

Untuk nilai dari resistor dapat disesuaikan dengan kegunaan. Biasa saya menggunkan 4,7 k (4k7) .

Berkut koneksi sensor dengan Arduino:


- Kaki positif photodioda terhubung dengan 5V pada arduino
- Kaki negatif photodioda terhubung dengan pin A5 pada Arduino
- Resistor terhubung dengan GND pada ardunino


program
//*********************************
//*program pembacaan nilai dari sensor cahaya
//*dengan menggunkan photodioda
//*************************************
int pin = A5; // deklarasikan pin sebagia A5
void setup(){
pinMode(pin, INPUT); // deklarasikan pin sebagai INPUT
Serial.begin(9600); // inisialisasi kecepatan transferdata antara arduino dengan komputer 9600
}

void loop(){
int data = analogRead(pin); //pembacaan nilai tegangan yang dibaca dari sensor
Serial.println(data); // tampilkan pembacaan di layar komputer
delay(100); //beri tundaan
}

jika ingin menambakan keputusan dari data yang didapat dari sensor kita bisa menambahkan perintah percabangan.

Misal:
if (data>130) hiduplampu;
else if (data<120) matilampu;

semoga tulisan ini dapat membantu teman-teman yang lagi belajar arduino....





Comments

  1. doesn't work. i get output analog like wave

    ReplyDelete
  2. do you mean the analog input is not stable?,
    maybe you test on outside, because the photodiode sensor value will change base on infrared,
    thank you

    ReplyDelete

Post a Comment

Popular posts from this blog

Menggunakan Driver Motor IBT-2 BTS7960 dengan arduino

Register-Register pada CPU--> Arsitektur komputer

Komunikasi Serial pada Arduino