Selamat datang di dunia mikrokontroler! Jika Anda baru pertama kali memegang Arduino dan bingung harus mulai dari mana, Anda berada di tempat yang tepat. Di balik kepintaran teknologi modern seperti pintu yang terbuka otomatis atau lampu jalan yang menyala saat magrib, terdapat sebuah "otak" kecil bernama mikrokontroler.
Pada tutorial pertama ini, kita tidak hanya akan menyalakan lampu LED, tetapi kita akan membuatnya menjadi "pintar". Kita akan membuat tiruan lampu jalan raya: Lampu yang menyala otomatis saat ruangan gelap, dan mati sendiri saat ruangan terang. Melalui proyek ini, Anda akan memahami tiga konsep paling fundamental dalam dunia mikrokontroler: Input (Membaca data dari lingkungan), Proses (Logika pengambilan keputusan), dan Output (Melakukan tindakan fisik).
1. Berkenalan dengan "Aktor" Rangkaian Kita
Untuk proyek ini, siapkan perlengkapan Starter Kit Anda. Berikut adalah komponen yang kita butuhkan:
- Board Arduino UNO: Ini adalah otak yang memproses instruksi.
- Breadboard: Papan prototipe tanpa solder untuk menghubungkan komponen. Ingat aturannya: lubang vertikal (tengah) saling terhubung, dan lubang horizontal (pinggir) biasanya untuk power pasokan listrik.
- Lampu LED: Bertindak sebagai komponen output. Kaki yang panjang (Anoda) dipasang ke kutub positif (+), sedangkan kaki pendek (Katoda) ke kutub negatif (-).
- Resistor 220 Ohm: Penahan arus listrik yang digunakan agar LED tidak terbakar (Gelang warna: Merah-Merah-Cokelat).
- Sensor LDR (Light Dependent Resistor): Sensor cahaya (input) yang nilai hambatannya berubah tergantung cahaya.
- Resistor 10k Ohm: Resistor pendamping untuk sensor (Gelang warna: Cokelat-Hitam-Oranye).
- Kabel Jumper: Beberapa kabel tipe Male-to-Male.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2. Teori Esensial: Rahasia Voltage Divider
Sebelum merangkai, mari memahami konsep di balik LDR dan Voltage Divider.
LDR adalah komponen yang nilai hambatannya berubah-ubah sesuai dengan intensitas cahaya yang diterimanya. Namun, Arduino hanya bisa membaca tegangan listrik (Volt), bukan hambatan (Ohm). Untuk mengubah perubahan hambatan LDR menjadi perubahan tegangan yang bisa dibaca Arduino, kita menggunakan teknik yang disebut Voltage Divider (Pembagi Tegangan).

