Breaking

Friday, September 4, 2020

Timer OFF Relay with Arduino Tutorial

Hari ini Arduino Indonesia akan berbagi sebuah alat yang serbaguna, yaitu Timer Off Relay menggunakan Arduino. Alat ini dapat digunakan sebagai pewaktu mundur atau counter down otomatis untuk mematikan sebuah perangkat elektronika. Silahkan sesuaikan dengan kebutuhan.


Baca Juga : Counter Up dan Counter Down dengan Display 7 Segment 4 Digit With Arduino Uno.


Berikut ini adalah Schematic Diagram Timer Off Relay with Arduino :



Untuk menggunakan Module ini Anda perlu Library khusus untuk TM1637. Silahkan DOWNLOAD DISINI.

 

Berikut ini adalah Hardware yang dibutuhkan :
1. Arduino Nano >>> BELI DISINI
2. Module TM1637 >>> BELI DISINI
3. Module Relay 1 Channel >>> BELI DISINI

4. Kabel Jumper Secukupnya >>> BELI DISINI


Berikut ini adalah Code Programnya :

/***************************

Timer Off Relay with Arduino Tutorial

Oleh : Arduino Indonesia
Website : www.arduinoindonesia.id
Toko Online : www.workshopelectronics3in1.com
Blog : www.edukasielektronika.com

Copyright @2020

****************************/

#include <TM1637Display.h>
#define CLK 10
#define DIO 9
TM1637Display display(CLK, DIO);

int timer_menit=5;  //Setting waktu untuk Menit
int timer_detik=0;  //Setting waktu untuk Detik

int  firstnum=0;
int  secondnum=0;
int  thirdnum=0;
int  fournum=0;

int Relay = 4;

void setup()
{
 pinMode(Relay, OUTPUT);
 display.setBrightness(7);
 delay(1500);
 digitalWrite(Relay, LOW);
}

void loop()
{
  uint8_t titikdua;
  titikdua = 0x80 ;
  display.setSegments(&titikdua, true, 1);
 
  while (timer_menit == 0 && timer_detik == 0)
  {
    digitalWrite(Relay, HIGH);
    uint8_t data[] = {0b00111111, 0b00111111, 0b00111111, 0b00111111};
    display.setSegments(data);
    titikdua = 0x80 ;
    display.setSegments(&titikdua, true, 1);
  }
 
  if (timer_menit > 9)
  {
    firstnum = timer_menit/10%10;
    secondnum = timer_menit%10;
  }

  else
  {
    secondnum = timer_menit;
  }
 
  if (timer_detik > 9)
  {
    thirdnum = timer_detik/10%10;
    fournum = timer_detik%10;
  }
 
  else
  {
    thirdnum = 0;
    fournum = timer_detik;
  }

  uint8_t data[] = {0x00, 0x00, 0x00, 0x00};
  display.setSegments(data);
  titikdua = 0x80;
  display.setSegments(&titikdua, true, 1);
    
  if (timer_menit > 9)
  {
    display.showNumberDec(firstnum,false,1,0);
  }
 
  if (timer_menit > 0)
  {
    display.showNumberDec(secondnum,false,1,1);
  }

  if (timer_detik > 9 || timer_menit > 0)
  {
    display.showNumberDec(thirdnum,false,1,2);
  }
 
  display.showNumberDec(fournum,false,1,3);
  timer_detik=timer_detik-1;
  delay(1000);  // Delay of 1 second

  if (timer_detik == -1)
  {
    timer_menit=timer_menit-1;
    timer_detik=59;
  }
}

 

Selamat Mencoba !!!!!