আরডুইনো মেসেঞ্জার

ইতোমধ্যে আমরা ব্লুটুথ টি শার্ট প্রজেক্ট করার সময় দেখেছি কিভাবে দুটি HC-05 ব্লুটুথ মডিউল পরস্পরের সাথে তথ্য আদান-প্রদান করতে সক্ষম। ব্লুটুথ টিশার্ট প্রজেক্টের জন্য আমরা বেশকিছু AT command লিখে একটি মডিউলকে Master এবং অপরটিকে Slave হিসেবে কনফিগার করে নিয়েছিলাম এবং পরস্পরের সাথে পেয়ার আপ করিয়েছিলাম। এই এক্সপেরিমেন্টে আমরা ঐ একই মূলনীতি কাজে লাগিয়ে একটি মেসেঞ্জার তৈরী করব। অর্থ্যাৎ, দুইজন মানুষ যার যার কাছে থাকা কাছে থাকা একটি করে আরডুইনো এবং ব্লুটুথ মডিউলের সাহায্যে আরডুইনো আইডিইর সিরিয়াল মনিটরের মাধ্যমে চ্যাটিং করতে পারবে। সুসংবাদ হচ্ছে, এবার আমাদেরকে কষ্ট করে কমান্ড লিখে লিখে দুটি ব্লুটুথ মডিউলকে পেয়ার আপ করতে হবে না। আমাদের কাজ সহজ করে দিচ্ছে HC-05 Pair Module। এই মডিউল পেয়ারটিকে পরস্পরের রেঞ্জের ভেতর রেখে পাওয়ার দিলেই তারা একে অন্যের সাথে সংযুক্ত হয়ে যাবে।

প্রয়োজনীয় যন্ত্রপাতি পরিমান প্রোডাক্ট লিংক
Arduino UNO-R3 1 http://bit.ly/2KhV84M
Arduino Nano V3.0 (China)   1 http://bit.ly/2HEko8h  
HC-05 Pair Module      1 http://bit.ly/2UHE5C5  
Male to male jumpers 4 http://bit.ly/2IkA1hy  
Male to female jumpers 4 http://bit.ly/2rIu6w2  
Breadboard 1 http://bit.ly/2IjyUPg  

কোডঃ


আরডুইনো উনোর জন্যঃ

নিচের কোডটি কম্পাইল করে আরডুইনো উনোতে আপলোড করি।

/*
  Messenger UNO part

 */
#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX
String a,b;
void setup() {
  // Open serial communications and wait for port to open:
  Serial.begin(57600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }


  

  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);
  
}

void loop() { // run over and over
  if (mySerial.available()) {
    
    a=mySerial.readString();
   
    
    Serial.print(a);
   
    
    mySerial.print(a);
  }
  if (Serial.available()) {
    
    b=Serial.readString();
   
    Serial.print("UNO says:");
    Serial.print(b);
    mySerial.print("UNO says:");
    mySerial.print(b);
  }
}



আরডুইনো ন্যানোর জন্যঃ
নিচের কোডটি কম্পাইল করে আরডুইনো ন্যানোতে আপলোড করি।

/*
  Messenger NANO part

 */
#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX
String a,b;
void setup() {
  // Open serial communications and wait for port to open:
  Serial.begin(57600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }


  
  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);
  
}

void loop() { // run over and over
  if (mySerial.available()) {
    
    a=mySerial.readString();
    Serial.print(a);
  }
  if (Serial.available()) {
    
    b=Serial.readString();
    mySerial.print("Nano says:");
    mySerial.print(b);
  }
}


সার্কিটঃ
আরডুইনো উনো ও HC-05 Pair Module এর একটি মডিউলের সাথে নিচের কানেকশনটি সম্পন্ন করি।

Arduino UNO-R3 One of HC-05 Pair Module  
3.3V 3.3V
GND GND
10 Tx
11 Rx

এবার আরডুইনো উনোকে একটি কম্পিউটারের সাথে কানেক্ট করে আরডুইনোর আইডিইর সিরিয়াল মনিটর ওপেন করি। 57600 baud rate সিলেক্ট করা থাকতে হবে।
Both NL & CR অপশনটিও সিলেক্ট করা থাকতে হবে।

আরডুইনো ন্যানো এবং HC-05 Pair Module এর অপর মডিউলের সাথে নিচের কানেকশনটি সম্পন্ন করি।

Arduino Nano V3.0 (China)   Another one of HC-05 Pair Module  
3.3V 3.3V
GND GND
D10 Tx
D11 Rx
   

এবার আরডুইনো ন্যানোকে একটি কম্পিউটারের সাথে কানেক্ট করে আরডুইনো আইডিইর সিরিয়াল মনিটর ওপেন করি।


57600 baud rate সিলেক্ট করা থাকতে হবে। Both NL & CR অপশনটিও সিলেক্ট করা থাকতে হবে।

মেসেঞ্জার তৈরী। এবার চ্যাটিং হোক আরডুইনো দিয়েই।

ব্লুটুথ মডিউলদুটিকে অবশ্যই পরস্পরের রেঞ্জের ভেতর থাকতে হবে। সাধারন অবস্থায় পাওয়ার দেবার সাথে সাথে ব্লুটুথ মডিউলের ব্লু এলইডি খুব দ্রুত ব্লিংক করতে থাকবে।পরস্পরের রেঞ্জের ভেতর থাকা অবস্থায় ব্লু টুথ মডিউলদুটির এলইডি কিছুক্ষন পরপর দুইবার করে ব্লিংক করতে শুরু করবে। অর্থ্যাৎ, এলইডি’র ব্লিংক করার প্যাটার্ন দেখেই আমরা বুঝতে পারব, ব্লুটুথ মডিউলদুটি পরস্পরের রেঞ্জের মধ্যে আছে কি না।

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.