Dimmer লাইট ফ্যান
Arduino নিয়ে কাজ করার অভিজ্ঞতা থাকলে খুব সহজেই আপনার বাসাটি চলে আসবে হাতের মুঠোয়। অবাক হচ্ছেন হয়তো, কিন্তু এই ধরণের একটি টিউটোরিয়াল থাকছে আজ। আমরা দেখবো কিভাবে ঘরের ১টি লাইট এবং ১টি ফ্যানকে হাতের মোবাইল দিয়ে খুব সহজেই নিয়ন্ত্রণ করা যায়। এই ক্ষেত্রে আমরা একটি অ্যাপ ও কিছু সার্কিট বোর্ডের সাহায্য নিবো। এই সম্পূর্ণ কাজটি করতে দরকার হবে Arduino Uno, Bluetooth HC-05 এবং 1 Channel Light Fan Dimmer Module. Bluetooth Module টি সার্কিট এবং এপের সাথে সংযোগ হবে। 1 Channel Light Fan Dimmer Module দিয়ে ফ্যান অন-অফ এর পাশাপাশি স্পীড নিয়ন্ত্রণ করবে। স্পীড নিয়ন্ত্রণ করার জন্য সার্কিটে রয়েছে একটি ট্রায়াক এবং লাইট অন অফ করার জন্য রয়েছে রিলে। RLY, DIM, Z-C, GND & 5V এই সকল পিনগুলো Arduino Uno এর সাথে কানেক্ট করে নিতে হবে সার্কিট অনুসরণ করে। মনে রাখতে হবে, এই ফ্যান এবং লাইট দুটি ডিভাইস এসি ২২০ ভোল্টের। সুতরাং ডিসি লাইট ফ্যান সংযোগ দিয়ে চেষ্টা করা যাবে না।
Bluetooth Module Breakout (HC-05) নিয়ে কিছু তথ্য জেনে নেওয়া জরুরী। অনেক সময় সার্কিট সঠিক সংযোগ দেওয়ার পরও এপের সাথে ইন্টারফেস হচ্ছেনা। এর কারণ হতে পারে, Bluetooth Rx-Tx এর তার দুটিতে সমস্যা অথবা Bluetooth এর সমস্যা। মার্কেটগুলোতে এখন HC-05 এর ৩টি ভার্শন রয়েছে VERSION:2.0 VERSION:3.0 VERSION:4.0। এই VERSION:4.0 আবার দুইটি তারিখে মার্কেটে বের হয়েছে যার একটির ফার্মওয়্যার সমস্যা রয়েছে। যদি সমস্যা জনিত Bluetooth Module Breakout (HC-05) দিয়ে সংযোগ দেওয়া হয়, তাহলে কাজ করবে না। আরেকটি বিষয় লক্ষণীয় Bluetooth Baud Rate 9600 সেট করে নিতে হবে। অনেক সময় Bluetooth এর এই Baud Rate 115200 দেওয়া থাকে। মনে রাখতে হবে কোড এবং হার্ডওয়ার Baud Rate একই হতে হবে অন্যথা কাজ করবেনা।
প্রয়োজনীয় কম্পোনেন্টঃ
কম্পোনেন্টের তালিকা নিচে প্রদান করা হলো।
ক্রমিক নং | কম্পোনেন্টের নাম | মডেল | পরিমাণ | লিংক |
১ | 1 Channel Light Fan Dimmer Module | MOD-00204 | ১টি | কম্পোনেন্ট লিংক |
২ | Arduino Uno R3 (China) | ARD-00028 | ১টি | কম্পোনেন্ট লিংক |
৩ | Bluetooth Module Breakout (HC-05) | WIR-00013 | ১টি | কম্পোনেন্ট লিংক |
৪ | Power Cable 2 pin | C&C-00006 | ১টি | কম্পোনেন্ট লিংক |
৫ | Male To Female Jumper Wire – Single | C&C-00071 | ১০টি | কম্পোনেন্ট লিংক |
৬ | Adapter 12V | MIS-00131 | ১টি | কম্পোনেন্ট লিংক |
৭ | AC Light (Bulb, Tube, Fluorescent etc) | ১টি | ||
৮ | Fan (AC 220V) | ১টি |
কম্পোনেন্টের লিংকগুলো সমস্যা হলে চিন্তিত না হয়ে, মডেল নাম্বার দিয়ে ওয়েবসাইটে সার্চ করলেও পাওয়া যাবে। ওয়েবসাইট লিংক www.techshopbd.com
সার্কিট কানেকশনঃ
সার্কিট ডায়াগ্রাম দেখে কানেকশন করতে হবে। প্রোগ্রাম আপলোড দেওয়ার পূর্বে HC-05 এর TX-RX কানেকশন বিচ্ছিন্ন করে নিতে হবে। আপলোড হলে পুনরায় Rx-Tx কানেকশন দিতে হবে।
ডেমো কোডঃ
#include <TimerOne.h> // Avaiable from http://www.arduino.cc/playground/Code/Timer1 volatile int i=0; // Variable to use as a counter volatile boolean zero_cross=0; // Boolean to store a "switch" to tell us if we have crossed zero int FAN = 3; // Output to Opto Triac int LIGHT = 7; // Relay-1 int dim = 128; // Dimming level (0-128) 0 = on, 128 = 0ff int pas = 14; // step for count; int freqStep = 75; // This is the delay-per-brightness step in microseconds. char BTData; // incoming data from serial Bluetooth) void setup() { // Begin setup Serial.begin(9600); // initialization pinMode(FAN, OUTPUT); // Set the Triac pin as output pinMode(LIGHT, OUTPUT); // Set the Relay pin as output attachInterrupt(0, zero_cross_detect, RISING); // Attach an Interupt to Pin 2 (interupt 0) for Zero Cross Detection Timer1.initialize(freqStep); // Initialize TimerOne library for the freq we need Timer1.attachInterrupt(dim_check, freqStep); // Use the TimerOne Library to attach an interrupt } void zero_cross_detect() { zero_cross = true; // set the boolean to true to tell our dimming function that a zero cross has occured i=0; digitalWrite(FAN, LOW); } // Turn on the TRIAC at the appropriate time void dim_check() { if(zero_cross == true) { if(i>=dim) { digitalWrite(FAN, HIGH); // turn on light i=0; // reset time step counter zero_cross=false; // reset zero cross detection } else { i++; // increment time step counter } } } void Wireless() { BTData = Serial.read(); // read byte if(BTData == 'a') {if(dim<127){dim = dim + pas; if(dim>127) {dim=128;}}} // Step DOWN if(BTData == 'A') {if(dim>5){dim = dim - pas; if(dim<0) {dim=0;}}} // Step UP if(BTData == 'B') {dim=0;} // power is 100% (on) if(BTData == 'b') {dim=128;} // power is 0% (off) if(BTData == 'C') {digitalWrite(LIGHT, HIGH); } // LIGHT ON if(BTData == 'c') {digitalWrite(LIGHT, LOW); } // LIGHT OFF } void loop() { delay (100); Wireless(); }
এপের ব্যবহারঃ
সার্কিট কানেকশন সম্পূর্ণ করে কোড আপলোড দিতে হবে। অতপর WirelessSmartSwitchV.1.1 এই এপটি ডাউনলোড করে ইন্সটল করে নিতে হবে।
এপটি চালু করে উপরের ডানপাশে ৩টি ডট দেখতে পাবো সেখানে ক্লিক করতে হবে। অতপর Connect ক্লিক করতে হবে। এবার Allow দিলে Bluetooth On হবে। যদি পূর্বে থেকে HC-05 Pair করা না থেকে থাকে, তাহলে bluetooth Pair অপশন থেকে করে নিতে হবে। Pair Password 1234. পুনরায় এপটি চালু করলে HC-05 লিস্টে দেখতে পাবো এবং তাতে ক্লিক করলেই কানেকশন হয়ে যাবে।
এবার Speed + – প্রেস করলে ফ্যানের স্পিড বৃদ্ধি এবং হ্রাস পাবে। Fan ও Light-1 এদের পাশের ON-OFF বাটন প্রেস করলে কাঙ্ক্ষিত ডিভাইসটি নিয়ন্ত্রণ হবে। এপটি মূলত ২টি লাইট ও একটি ফ্যানের জন্য। এই টিউটোরিয়ালে যেহেতু ১টি লাইট ব্যবহার করা হয়েছে, সেই জন্য Light-2 কার্যকর থাকবে না।
একটি ফ্যান এবং ২টি লাইটের জন্য ভিজিট করুন।
আউটপুটঃ
সতর্কতাঃ
১। হাই ভোল্টেজ (২২০ ভোল্ট) নিয়ে কাজ করার পূর্ব অভিজ্ঞতা জরুরী।
২। সার্কিট কানেকশন সম্পূর্ণ নিশ্চিত না হয়ে, হাই ভোল্টেজ (২২০ ভোল্ট) সাপ্লাই দেওয়া থেকে বিরত থাকি।
৩। Bluetooth HC-05 এর Baud Rate (9600) আছে এটা নিশ্চিত হয়ে নিতে হবে।
৪। প্রতিটি জাম্পার ওয়্যার মিটার দ্বারা কন্টিনিউটি পরীক্ষা করেই কানেকশন সম্পন্ন করতে হবে।
ভাই এই কোর্ড কাজ করেনা, অনুগ্রহ করে পুনরায় কোডিং করে দিলে উপকার হতো। ধন্যবাদ
প্রিয় গ্রাহক, কোড সম্পূর্ণ টেস্টেড। সতর্কতাগুলো অনুসরণ করুন।
এটা রেডি মেট বিক্রি করবেন অর্ডার করলে? Kindly price soho janaben
প্রিয় গ্রাহক, এটা রেডি মেট বিক্রয় করা হয় না। প্রয়োজনীয় কম্পোনেন্টের তালিকা সাথে লিঙ্ক দেওয়া আছে, প্রয়োজনে কম্পোনেন্ট গুলো সংগ্রহ করে টিউটোরিয়ালের নির্দেশনা অনুসরণ করে তৈরি করুন।
Error dekhai,,,TimeOne.h file missing
kiavbe solve korbo janaben plz
https://www.arduino.cc/reference/en/libraries/timerone/ এই লিংক থেকে লাইব্রেরী 1.1.0 (latest) ডাউনলোড করে নিন। তারপর এড করে নিলেই হবে।
Apnder code sob thik moto kaj kore,,,
but bluetooth disconnect holei sob golo Swich ( On ) hoye jai ,, aita solve korbo kivabe ??
ai problem ar karone use korte parsi nah ,,
fan ON kore App theke ber holei ,,,LIGHT Auto ON hoye jai ,,,
onek boro akta problem aita ,, asa kori amke ai problem ar somadhan diben …
Bluetooth ডিসকানেক্ট হওয়ার সাথে কোন সিগন্যাল পরিবর্তন হওয়ার কথা না। কিন্তু ফ্যান অন করে অ্যাপ থেকে বের হলে Bluetooth ডিসকানেক্ট হবে, কিন্তু লাইটের সিগন্যাল পরিবর্তন হবে না। এই মুহূর্তে আমাদের স্টকে প্রোডাক্টটি নেই, এভেইলেবল হলে পুনরায় টেস্ট করে দেখবো।