در این قسمت میخوایم راهاندازی ldr با آردوینو را کار کنیم و یا بطور ساده تر یه LDRرو به ورودی آنالوگ آردوینو وصل کنیم و با خوندن مقدار اون سه تا ال ای دی روشن بشن. خب برای وصل کردن سنسور فتوسل یا همون LDR به پایه آنالوگ آردوینو باید اون رو با یک مقاومت 10 کیلو سری کنین. مثل شکل زیر:
عکس زیر هم که خیلی ساده هست:
خب همونطور که میدونین فتوسل یک مقاومت متغییر نسبت به نور هست
یعنی هر چی نور بیشتر باشه مقاومت اون کمتره و هر چی تاریک تر باشه مقاومت بیشتر.
وقتی فتوسل رو که با یک مقاومت ده کیلو سری میکنید یک تقسیم ولتاژ مقاومتی رو تشکیل میدین که هر چی تاریکتر میشه ولتاژ دو سر فتوسل بیشتر میشه.
خب ما از این خصوصیت در آردوینو استفاده میکنیم و میزان روشنایی رو با سه عدد ال ای دی نمایش میدیم.
مدار رو مانند شکل زیر ببندین:
خب میرسیم به برنامه نویسی آردوینو
int ledPin1 = 2; // LED 1 int ledPin2 = 3; // LED 2 int ledPin3 = 4; // LED 3 int photocellPin = A0; int photocellReading; void setup(void) { // برای اینکه مقدار خوانده شده آنالوگ را ببینیم از سریال مانیتور استفاده میکنیم Serial.begin(9600); pinMode(ledPin1, OUTPUT); // Set LED 1 to be Output خروجی قرار دادن ال ای دی ها pinMode(ledPin2, OUTPUT); // Set LED 2 to be Output pinMode(ledPin3, OUTPUT); // Set LED 3 to be Output } void loop(void) { photocellReading = analogRead(photocellPin); // مقدار خوانده شده آنالوگ را درون متغییر میریزد Serial.print("Analog reading = "); Serial.print(photocellReading); // مقدار آنالوگ را در سریال مانیتور نشان میدهد // if (photocellReading < 150) { Serial.println(" - Dark"); digitalWrite(ledPin1,HIGH); digitalWrite(ledPin2,LOW); digitalWrite(ledPin3,LOW); } else if (photocellReading < 550) { Serial.println(" - Light"); digitalWrite(ledPin2,HIGH); digitalWrite(ledPin1,LOW); digitalWrite(ledPin3,LOW); } else if (photocellReading < 900) { Serial.println(" - Bright"); digitalWrite(ledPin3,HIGH); digitalWrite(ledPin1,LOW); digitalWrite(ledPin2,LOW); } else { Serial.println(" - Very bright");} //delay(1000); } //Melec.ir
خب در مورد قسمت اصلی برنامه که از دستور if استفاده شده باید بگم که اول اومدم گفتم اگر مقدار آنالوگ از 150 کمتر بود ال ای دیه اول رو روشن کن و بقیه رو خاموش کن.
اگه از 550 کمتر بود ال ای دیه شماره 2 رو روشن کن و بقیه رو خاموش کن.
و اگه از 900 کمتر بود ال ای دیه شماره 3 رو روشن کن و بقیه رو خاموش کن.
مقدار آنالوگ هم که از 0 تا 1023 هست و شما میتونین با باز کردن سریال مانیتور مقدار رو ببینین
مداری که خودم روی برد بورد بستم
حالا میخوام بگم کاربرد این مدار چیه: مثلا میشه ازش واسه روشن کردن اتوماتیک یک وسیله الکتریکی متناسب با نور محیط استفاده کرد. (با استفاده یک رله به جای ال ای دیها ). یا میشه ربات تعقیب کننده نور ساخت و…
منبع: میکرودیزاینرالکترونیک