আরডুইনোর সাথে Light Sensitive Resistance Sensor ইন্টারফেসিং ও ব্যবহার গাইড
# আরডুইনোর সাথে Light Sensitive Resistance Sensor ইন্টারফেসিং ও ব্যবহার গাইড
## পরিচিতি
Light Sensitive Resistance (LDR) Sensor, যা ফটোরেসিস্টর বা আলোক-সংবেদনশীল রেজিস্টর নামেও পরিচিত, এমন একটি কম্পোনেন্ট যা আলোর তীব্রতার সাথে সাথে এর রেজিস্ট্যান্স পরিবর্তন করে। যখন আলোর তীব্রতা বেশি থাকে, তখন এর রেজিস্ট্যান্স কমে যায় এবং যখন আলোর তীব্রতা কম থাকে, তখন এর রেজিস্ট্যান্স বেড়ে যায়। এই বৈশিষ্ট্য এটিকে বিভিন্ন অটোমেটেড লাইটিং সিস্টেম, অ্যালার্ম এবং অন্যান্য প্রজেক্টে ব্যবহারের জন্য উপযোগী করে তোলে। এই গাইডে আমরা দেখব কিভাবে আরডুইনো ব্যবহার করে LDR সেন্সর ইন্টারফেস করা যায় এবং এর ডেটা পড়া যায়।
## প্রয়োজনীয় পার্টস
* Arduino Uno/Nano/Mega (যেকোনো একটি)
* Light Sensitive Resistance (LDR) Sensor Module
* Jumper Wires (Male-to-Male এবং Male-to-Female)
* USB Cable (আরডুইনো প্রোগ্রাম করার জন্য)
* Breadboard (ঐচ্ছিক, কানেকশন সহজ করার জন্য)
## সার্কিট কানেকশন
LDR সেন্সর মডিউলের সাধারণত তিনটি পিন থাকে: VCC, GND এবং Signal/Analog Out।
1. **VCC পিন**: আরডুইনোর 5V পিনের সাথে সংযোগ করুন।
2. **GND পিন**: আরডুইনোর GND পিনের সাথে সংযোগ করুন।
3. **Signal/Analog Out পিন**: আরডুইনোর যেকোনো অ্যানালগ ইনপুট পিনের সাথে সংযোগ করুন। আমরা এখানে অ্যানালগ পিন A0 ব্যবহার করব।
## কিভাবে কাজ করে
LDR সেন্সরটি মূলত একটি পরিবর্তনশীল রেজিস্টর। এর ভেতরের উপাদানের পরিবাহিতা আলোর উপর নির্ভর করে।
* **আলো বেশি থাকলে**: LDR এর ভেতর ইলেকট্রনগুলো উত্তেজিত হয় এবং পরিবাহিতা বাড়ে, ফলে এর রেজিস্ট্যান্স কমে যায়।
* **আলো কম থাকলে**: ইলেকট্রনগুলোর শক্তি কমে যায়, পরিবাহিতা কমে যায় এবং রেজিস্ট্যান্স বেড়ে যায়।
যখন LDR কে একটি ভোল্টেজ ডিভাইডার সার্কিটে (সাধারণত সেন্সর মডিউলের সাথে বিল্ট-ইন থাকে) ব্যবহার করা হয়, তখন এই রেজিস্ট্যান্সের পরিবর্তন একটি ভোল্টেজের পরিবর্তনে রূপান্তরিত হয়। আরডুইনোর অ্যানালগ পিন এই ভোল্টেজ পরিমাপ করতে পারে। অ্যানালগ পিন 0 থেকে 5V পর্যন্ত ভোল্টেজকে 0 থেকে 1023 পর্যন্ত একটি সংখ্যাসূচক মানে (ডিজিটাল ভ্যালু) রূপান্তর করে। এই মান যত কম হবে, আলোর তীব্রতা তত বেশি হবে, এবং মান যত বেশি হবে, আলোর তীব্রতা তত কম হবে।
প্রোগ্রাম কোড (Source Code)
/*
Light Sensitive Resistance (LDR) Sensor Interfacing with Arduino
এই কোডটি LDR সেন্সর থেকে অ্যানালগ ভ্যালু রিড করে এবং সিরিয়াল মনিটরে প্রিন্ট করে।
*/
// LDR সেন্সরের সিগন্যাল পিন যে অ্যানালগ পিনের সাথে যুক্ত তা এখানে ডিফাইন করা হয়েছে
const int ldrPin = A0;
void setup() {
// সিরিয়াল কমিউনিকেশন শুরু করা হচ্ছে (9600 baud rate)
Serial.begin(9600);
}
void loop() {
// LDR সেন্সর থেকে অ্যানালগ ভ্যালু (0-1023) রিড করা হচ্ছে
int ldrValue = analogRead(ldrPin);
// রিড করা ভ্যালুটি সিরিয়াল মনিটরে প্রিন্ট করা হচ্ছে
Serial.print("LDR Value: ");
Serial.println(ldrValue);
// প্রোগ্রামটি একটু ধীর করার জন্য 100 মিলিসেকেন্ড ডিলে দেওয়া হয়েছে
delay(100);
}
..., ... থেকে
...এইমাত্র অর্ডার করেছেন • ...