Menyalakan lampu dengan pengendali Opamp
Pada rangkaian di atas, komponen Potensiometer yang terhubung ke masukan inverting opamp berfungsi sebagai Set Point (kalibrasi) yang dapat mempengaruhi intensitas atau sensitifitas sensor LDR karena bisa mengatur selisih tegangan antara masukan non inverting dan inverting.
Apa masih ingat penerapan rangkaian opamp sebagai apa? Iya Benar, penerapan rangkaian op amp di atas sebagai Komparator, jadi kita bisa lihat jika tegangan masukan non inverting lebih besar dari inverting maka tegangan keluarannya 12V atau Relay akan aktif dan lampu menyala, tapi jika tegangan masukan non inverting lebih kecil dari inverting maka tegangan keluarannya 0V atau Relay tidak aktif dan lampu tidak menyala.
Menyalakan lampu dengan Pengendali Arduino
Pada rangkaian di atas LED akan menyala sesuai dengan intensitas cahaya yang diatur dalam pemograman Arduino, dalam porgram diatur jika intensitas cahaya kurang dari 300 maka LED akan nyala, tetapi jika intensitas cahaya lebih dari 300 maka LED tidak akan menyala.
int ldr=A0;//Set A0(Analog Input) for LDR. int value=0; void setup() { Serial.begin(9600); pinMode(8,OUTPUT); } void loop() { value=analogRead(ldr);//Reads the Value of LDR(light). Serial.println("LDR value is :");//Prints the value of LDR to Serial Monitor. Serial.println(value); if(value<300) { digitalWrite(8,HIGH);//Makes the LED glow in Dark. } else { digitalWrite(8,LOW);//Turns the LED OFF in Light. } delay(100); }
Membuat Running LED dengan Pengendali Arduino
Pada rangkaian di atas bisa digunakan untuk mengetahui intensitas cahaya dititik tertentu yang berada di depan sensor LED, LED akan menyala sesuai dengan intensitas cahaya yang diatur dalam pemograman Arduino, dalam program diatur jika intensitas cahaya antara =5 s.d. 50 maka 1 lampu akan nyala, jika intensitas cahaya antara =50 s.d. 100 maka 2 LED akan nyala, dan seterusnya.
int ldr=A0;//Set A0(Analog Input) for LDR. int value=0; void setup() { Serial.begin(9600); pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); pinMode(11,OUTPUT); pinMode(12,OUTPUT); } void loop() { value=analogRead(ldr);//Reads the Value of LDR(light). Serial.println("LDR value is :");//Prints the value of LDR to Serial Monitor. Serial.println(value); if (value >= 5 && value < 50) { digitalWrite(8, HIGH); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); } else if (value >= 50 && value < 100) { digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); } else if (value >= 100 && value < 150) { digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, LOW); digitalWrite(12, LOW); } else if (value >= 150 && value < 200) { digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, LOW); } else if (value >= 200 ) { digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, HIGH); } else { digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); } delay(100); }
Comments
Post a Comment