Caranya adalah dengan memasang LDR dan Resistor 10k secara seri berurutan. Titik pertemuan antara kedua komponen ini akan menghasilkan tegangan yang naik-turun seiring perubahan cahaya. Titik inilah yang dihubungkan ke Pin Analog (A0) pada board Arduino. Secara matematis, rumus pembagi tegangan ini adalah : ![]()
3. Panduan Perakitan (Hardware)
Langkah 1 adalah merangkai komponen di Breadboard. Demi keamanan, pastikan kabel USB Arduino tidak terhubung ke komputer saat merangkai komponen.
A. Rangkaian Output (Lampu LED)
- Tancapkan kaki panjang LED (Anoda) dan kaki pendek (Katoda) pada dua baris yang berbeda di breadboard.
- Hubungkan pin Digital 9 pada Arduino ke baris kaki panjang LED.
- Hubungkan satu kaki Resistor 220 Ohm ke baris kaki pendek LED, dan kaki resistor lainnya ke jalur GND (Minus/Biru) di pinggir breadboard.
- Hubungkan jalur GND di breadboard tersebut ke pin GND pada board Arduino.
B. Rangkaian Input (Sensor LDR)
- Tancapkan kedua kaki LDR pada dua baris yang berbeda di breadboard (misalnya baris A dan baris B).
- Hubungkan pin 5V Arduino ke baris A.
- Di baris B, kita akan membuat "titik cabang". Tancapkan tiga hal pada baris B ini: kaki kedua LDR, satu kaki Resistor 10k Ohm (kaki satunya lagi ke jalur GND/Minus di pinggir breadboard), dan sebuah kabel jumper yang menuju ke pin A0 pada Arduino.
4. Menghidupkan Rangkaian dengan Kode (Software)
Bahasa pemrograman Arduino berbasis C++. Program Arduino selalu memiliki dua struktur utama, yaitu setup() dan loop(). Bagian setup() hanya dijalankan 1 kali saat Arduino baru dinyalakan, biasanya digunakan untuk menentukan fungsi pin apakah sebagai INPUT atau OUTPUT. Sedangkan bagian loop() dijalankan terus-menerus berulang kali, dan di sinilah logika utama program Anda berada.
Langkah 2 adalah menulis kode program. Buka aplikasi Arduino IDE di komputer Anda, hapus semua kode bawaan yang ada, lalu salin kode di bawah ini:
// --- 1. DEKLARASI VARIABEL ---
int sensorPin = A0; // Jalur masuk data dari sensor LDR [cite: 50, 114]
int ledPin = 9; // Jalur keluar perintah untuk menyalakan LED [cite: 51, 115]
int nilaiSensor = 0; // Wadah untuk menyimpan angka hasil bacaan sensor [cite: 52, 116]
// --- 2. PENGATURAN AWAL (Dijalankan 1 Kali) ---
void setup() {
pinMode(ledPin, OUTPUT); // Menetapkan Pin 9 sebagai Output (Pemberi perintah) [cite: 56, 119]
Serial.begin(9600); // Membuka jalur komunikasi ke layar komputer [cite: 56, 120]
}
// --- 3. PROGRAM UTAMA (Dijalankan Terus Menerus) ---
void loop() {
// Membaca kondisi lingkungan
nilaiSensor = analogRead(sensorPin); // Membaca tegangan di A0 (skala 0-1023) [cite: 60, 123]
// Menampilkan angka bacaan ke komputer
Serial.println(nilaiSensor); // Mengirim angka ke Serial Monitor agar bisa kita lihat [cite: 62, 125]
// Logika Pengambilan Keputusan (Kondisi) [cite: 63, 126]
if (nilaiSensor < 500) { // JIKA nilai cahaya rendah (Kondisi Gelap) [cite: 64, 127]
digitalWrite(ledPin, HIGH); // MAKA nyalakan listrik ke LED [cite: 65, 128]
}
else { // JIKA TIDAK (Kondisi Terang) [cite: 67, 132]
digitalWrite(ledPin, LOW); // MAKA matikan listrik ke LED [cite: 70, 133]
}
// Memberi jeda agar program berjalan stabil [cite: 72]
delay(100); // Jeda 0,1 detik sebelum mengulang agar program tidak terlalu lelah [cite: 73, 135]
}
Bedah Istilah Penting:
analogRead(pin): Ini adalah "mata" Arduino yang membaca sensor yang nilainya bervariasi (seperti cahaya). Perintah ini mengonversi tegangan analog menjadi angka digital 0 hingga 1023.if - else: Ini adalah "otak" pengambil keputusan yang mengatakan, "JIKA nilainya di bawah 500, tolong nyalakan lampunya. SELAIN ITU, matikan saja".digitalWrite(pin, HIGH/LOW): Mengirim perintah "Nyala Full" (HIGH) atau "Mati Total" (LOW).pinMode: Menentukan peran sebuah lubang pin.Serial Monitor: Layar di komputer Anda untuk "mengintip" apa yang sedang dibaca oleh Arduino.
5. Uji Coba dan Eksperimen
Langkah 3 adalah menguji rangkaian. Colokkan kembali kabel USB Arduino ke komputer Anda. Pastikan Anda sudah memilih Board dan Port yang tepat di menu Tools. Selanjutnya, klik tombol Upload (ikon panah ke kanan).
Setelah upload berhasil, buka Serial Monitor (ikon kaca pembesar di pojok kanan atas Arduino IDE).
Waktunya Bereksperimen! Coba tutup sensor LDR menggunakan jari Anda agar kondisinya menjadi gelap. Anda akan melihat angka di Serial Monitor mengecil, dan lampu LED akan menyala seketika! Sebaliknya, arahkan cahaya senter ke LDR, maka angka akan membesar dan LED akan mati.
Sebagai saran belajar, cobalah untuk mengganti angka 500 di dalam kode tersebut. Jika Anda menggantinya menjadi 800, maka lampu akan lebih sensitif dan tetap menyala meskipun ruangan hanya sedikit redup.
Kesimpulan dan Langkah Selanjutnya
Selamat! Anda telah merampungkan sistem otomasi pertama Anda. Setelah Anda berhasil membuat sistem otomatisasi ini, Anda siap untuk mengeksplorasi sensor lainnya! Di modul berikutnya, kita akan menggunakan Potensiometer untuk mengatur tingkat kecerahan lampu secara manual. Teruslah berlatih, dan selamat bereksperimen!







