Arduino Tutorial (2020)- Membuat LED Berkedip-kedip dengan Pengaturan Waktu

Dalam video ini, tersedia tutorial untuk melakukan 2 eksperimen untuk menyalakan lampu Light Emitting Diode (LED) berdasarkan pengaturan waktu dengan menggunakan microcontroller Arduino.

Biasanya, LED digunakan sebagai indikator dalam alat IOT smart home, alat-alat pabrik (factory), alat-alat pertanian (farm), dan sebagainya.

Dalam eksperimen pertama, kita akan membuat sebuah LED menyala dengan pengaturan waktu. Video menjelaskan secara detil langkah yang harus dilakukan, mulai dari pemasangan komponen pada papan breadboard sampai menulis kode program dan mengunggah program ke papan Arduino.

Skema eksperimen pertama:

Kode eksperimen pertama:

#define LED_PIN 13

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(LED_PIN, HIGH);
  delay(1000);
  digitalWrite(LED_PIN, LOW);
  delay(1000);
}

Dalam eksperimen kedua, kita akan membuat beberapa LED menyala dengan pengaturan waktu. LED menyala secara bergantian berdasarkan pola yang diatur dalam fungsi for-loop. Disini juga dijelaskan mengenai mengapa kita perlu membuat coding secara efisien dan bagaimana melakukan refactoring.

Skema eksperimen kedua:

Kode eksperimen kedua:

#define LED1 13 // menempatkan LED1 pada PIN 13
#define LED2 12 // menempatkan LED2 pada PIN 12
#define LED3 8  // menempatkan LED3 pada PIN 8

void setup() {
  Serial.begin(9600); //program komunikasi atau setup untuk serial monitor dan kecepatan komunikasi (baudrate)
}

void behavior(int delay_time, int PIN1_status, int PIN2_status, int PIN3_status) {
    digitalWrite(LED1, PIN1_status); // menyalakan atau mematikan LED 1 pada PIN 13
    digitalWrite(LED2, PIN2_status); // menyalakan atau mematikan LED 2 pada PIN 12
    digitalWrite(LED3, PIN3_status); // menyalakan atau mematikan LED 3 pada PIN 8
    delay(delay_time); // memberikan delay waktu
}

void loop() {
  int time_pattern = 300; // Inisiasi waktu 0.3 detik
  for (int count = 5; count < 21; count++) {
    // PIN 1 menyala, PIN 2 mati, PIN 3 mati. Waktu diatur oleh variabel time_pattern. Semua nilai dikirimkan ke fungsi behavior
    behavior(time_pattern, HIGH, LOW, LOW); 
    // PIN 1 mati, PIN 2 menyala, PIN 3 mati. Waktu diatur oleh variabel time_pattern. Semua nilai dikirimkan ke fungsi behavior
    behavior(time_pattern, LOW, HIGH, LOW); 
    // PIN 1 mati, PIN 2 mati, PIN 3 menyala. Waktu diatur oleh variabel time_pattern. Semua nilai dikirimkan ke fungsi behavior
    behavior(time_pattern, LOW, LOW, HIGH); 
    time_pattern= time_pattern-(count^25);  // Nilai time_pattern berubah mengikuti loop
  }    
}

Daftar Komponen

  • Breadboard
  • Papan Arduino Uno
  • Resistor 220 Ohm
  • Lampu LED warna apapun
  • Beberapa kabel jumper
  • Kabel USB
Baca juga:  Arduino Tutorial (2020) - Menampilkan Pesan Animasi LCD 16x2 I2C

Memiliki pertanyaan? Silahkan memberikan komentar

Leave a Reply

Your email address will not be published. Required fields are marked *