আজকে আমরা যে এক্সপেরিমেন্টটি করব সেটা বেশ সহজ এবং ছোট্ট। এবার আমরা তৈরী করব একটি আইআর রিমোট কন্ট্রোল্ড ল্যাম্প। এই এক্সপেরিমেন্টে আমরা একটি সিঙ্গেল কালার এলইডিকে একটি আইআর রিমোটের মাধ্যমে অন-অফ করব। এই এক্সপেরিমেন্টটি টিভি বা এসির রিমোট দিয়ে সহজেই করা যাবে।
এই এক্সপেরিমেন্টের মাধ্যমে আমরা জানতে পারবঃ
- রিমোট কন্ট্রোল কিভাবে কাজ করে।
- কিভাবে একটি রিমোট কন্ট্রোলকে আরডুইনোর সাথে ইন্টারফেস করা যায়।
- আইআর ট্রান্সমিটার ও রিসিভার পেয়ার কিভাবে একসাথে কাজ করে।
IR communication নিয়ে কিছু কথাঃ
একটি IR communication সিস্টেমে দুটি প্রধান কম্পোনেন্ট থাকেঃ
- IR Transmitter
- IR Receiver
1. IR Transmitter
IR Transmitter হলো একটি ইনফ্রারেড এলইডি।
আপনারা আপনাদের ব্যবহৃত টিভি কিংবা এসির রিমোটের মাথাতেই এই এলইডি দেখতে পাবেন। এই আইআর এলইডিগুলোর ফ্রিকোয়েন্সি 38Khz। অর্থ্যাৎ, আপনি রিমোটের যেকোনো একটি বাটন একবার প্রেস করলেই এই এলইডি সেকেন্ডে ৩৮ হাজার বার অন-অফ হয়। ঠিক বাটন প্রেস করার মুহূর্তে যদি IR Transmitter এলইডির সাথে একটি অসিলোস্কোপ সংযুক্ত করা হয়, তাহলে নিচের ছবির মতো দেখা যাবে। এটি একটি মড্যুলেটেড সিগন্যাল।
2. IR Receiver
এটি একটি তিন পিনবিশিষ্ট কম্পোনেন্ট।
IR Transmitter এর পাঠানো মড্যুলেটেড সিগন্যালকে IR Receiver গ্রহণ করে। সিগন্যাল গ্রহণ করার পর আইআর রিসিভার সিগন্যালটিকে ডিমড্যুলেশনের মাধ্যমে একটি বাইনারি ওয়েভফর্ম তৈরী করে। এই ওয়েভফর্মটি দেখতে নিচের ছবির মতো। আইআর রিসিভারের আউটপুট পিনে এই ওয়েভফর্ম উৎপন্ন হবে।
আমাদের এক্সপেরিমেন্টে IR Receiver এর আউটপুট পিনকে আরডুইনোর একটি ডিজিটাল পিনে সংযুক্ত করা হবে। ট্রান্সমিটার হিসেবে কাজ করবে এসি বা টিভির রিমোট। IR Receiver এর আউটপুট রিড করলেই আরডুইনো বুঝতে পারবে রিমোটের সুইচ প্রেস করা হয়েছে নাকি হয়নি।
প্রয়োজনীয় যন্ত্রপাতি | পরিমাণ | প্রোডাক্ট লিংক |
Arduino UNO R3/Arduino Mega 2560 | ১ | লিংক |
IR Receiver shielded | ১ | লিংক |
LED Blue-5mm | ১ | লিংক |
330 ohm resistor ¼ watt | ১ | লিংক |
Male to female jumper wire | ১ | লিংক |
Any IR Remote | ১ | |
সার্কিট কানেকশনঃ
নিচের কানেকশনগুলো সম্পন্ন করুন।
Arduino UNO/Mega | IR Receiver | Blue LED |
5V | VCC | |
GND | GND | Negative pin |
2 | OUTPUT | |
11 | Positive pin Through 330 ohm resistor |
সার্কিট ডায়াগ্রামঃ
পাওয়ার দেবার আগে আমাদের সার্কিটটা দেখতে ছিল এরকম।
প্রোগ্রামঃ
নিচের প্রোগ্রামটি আরডুইনোতে আপলোড করুন।
// Make a Toggle IR Button // Define the pins being used int pinLed = 11; int pinIR = 2; // declaring variables to hold the new and old IR states boolean oldIRState = LOW; boolean newIRState = LOW; boolean LEDstatus = LOW; void setup() { Serial.begin(9600); pinMode(pinLed, OUTPUT); digitalWrite(pinLed, LOW); pinMode(pinIR, INPUT); } void loop() { newIRState = digitalRead(pinIR); if ( newIRState != oldIRState )//This is the condition when you press the remote { // has the button IR been closed? if ( newIRState == HIGH )//Logic high in pin#2 { if ( LEDstatus == LOW ) {//if LED is previously off delay(200); digitalWrite(pinLed, HIGH); LEDstatus = HIGH; } else { delay(200); digitalWrite(pinLed, LOW); LEDstatus = LOW; } } oldIRState = newIRState; } }
পরীক্ষাঃ
কোড আপলোড করার পর এলইডি জ্বলে থাকবে।
আইআর রিমোটের যেকোনো সুইচ প্রেস করে এলইডিকে অন থেকে অফ কিংবা অফ থেকে অন করা যাবে।
সার্কিটটির জন্য ইচ্ছেমতো একটি এনক্লোজারও বানিয়ে নেওয়া যায়। এক্ষেত্রে অবশ্যই সার্কিটটিকে ব্যাটারি দিয়ে পাওয়ার দিতে হবে।