Beranda › Artikel & Tutorial › tutorial
📘 Tutorial Resmi Pengajar ⭐ Modul Bahan Ajar Sekolah

Panduan Praktikum: Mengontrol WS dengan Arduino Uno di Virtual Lab

Administrator MicroLab
Administrator MicroLab
Administrator & Lead Developer
⏱️ 6 Menit Baca 🗓️ 14 September 2026 👁️ 503 Pembaca ❤️ 29 Suka
Panduan Praktikum: Mengontrol WS dengan Arduino Uno di Virtual Lab

1. Pengenalan & Tujuan Proyek

Dalam praktikum teknik elektronika, mikrokontroler dan Internet of Things (IoT), penguasaan antarmuka perangkat WS merupakan salah satu kompetensi inti dalam Kurikulum Merdeka maupun perancangan sistem cerdas modern. Melalui artikel dan modul praktikum interaktif ini, kita akan mempelajari arsitektur antarmuka, protokol komunikasi data, skematik pengkabelan yang presisi, serta implementasi logika pemrograman Arduino C++ yang efisien.

🎯 Target Pembelajaran (Learning Outcomes):

  • Memahami prinsip kerja dan arsitektur kelistrikan modul WS.
  • Mampu melakukan pengkabelan (wiring) antara mikrokontroler Arduino Uno dengan sensor/aktuator secara benar dan aman.
  • Menguasai fungsi pustaka (library) dan penulisan sketch firmware Arduino C++.
  • Melakukan simulasi langsung serta debugging real-time di simulator DexMicro Virtual Lab.

2. Kebutuhan Komponen & Alat

Sebelum memulai proses perakitan sirkuit, pastikan semua komponen perangkat keras telah disiapkan atau dimuat dalam canvas DexMicro Virtual Lab:

📦 Daftar Komponen & Alat yang Dibutuhkan

  • 1x Unit Arduino Uno R3 (ATmega328P)
  • 1x Unit Ws2812b
  • 1x Set Kabel Jumper Penghubung (Male-to-Male / Male-to-Female)
  • 1x Unit DexMicro Virtual Simulator Engine

3. Skematik & Simulator Interaktif Rangkaian

Berikut adalah simulator rangkaian interaktif langsung dari proyek WS. Anda dapat langsung menguji logika dan melihat respon sirkuit secara real-time dengan menekan tombol ▶ RUN dan ⏹ STOP di bawah ini:

