arduino กับ LDR
LDR : Light Dependent Resistor)
แอลดีอาร์ (LDR : Light Dependent Resistor) คือ ความต้านทานชนิดที่ไวต่อแสง กล่าวคือ ตัวความต้านทานนี้สามารถเปลี่ยนสภาพทางความนำไฟฟ้า ได้เมื่อมีแสงมาตกกระทบ บางครั้งเรียกว่าโฟโตรีซีสเตอร์ ( Photo Resistor) หรือ โฟโตคอนดัคเตอร์ (Photo Conductor) เป็นตัวต้านทานที่ทำมาจากสารกึ่งตัวนำ
การต่อวงจรให้ ต่อวงจรตามภาพนะครับ คือ ต่อ LDR อนุกรมกับ ค่าความต้านทาน 4.71k 1เพื่อเป็นวงจรแบ่งแรงดัน
โดยต่อขา กลางระหว่าง LDR กับ resistor เข้าที่ขา arduino ที่ขา A0
การทำงานของ code คือ เมื่อมีค่าความเข้มแสง sensorValue มากกว่า 400 LED บนบอร์ด ที่ขา 13 จะติดขึ้นมาแต่มีมีค่า sensorValue น้อยกว่า 400 LED บนบอร์ดก็จะดับ
ดูค่า OUTPUT ทาง serialmonitor
จาก code นี้เราสามารถนำไปประยุกต์เปิดปิดอุปกรณืไฟฟ้า โดยวัดว่าเป็นกลางวันหรือกลางคืนครับ
int sensorPin = A0; // select the input pin for the ldr unsigned int sensorValue = 0; // variable to store the value coming from the ldr void setup() { pinMode(13, OUTPUT); //Start Serial port Serial.begin(9600); // start serial for output - for testing } void loop() { // read the value from the ldr: sensorValue = analogRead(sensorPin); if(sensorValue<400)
{
digitalWrite(13, HIGH); // set the LED off
{
else
{
digitalWrite(13, LOW); // set the LED on } // For DEBUGGING - Print out our data, uncomment the lines below Serial.print(sensorValue, DEC); // print the value (0 to 1024) Serial.println(""); // print carriage return delay(500); }