Arduino

রিমোট কন্ট্রোল সিস্টেম তৈরি করে বাল্ব, ফ্যান অন অফ করুন

আইআর রিমোট কন্ট্রোল সিস্টেম। আপনারা অনেকেই রিমোট কন্ট্রোল সিস্টেম তৈরি করতে চান। কিন্তু জানেন না কিভাবে রিমোট কন্ট্রোল সিস্টেম নিজেই তৈরি করবেন। আজ আমি আপনাদের শিখাবো কিভাবে রিমোট কন্ট্রোল প্রজেক্ট তৈরি করতে হয়। রিমোট কন্ট্রোল সিস্টেম অর্থাৎ রিমোটের সাহায্যে চালু এবং বন্ধ করা। এই প্রকল্পটি বিভিন্ন উপায়ে তৈরি করা যেতে পারে। আজ আমি আপনাদের শিখাবো কিভাবে Arduino কোডিং করে এই রিমোট কন্ট্রোল সিস্টেম তৈরি করতে হয়। কিন্তু আপনি যেকোনো রিমোট দিয়ে Arduino কোডিং করে এই প্রজেক্টটি করতে পারেন। এটি হতে পারে আপনার বাড়ির টিভি রিমোট বা এসি রিমোট বা অন্য কোনো নতুন রিমোট। আমি আপনাকে শিখাবো কিভাবে ব্যবহারিকতা এবং কোডিং সহ এই প্রযুক্তিটি করতে হয়। চলুন প্রথমে জেনে নেওয়া যাক প্রজেক্টটি করতে আমাদের কি কি উপাদান লাগবে।

  1. Arduino Uno R3 Board.
  2. IR Receiver Sensor.
  3. Bread board.
  4. 4 Relay Module.
  5. 100 Ohm Resistance.
  6. Any Remote.
  7. Bulb Holder.
  8. AC Bulb.
  9. Sling Fan.
  10. Connecting wire.
  11. 5v Power supply.

এই উপাদানগুলির সাহায্যে আপনি এই প্রকল্পটি পরীক্ষা করতে বা তৈরি করতে পারেন। এখন আইআর রিসিভার সেন্সরের পিন ডায়াগ্রামটি দেখুন।

IR Remote

এই IR রিসিভার সেন্সরটি মূলত রিমোট ট্রান্সমিটার থেকে প্রেরিত সংকেত গ্রহণ করে একটি আউটপুট দেবে। Arduino এর সাথে এটি ব্যবহার করতে নীচের পিন ডায়াগ্রামটি লক্ষ্য করুন।

 

IR Remote

এখন আপনাকে Arduino কোডিং করে সেই কোডিং Arduino এ আপলোড করার পর কিছু পরীক্ষা করতে হবে। এই প্রজেক্টে আপনি যে রিমোটটি ব্যবহার করবেন সেটি সেই রিমোটের প্রতিটি বোতাম টিপতে একটি কোড তৈরি করবে। প্রথমে আপনাকে একটি লাইব্রেরি ফাইল ডাউনলোড করতে হবে এবং Arduino ID সফ্টওয়্যার যোগ করতে হবে।

এখন আমি নিচে যে কোডিংটি দেখাচ্ছি তা এই কোডিংটি Arduino UNO বোর্ডে আপলোড করবে।

CODE:

 #include <IRremote.h>  
 int RECV_PIN = A0;  
 IRrecv irrecv(RECV_PIN);  
 decode_results results;  
 void setup()  
 {  
  Serial.begin(9600);  
  irrecv.enableIRIn(); // Start the receiver  
 }  
 void loop() {  
  if (irrecv.decode(&results)) {  
   Serial.println(results.value, HEX);  
   irrecv.resume(); // Receive the next value  
  }  
 }   

 

উপরে দেখানো হিসাবে Arduino বোর্ডের সাথে IR রিসিভার সেন্সর সংযোগ করুন এবং এই কোড আপলোড করুন। এখন আপনাকে আরডুইনো বোর্ডে পাওয়ার দিতে হবে। তারপর IR রিসিভার সেন্সরের সামনে আপনি এই প্রকল্পে যে রিমোট ব্যবহার করবেন তার বোতাম টিপুন। তারপর আপনি Arduino ID সফ্টওয়্যারের সিরিয়াল মনিটরের প্রতিটি বোতাম টিপানোর জন্য একটি কোড পাবেন। নিচের চিত্রে লক্ষ্য করুন।

remote control