Live Virtual Lab Simulator (Proyek #11) Klik RUN / STOP untuk simulasi
🔬 Buka Full Studio ↗
📌 Rangkaian canvas asli proyek WS dimuat langsung dari simulator DexMicro. ⚡ Real-Time Interactive Canvas

4. Tabel Panduan Pengkabelan (Pinout Connection)

Gunakan tabel referensi koneksi berikut untuk menghubungkan pin-pin modul ke board Arduino Uno secara tepat:

No Pin Modul / Komponen Pin Mikrokontroler Target Warna Kabel Tipe Sinyal & Fungsi
1 Ws2812b → vcc 5V
#ef4444
⚡ Sumber Daya Positif (Power VCC)
2 Ws2812b → din D13
#ef4444
🔌 Jalur Sinyal Digital / Analog
3 Ws2812b → gnd GND3
#ef4444
🔌 Ground Bersama (GND / 0V)

5. Source Code Program (Firmware Sketch)

Salin atau jalankan source code sketch Arduino C++ di bawah ini. Kode ini telah dioptimalkan dengan penanganan error, inisialisasi pin yang aman, serta dokumentasi baris komentar:

📄 main.ino (Arduino C++)
// MicroLab Virtual Laboratory & ControllersTech Tutorial
// WS2812B NeoPixel 8-LED Ring - Animations & Color Effects
#include <Adafruit_NeoPixel.h>

#define LED_PIN    13     // Pin Digital DIN terhubung ke Pin D6 Arduino
#define NUM_LEDS   8     // Jumlah LED NeoPixel pada ring (8 LEDs)
#define BRIGHTNESS 50    // Kecerahan awal (0 - 255)

// Inisialisasi objek strip NeoPixel
Adafruit_NeoPixel strip(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  Serial.begin(115200);
  delay(500);
  Serial.println(F("🚀 Initializing WS2812B NeoPixel 8-LED Ring..."));

  strip.begin();           // Inisialisasi driver NeoPixel
  strip.setBrightness(BRIGHTNESS);
  strip.show();            // Pastikan semua pixel mati saat awal
  Serial.println(F("✓ WS2812B Ready! Menjalankan animasi..."));
}

void loop() {
  Serial.println(F("✨ Effect 1: Color Wipe (Merah, Hijau, Biru)"));
  colorWipe(strip.Color(255, 0, 0), 50);    // Merah
  colorWipe(strip.Color(0, 255, 0), 50);    // Hijau
  colorWipe(strip.Color(0, 0, 255), 50);    // Biru

  Serial.println(F("🌈 Effect 2: Rainbow Cycle"));
  rainbow(20);

  Serial.println(F("💡 Effect 3: Theater Chase (Marquee)"));
  theaterChase(strip.Color(255, 180, 0), 70); // Oranye/Emas
  theaterChase(strip.Color(0, 255, 200), 70); // Cyan

  Serial.println(F("💨 Effect 4: Breathing Pulsating Effect"));
  breathingEffect(0, 150, 255, 10); // Cyan lembut

  delay(500);
}

// 1. Mengisi warna LED satu per satu berurutan
void colorWipe(uint32_t color, int wait) {
  for (int i = 0; i < strip.numPixels(); i++) {
    strip.setPixelColor(i, color);
    strip.show();
    delay(wait);
  }
}

// 2. Animasi Pelangi Halus (Rainbow Effect)
void rainbow(int wait) {
  for (long firstPixelHue = 0; firstPixelHue < 5 * 65536; firstPixelHue += 256) {
    strip.rainbow(firstPixelHue);
    strip.show();
    delay(wait);
  }
}

// 3. Efek Theater Chase (Lampu Berjalan / Rotasi)
void theaterChase(uint32_t color, int wait) {
  for (int a = 0; a < 10; a++) {
    for (int b = 0; b < 3; b++) {
      strip.clear();
      for (int c = b; c < strip.numPixels(); c += 3) {
        strip.setPixelColor(c, color);
      }
      strip.show();
      delay(wait);
    }
  }
}

// 4. Efek Pernapasan (Breathing Fade In / Fade Out)
void breathingEffect(uint8_t r, uint8_t g, uint8_t b, int wait) {
  for (int i = 5; i <= 150; i += 3) {
    strip.setBrightness(i);
    for (int p = 0; p < strip.numPixels(); p++) {
      strip.setPixelColor(p, strip.Color(r, g, b));
    }
    strip.show();
    delay(wait);
  }
  for (int i = 150; i >= 5; i -= 3) {
    strip.setBrightness(i);
    for (int p = 0; p < strip.numPixels(); p++) {
      strip.setPixelColor(p, strip.Color(r, g, b));
    }
    strip.show();
    delay(wait);
  }
  strip.setBrightness(BRIGHTNESS); // Kembalikan ke kecerahan normal
}

6. Penjelasan & Analisis Alur Program

Berikut adalah poin-poin krusial dalam struktur program sketch di atas:

  1. Inisialisasi & Deklarasi Pustaka: Mengikutsertakan header library yang dibutuhkan seperti <Wire.h> untuk protokol komunikasi I2C dua arah (SDA & SCL) atau header khusus modul terkait.
  2. Fungsi setup(): Melakukan inisialisasi peripheral dengan menentukan baud rate Serial Monitor (misalnya Serial.begin(9600) atau 115200), mengonfigurasi mode pin I/O (pinMode), dan memanggil fungsi begin() pada modul untuk pengujian perangkat keras.
  3. Fungsi loop(): Berisi siklus utama pembacaan sinyal input, eksekusi pemrosesan data matematika/logika, dan pembaruan sinyal aktuasi ke layar atau motor secara periodik tanpa lagging.
⚡ SIMULATOR SIAP PAKAI

Coba Langsung di Virtual Lab DexMicro

Buka proyek ini langsung di canvas simulator interaktif untuk merangkai kabel, mengubah baris kode, dan melihat animasi secara real-time tanpa perlu alat fisik.

🔬 Buka di Virtual Lab ➜

7. Penerapan di Dunia Nyata & Industri

Konsep dan rangkaian WS ini memiliki aplikasi luas dalam berbagai sektor industri modern, antara lain:

  • Sistem Smart Home & Otomasi Gedung: Monitoring parameter lingkungan, suhu, kelembaban, dan display status operasional.
  • Robotika & Mesin Otomatis: Antarmuka navigasi robot, pembacaan rintangan, dan kontrol aktuator servo presisi.
  • Peralatan Medis & Instrumentasi Laboratorium: Menampilkan pembacaan biometrik dan sinyal vital secara instan dan portabel.

8. Tips & Panduan Troubleshooting

  • Layar Tidak Menyala / Blank: Periksa koneksi pin VCC dan GND. Pastikan alamat I2C (biasanya 0x3C untuk OLED atau 0x27 untuk LCD) telah sesuai.
  • Data Serial Tidak Muncul: Pastikan baud rate pada Serial Monitor sama persis dengan angka di Serial.begin().
  • Tegangan Drop: Jika menggunakan motor stepper atau multi-servo, selalu gunakan sumber daya eksternal (baterai/adaptor) dan hubungkan semua GND bersama (Common Ground).
🏷️ Topik Terkait: #DexMicro #Virtual Lab #Arduino Uno #Tutorial IoT #Kurikulum Merdeka #Simulasi Elektronika
Administrator MicroLab
Tentang Penulis Administrator

Administrator MicroLab — DexMicro Lab Indonesia

Pengembang sistem simulasi mikrokontroler dan instruktur IoT.

👤 Buka Profil Penulis

📚 Artikel & Modul Terkait

tutorial • ⭐ Bahan Ajar

Panduan Praktikum: Mengontrol LED 1 dengan Arduino Uno di Virtual Lab

Panduan komprehensif merangkai dan memprogram LED 1 menggunakan Arduino Uno. Lengkap dengan skematik interaktif, tabel pinout, source code sketch C++, dan panduan simulasi.

tutorial • ⭐ Bahan Ajar

Panduan Praktikum: Mengontrol ESP32 KIRIM DATA IOT dengan ESP32 di Virtual Lab

Panduan komprehensif merangkai dan memprogram ESP32 KIRIM DATA IOT menggunakan ESP32. Lengkap dengan skematik interaktif, tabel pinout, source code sketch C++, dan panduan simulasi.

tutorial • ⭐ Bahan Ajar

Panduan Praktikum: Mengontrol FT LCD 2.4"/2.8" ILI9341 SPI (240x320) dengan Arduino Uno di Virtual Lab

Panduan komprehensif merangkai dan memprogram FT LCD 2.4"/2.8" ILI9341 SPI (240x320) menggunakan Arduino Uno. Lengkap dengan skematik interaktif, tabel pinout, source code sketch C++, dan panduan simulasi.

💬 Diskusi & Tanya Jawab 0 Komentar

💡 Gunakan bahasa yang sopan dan mendidik.
Belum ada komentar. Jadilah yang pertama memberikan tanggapan pada artikel ini!
💎

Tersedia di Versi Pro

PRO FEATURE

Fitur Perangkat & IoT Cloud

Fitur ini dirancang khusus untuk memonitoring mikrokontroler fisik (ESP32 / ESP8266) dan menghubungkan widget dashboard telemetri cloud secara real-time.

🚀 Buka Seluruh Akses Mulai Rp 5.000 (Aktif Selamanya):
  • Koneksi hingga 10+ Perangkat IoT Cloud & Dashboard Interaktif
  • Kapasitas hingga 25+ Proyek Sirkuit Tersimpan
  • Akses Penuh Seluruh Modul Praktikum & Kuis Evaluasi Guru
⭐ Lihat Paket & Upgrade Akun