নাহ। ছবির টি শার্টটি দেখতে খুব একটা স্মার্ট নয়, কিন্তু কাজে অবশ্যই স্মার্ট। এই টি-শার্টটি পরলে আপনি শার্টের সাথে লাগানো সুইচের মাধ্যমেই বাসার বাতি পাখাসহ বিভিন্ন লোড অন-অফ করতে পারবেন। চলুন দেখা যাক কিভাবে তৈরী করবেন এই ব্লুটুথ টি-শার্ট।
প্রয়োজনীয় উপকরণঃ স্মার্ট টি-শার্ট তৈরী এবং পরীক্ষার জন্য যে যে জিনিসগুলো আমরা ব্যবহার করেছি সেগুলোর তালিকা নিচে দেওয়া হল।
প্রয়োজনীয় যন্ত্রপাতি | পরিমাণ |
1)LilyPad Arduino 328 Main Board |
1 |
2)Arduino UNO R3 | 1 |
3)Bluetooth module HC-05 | 2 |
4)FTDI USB to serial converter 3V3-5V | 1 |
5)Dual toggle switch | 1 |
6)Male to female jumpers | 8 |
7)Female to female jumpers | 3 |
8)Male to male jumper | 4 |
9)Digital AC voltage dimmer | 1 |
10)Lithium Ion Battery – 2000mAh (You can use Nokia battery instead) | 1 |
11)T-shirt | 1 |
12)Light bulb with holder | 1 |
13)Velcro(Optional) | Two small pieces |
14)Glue gun | 1 |
15)Glue stick | 1 |
16)Power cable 2 pin | 1 |
17)Soldering Iron | 1 |
18)Solder lead | 1 |
এই এক্সপেরিমেন্টে ব্লুটুথ মডিউলের মাস্টার-স্লেভ অপারেশন প্রয়োগ করতে হবে। এক্ষেত্রে, আমরা আমাদের টি-শার্টের সাথে সংযুক্ত ব্লুটুথ মডিউলকে মাস্টার এবং আমাদের লোডের সাথে সংযুক্ত ব্লুটুথকে স্লেভ হিসেবে কনফিগার করব।
কাজেই এই এক্সপেরিমেন্টের প্রথম কাজ হবে মাস্টার এবং স্লেভকে কনফিগার করা।
স্লেভ কনফিগারেশনঃ
আরডুইনো উনো এবং যেকোনো একটি ব্লুটুথের মধ্যে নিচের কানেকশনটি সম্পন্ন করুন।
rduino Uno R3 | Bluetooth module |
VCC | VCC |
GND | GND |
10 | Tx |
11 | Rx |
আপলোড হয়ে গেলে আরডুইনোর ইউএসবি কেবল খুলে রাখুন।
ব্লুটুথ মডিউলের গায়ের বাটনটি প্রেস করা অবস্থায় আরডুইনোকে কম্পিউটারের সাথে কানেক্ট করুন। ব্লুটুথের সুইচটি তিন সেকেন্ডের মতো চেপে ধরে রাখতে হবে। তাহলে ব্লুটুথ মডিউলটি AT command মোডে প্রবেশ করবে। এরপর বাটনটি ছেড়ে দিন। সিরিয়াল মনিটর ওপেন করুন।
এরপর এক এক করে নিচের মেসেজগুলো পাঠান। 1)AT কানেকশন ঠিক থাকলে উত্তর আসবে OK। 2) AT+UART? উত্তর আসবে +UART:9600,0,0 OK 3)AT+ROLE? উত্তর আসবে +ROLE:0 OK 4) AT+ADDR?এই কমান্ডটি টাইপ করার পর সিরিয়াল মনিটরে ব্লুটুথ মডিউলের অ্যাড্রেস দেখা যাবে। ধরা যাক ব্লুটুথ মডিউলের অ্যাড্রেস 9***:**:*****। এড্রেসটি কোথাও লিখে রাখুন।
মাস্টার কনফিগারেশনঃস্লেভ মডিউলের মত করেই মাস্টার মডিউলকে আরডুইনোর সাথে কানেক্ট করুন। ব্লুটুথ মডিউলের পাওয়ার বাটন চেপে ধরে আরডুইনোকে কম্পিউটারের সাথে কানেক্ট করুন। তিন সেকেন্ড পর পাওয়ার বাটনটি ছেড়ে দিন। সিরিয়াল মনিটর ওপেন করে নিচের মেসেজগুলো পাঠান।
1)AT কানেকশন ঠিক থাকলে উত্তর আসবে OK। 2) AT+UART? উত্তর আসবে +UART:9600,0,0 OK। 3)AT+ROLE=1 উত্তর আসবে OK। 4)AT+CMODE=0 উত্তর আসবে OK। 5)AT+BIND= 9***,**,*****= চিহ্নের পর স্লেভের অ্যাড্রেস লিখতে হবে। লক্ষনীয় বিষয় হল, স্লেভ কনফিগারেশনের সময়ে আমরা যে অ্যাড্রেসটি পেয়েছি সেটায় দুটি সেমিকোলন আছে। উপরের কমান্ডে সেমিকোলনের জায়গায় কমা দিতে হবে। সঠিকভাবে কমান্ড লিখে সেন্ড করলে উত্তর আসবে OK।
মাস্টার এবং স্লেভ কনফিগারেশন এখানেই শেষ।
আমাদের মনে রাখতে হবে, মাস্টার-স্লেভ অপারেশনের ক্ষেত্রে স্লেভকে আগে এবং মাস্টারকে পরে পাওয়ার দিতে হবে। মাস্টার এবং স্লেভ উভয় মডিউলে পাওয়ার দেবার পর যদি দেখা যায় প্রতি দুই সেকেন্ড পরপর দুটি মডিউলের লাল এলইডি জ্বলা-নেভা করছে তাহলে বুঝে নিতে হবে যে মাস্টার এবং স্লেভের ভেতর কানেকশন সফলভাবে স্থাপিত হয়েছে।
মাস্টার আরডুইনোর কোডঃমাস্টার আরডুইনোটি টি শার্টের সাথে সংযুক্ত থাকবে। তাই আমরা এক্ষেত্রে বেছে নিয়েছি LilyPad Arduino 328 Main Board। লিলিপ্যাড কাপড়ে সেলাইযোগ্য আরডুইনো বোর্ড। এটিই ধোলাইযোগ্যও বটে। লক্ষ করুন, লিলিপ্যাডে কোনো ইউএসবি টু সিরিয়াল কনভার্টার নেই। তাই লিলিপ্যাডে কোড আপলোড করতে আমরা বেছে নিয়েছি FTDI USB to serial converter3V3- 5V। ইউএসবি টু সিরিয়াল কনভার্টারের সাথে লিলিপ্যাডের মধ্যে নিচের কানেকশনটি সম্পন্ন করি।
Lilypad | FTDI |
Vcc | Vcc |
GND | GND |
Tx | Rx |
Rx | Tx |
DTR | DTR |
const int buttonPin = 2; int buttonState = 0; #include <SoftwareSerial.h> SoftwareSerial mySerial(10, 11); // RX, TX void setup() { pinMode(buttonPin, INPUT); // 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 buttonState = digitalRead(buttonPin); if (mySerial.available()) { Serial.write(mySerial.read()); } if (Serial.available()) { mySerial.write(Serial.read()); } if (buttonState == HIGH) { // turn LED on: mySerial.write('H'); } else { // turn LED off: mySerial.write('L'); } }স্লেভ আরডুইনো কোডঃ স্লেভ হিসেবে ব্যবহার করা হবে আরডুইনো উনো। আরডুইনো উনোতে নিচের কোডটি আপলোড করি।
int LED=13; char txt; #include <SoftwareSerial.h> SoftwareSerial mySerial(10, 11); // RX, TX void setup() { pinMode(LED,OUTPUT); Serial.begin(57600); // while (!Serial) { // // } mySerial.begin(9600); } void loop() { if (Serial.available()) { mySerial.write(Serial.read()); } if (mySerial.available()) { txt = mySerial.read(); Serial.write(txt); if(txt == 'H') { digitalWrite(LED,HIGH); } else if(txt == 'L') { digitalWrite(LED,LOW); } //Serial.write (txt); } }লোড কানেকশনঃ আমাদের স্লেভ অংশটি নিচের কম্পোনেন্টগুলো দিয়ে গঠিত। ক) ARduino UNO -R3 খ)উপরে স্লেভ হিসেবে কনফিগার করা HC-05 bluetooth module গ) Digital AC voltage dimmer ঘ)হোল্ডারসহ AC bulb এক এক করে নিচের কানেকশনগুলো সম্পন্ন করুন। ১) আরডুইনো এবং ব্লুটুথ মডিউলের মধ্যে নিচের কানেকশনটি সম্পন্ন করুন।
Arduino Uno R3 | HC-05 Bluetooth module |
VCC | VCC |
GND | GND |
10 | Tx |
11 | Rx |
Arduino Uno R3 | Digital AC voltage dimmer |
VCC | 5V |
GND | – |
13 | Relay |
এই কম্পোনেন্টগুলোর মধ্যে শুধুমাত্র লিলিপ্যাড ছাড়া আর কোনোটিই সেলাইযোগ্য নয়। তাই আমরা এই এক্সপেরিমেন্ট কন্ডাকটিভ সুতা ব্যবহার করতে পারিনি। বাধ্য হয়েই আমাদের ব্যবহার করতে হয়েছে গ্লু গান এবং স্টিক।
১)প্রথমে লিলিপ্যাডের + পিনে দুটি ,- ,2 10 ,11 পিনে একটি করে মোট ছয়টি মেল টু ফিমেল জাম্পার সল্ডার করি।
২) এরপর গ্লু গান দিয়ে লিলিপ্যাড, ডুয়েল টোগোল সুইচ এবং ব্লুটুথ মডিউলকে টি শার্টের সাথে সংযুক্ত করি।৩)ব্যাটারিটি টি শার্টের সাথে যুক্ত করতে আমরা ব্যবহার করেছি দুই টুকরো ভেলক্রো। কারন, আমরা চাচ্ছিলাম ব্যাটারিটি যখন ইচ্ছে টি-শার্টে লাগাতে, যখন ইচ্ছে খুলে রাখতে। আপনারা চাইলে স্থায়ীভাবে গ্লু দিয়েও লাগিয়ে নিতে পারেন।
এবার টি শার্টে বসানো কম্পোনেন্টগুলোর মধ্যে নিচের কানেকশনগুলো সম্পন্ন করি।Arduino Lilypad | Bluetooth module HC-05 |
+ | VCC |
– | GND |
10 | Tx |
11 | Rx |
Arduino Lilypad | Dual toggle switch |
+ | VCC |
GND | GND |
2 | Q1 |
Arduino Lilypad | Battery |
VCC | + |
GND | – |