এইভাবে, রিমোটের প্রতিটি বোতাম টিপলে, আপনি আরডুইনো আইডি সফ্টওয়্যারের সিরিয়াল মনিটরে এমন একটি কোড পাবেন। এখন আপনাকে মনে রাখতে হবে যে কোন বোতাম টিপলে কোন কোড আসবে। এখন আপনাকে মূল কোডিং-এ যেতে হবে। এই প্রজেক্টে আমি তিনটি লোডিং অন এবং অফ কোডিং দেখিয়েছি। আপনি কোডিং বড় করতে পারেন এবং প্রচুর চালু এবং বন্ধ লোড করতে পারেন। রিমোটের প্রতিটি বোতাম টিপে আপনি আলাদাভাবে কোডগুলি পাবেন। এই কোডগুলো মূল কোডিং এর ভিতরে দিতে হবে। নিচের ছবিটি লক্ষ্য করুন।

remote control

এখানে আপনি লাল চিহ্নিত করা দেখতে পারেন. এই প্রতিটি বোতাম টিপে জন্য কোড. এবং এই কোডগুলির প্রতিটিকে মূল কোডিংয়ে ব্যবহার করতে, আপনাকে এই কোডের সামনে 0XFF বসাতে হবে। এখন আমি আপনাকে এই প্রকল্পের পিন ডায়াগ্রাম বা সংযোগ চিত্র দেখাই।

IR Remote

এখানে আমি রিমোটের সাহায্যে তিনটি লোড অন এবং অফ দেখিয়েছি। কারণ একটি ঘরে দুটি বাল্ব একটি ফ্যান আছে.

CODE:

 #include <IRremote.h>  
 int RECV_PIN = A0; //   
 int output1 = 8;  
 int output2 = 9;  
 int output3 = 10;  
 int itsONled[] = {0,0,0,0};  
 #define code1 0xFF38863BE0  
 #define code2 0xFF38863BD0  
 #define code3 0xFF38863BF0  
 IRrecv irrecv(RECV_PIN);  
 decode_results results;  
 void setup()  
 {  
  Serial.begin(9600);  //   
  irrecv.enableIRIn(); //   
  pinMode(output1, OUTPUT);  
  pinMode(output2, OUTPUT);  
  pinMode(output3, OUTPUT);  
  pinMode(A0, INPUT);  
  digitalWrite(output1, HIGH);  
  digitalWrite(output2, HIGH);  
  digitalWrite(output3, HIGH);  
 }  
 void loop() {  
  if (irrecv.decode(&results)) {  
   unsigned int value = results.value;  
   switch(value) {  
    case code1:  
     if(itsONled[1] == 1) {       
       digitalWrite(output1, LOW);    
       itsONled[1] = 0;        
     } else {             
       digitalWrite(output1, HIGH);   
       itsONled[1] = 1;        
     }  
      break;   
    case code2:  
     if(itsONled[2] == 1) {  
       digitalWrite(output2, LOW);  
       itsONled[2] = 0;  
     } else {  
       digitalWrite(output2, HIGH);  
       itsONled[2] = 1;  
     }  
      break;  
    case code3:  
     if(itsONled[3] == 1) {  
       digitalWrite(output3, LOW);  
       itsONled[3] = 0;  
     } else {  
       digitalWrite(output3, HIGH);  
       itsONled[3] = 1;  
     }  
      break;       
   }  
   Serial.println(value); // you can comment this line  
   irrecv.resume(); // Receive the next value  
  }  
 }   

 

এখন আমি উপরে দেখানো কানেকশন ডায়াগ্রাম অনুযায়ী কানেকশন তৈরি করুন। এর পরে, আপনি কোডিং আপলোড করলে, এই প্রকল্পটি আপনার জন্য তৈরি করা হবে। কিন্তু কোডিং এর ভিতরে আপনাকে অবশ্যই পরিবর্তন করতে হবে। কারণ আপনি যে রিমোট ব্যবহার করবেন তার কোড অনুযায়ী কোডিং করতে হবে।

Friendtechbd Desk

View Comments

Share
Published by
Friendtechbd Desk

Recent Posts

A street hawker paragraph 8-10, SSC, HSC and all students 100-500 words

A street hawker paragraph for Class 6, 7, 8, 9, 10, 11 and 12, 8-10,…

7 months ago

Water pollution paragraph 8-10, SSC, HSC and all students 100-500 words

Water pollution paragraph for Class 6, 7, 8, 9, 10, 11 and 12, 8-10, SSC,…

7 months ago

Our national flag paragraph 8-10, SSC, HSC and all students 100-500 words

Our national flag paragraph for Class 6, 7, 8, 9, 10, 11 and 12, 8-10,…

7 months ago

A mobile phone paragraph 8-10, SSC, HSC and all students 100-500 words

A mobile phone paragraph for Class 6, 7, 8, 9, 10, 11 and 12, 8-10,…

7 months ago

A tea stall paragraph 8-10, SSC, HSC and all students 100-500 words

A tea stall paragraph for Class 6, 7, 8, 9, 10, 11 and 12, 8-10,…

7 months ago

International Mother Language Day paragraph 8-10, SSC, HSC and all students 100-500 words

International Mother Language Day paragraph for Class 6, 7, 8, 9, 10, 11 and 12,…

7 months ago