আমরা সাধারণত বাসাবাড়িতে বিভিন্ন ধরণের ইলেকট্রনিক্স ডিভাইস চালাই যা আমাদের নিজের
মতো করে বন্ধ করতে হয়। কিন্তু এতে অনেক সময় ডিভাইসটি নষ্ট  হয়ে যায়
ব্যান চালানোর সময় আমাদের দাড়িয়ে থাকতে হয় মসলাগুঁড়া না হওয়া পর্যন্ত। কিন্তু আমি আজকের প্রজেক্টে এমন একটি ডিভাইস তৈরি করবো যা আমার প্রয়োজনে টাইম সেট করে দিলে ডিভাইসটি অটোমেটিক টাইমিং  করে বন্ধ করে দিবে
আপনি যে কোন ডিভাইস এটি চালালে আর টাইম সেট করে দিলে সেটি সেই টাইমে লাইন বন্ধ করে দিবে।
#include <LiquidCrystal.h>
LiquidCrystal lcd(7,6,5,4,3,2);
const int set = 8;
int hours=10;
int start=11;
int relay=9;
long b=0,h=0;
long t=0;
int buttonState = 0;
int lastButtonState = 0;

void setup() {
 
  pinMode(set,INPUT);
  pinMode(hours,INPUT);
  pinMode(relay,OUTPUT);
  pinMode(start,INPUT);
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("Adjustable Timer"); 
}
int timer( int b,int h)
{
         if(b<=9)
           {
            lcd.setCursor(8,1);
            lcd.print(0);
            lcd.setCursor(9,1);
            lcd.print(b);
  }
     else{lcd.setCursor(8,1);
     lcd.print(b);}
         lcd.setCursor(0,1);
         lcd.print("=====");
         lcd.setCursor(7,1);
         lcd.print(":");
         lcd.setCursor(10,1);
         lcd.print("=====");
     if(h<=9)
           {
            lcd.setCursor(5,1);
            lcd.print(0);
            lcd.setCursor(6,1);
            lcd.print(h);
          }
     else{lcd.setCursor(5,1);
     lcd.print(h);}
      }
void loop()
    {
     
      buttonState = digitalRead(set);
        if (buttonState != lastButtonState)
       {
        if(buttonState == HIGH)
         {
          lcd.clear();
           lcd.print("Set time in min:");
           b++;
           timer(b,h);
           }
          lastButtonState = buttonState;
          }
          if (digitalRead(hours)== HIGH)
          {
              lcd.clear();
              lcd.print("Set time in hours");
              h++;
              timer(b,h);
              while(digitalRead(hours)==HIGH);
              } 
            if(digitalRead(start)==HIGH)
          {
             lcd.clear();
             t=((h*3600)+(b*60))*1000;
             lcd.print("Timer is set for");
             timer(b,h);
             digitalWrite(relay,HIGH);
             delay(t);
             digitalWrite(relay,LOW);
             while(digitalRead(start) == HIGH );
            }
             }

Comments

neamatullah said…
jak oboseshe akta site pelam..calae jan bro
ধন্যবাদ আপনার কমেন্টের জন্য। ব্রু সাথে থাকো আরও
অনেক প্রজেক্ট দিবো