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 কানেকশন দিতে হবে।

Dimmer - Circuit

 

Dimmer - Connection

ডেমো কোডঃ

#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) আছে এটা নিশ্চিত হয়ে নিতে হবে।

৪। প্রতিটি জাম্পার ওয়্যার মিটার দ্বারা কন্টিনিউটি পরীক্ষা করেই কানেকশন সম্পন্ন করতে হবে।

4.6/5 - (20 votes)
Share with your friends
Default image
Nur Mohammad
Senior Research Engineer | Techshop Bangladesh | E-mail: nur@techshopbd.com
Articles: 38

8 Comments

  1. ভাই এই কোর্ড কাজ করেনা, অনুগ্রহ করে পুনরায় কো‌ডিং করে দিলে উপকার হতো। ধন্যবাদ

  2. এটা রেডি মেট বিক্রি করবেন অর্ডার করলে? Kindly price soho janaben

    • প্রিয় গ্রাহক, এটা রেডি মেট বিক্রয় করা হয় না। প্রয়োজনীয় কম্পোনেন্টের তালিকা সাথে লিঙ্ক দেওয়া আছে, প্রয়োজনে কম্পোনেন্ট গুলো সংগ্রহ করে টিউটোরিয়ালের নির্দেশনা অনুসরণ করে তৈরি করুন।

  3. 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 ডিসকানেক্ট হবে, কিন্তু লাইটের সিগন্যাল পরিবর্তন হবে না। এই মুহূর্তে আমাদের স্টকে প্রোডাক্টটি নেই, এভেইলেবল হলে পুনরায় টেস্ট করে দেখবো।

Leave a Reply

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