Panduan · 15 mnt baca

Proyek Arduino Tidak Berfungsi? Urutan Diagnosis 10 Menit

Proyek Arduino tidak berfungsi? Cek 6 lapisan dari luar ke dalam: daya, upload, pengkabelan, komponen, kode, sensor. Tabel alur, sketch uji, dan daftar periksa 8 poin.

Kalau proyek Arduino-mu tidak berfungsi, jangan mencari kerusakannya dengan mencabut kabel secara acak. Bekerjalah dari luar ke dalam: pertama daya (apakah board menyala?), lalu upload (apakah kode benar-benar sampai ke board?), lalu pengkabelan (apakah GND tersambung bersama, apakah setiap kabel ada di pin yang benar?), lalu arah dan nilai komponen (apakah LED terbalik, apakah resistornya benar?), lalu kode (nomor pin dan logika), dan terakhir sensor dan lingkungan (cahaya, jarak, tegangan catu). Jalankan satu tes per lapisan dan ubah hanya satu hal dalam satu waktu. Dengan mengikuti urutan ini, kamu akan menemukan sebagian besar kerusakan dalam 10 menit, karena kesalahan yang paling umum ada di lapisan luar, dan lapisan itulah yang paling murah untuk dicek.

Tulisan ini tidak membahas pesan error satu per satu; tulisan ini memberimu metode diagnosis. Pertama kamu akan melihat dua aturan metodenya, lalu tabel alur berisi gejala, tes 1 menit, dan kemungkinan penyebab untuk setiap lapisan. Setelah itu ada sketch uji singkat yang membagi rangkaian menjadi potongan-potongan dengan Blink dan Serial Monitor, 4 pengecekan multimeter (plus alternatif dengan LED dan Serial Monitor kalau kamu tidak punya multimeter), diagnosis langkah demi langkah untuk kerusakan di sebuah proyek BlueGrays gratis, tabel rujukan cepat berdasarkan gejala, dan daftar periksa diagnosis 8 poin untuk kelas.

Breadboard putih untuk rangkaian Arduino, dengan jalur daya dan parit tengahnya
Di kebanyakan proyek yang tidak jalan, masalahnya ada di breadboard sebelum ada di kode: baris yang bergeser satu, sisi parit tengah yang salah, atau jalur daya yang terbelah dua.

Dua aturan diagnosis: dari luar ke dalam, satu variabel

Logika bekerja dari luar ke dalam itu sederhana: lapisan dalam bergantung pada lapisan luar. Kalau board tidak mendapat daya, benar tidaknya kode tidak ada artinya; kalau kode tidak pernah sampai ke board, memperbaiki pengkabelan tidak mengubah apa pun. Lapisan luar juga paling cepat dicek: melihat LED daya butuh 5 detik dan membaca pesan upload butuh 10 detik, tetapi menemukan kesalahan logika di kode bisa makan waktu beberapa menit. Aturan kedua adalah aturan satu variabel. Kalau kamu mengganti kabel, resistor, dan ambang di kode sekaligus, kamu tidak akan tahu apa yang memperbaikinya walaupun proyeknya mulai jalan; dan kalau tidak jalan, mungkin kamu malah menambah kerusakan baru. Buat satu perubahan, uji, catat hasilnya, lalu lanjut ke perubahan berikutnya.

  • Tulis gejalanya dalam satu kalimat: “Kalau tanganku menutupi LDR, aku berharap LED menyala, tapi LED tidak pernah menyala.” “Tidak jalan” bukan gejala; begitu kamu menulis apa yang kamu harapkan dan apa yang terjadi secara terpisah, lapisan yang perlu dicek sering langsung terlihat.
  • Cabut USB selama mengubah kabel: Kalau board tetap menyala ketika kamu mengubah koneksi, sentuhan yang salah bisa menyebabkan korsleting. Lakukan perubahan, cek dengan mata, lalu colokkan lagi.
  • Tukar dengan komponen yang pasti bagus: Mengganti LED, kabel, atau sensor yang dicurigai dengan yang kamu tahu berfungsi adalah tes terkuat yang bisa kamu lakukan tanpa alat ukur.
  • Buat catatan: Catatan singkat seperti “kabel dipindah dari 7 ke 8, tidak ada perubahan” mencegahmu mengulang tes yang sama, dan catatan itu jadi ringkasan siap pakai kalau kamu bertanya di forum atau ke gurumu.
  • Sederhanakan: Kalau proyeknya besar, lepas modulnya satu per satu. Pertama board saja, lalu board plus bagian output, lalu bagian input. Melihat bagian mana yang membuatnya rusak menunjukkan di mana kerusakannya.

Tabel alur diagnosis 10 menit

Baca tabel di bawah dari atas ke bawah dan jangan turun ke lapisan berikutnya sebelum tes yang sekarang lolos. Setiap tes butuh sekitar satu menit, jadi keenam lapisan selesai dalam 6–10 menit. Untuk sebagian besar tes, matamu, LED di board, dan Serial Monitor Arduino IDE sudah cukup; multimeter mempercepat, tetapi tidak wajib. Kolom “Kemungkinan penyebab” berisi tempat pertama yang perlu dilihat kalau sebuah tes gagal, kurang lebih diurutkan dari yang paling sering terjadi.

LapisanGejalaTes 1 menitKemungkinan penyebab
1. DayaTidak ada yang terjadi, LED board mati, atau board terasa hangatApakah LED ON menyala? Cabut USB dan sentuh komponennya: ada yang hangat?Kabel USB khusus pengisian daya, port longgar, korsleting antara 5V dan GND, modul tersambung terbalik
2. UploadKamu sudah mengubah kode, tetapi board masih berperilaku seperti duluApakah IDE melaporkan upload selesai, atau ada baris error? Apakah board dan port di menu Tools sudah benar?Board atau port salah, error kompilasi, driver belum terpasang, Serial Monitor menahan port
3. PengkabelanSebuah komponen tidak pernah bereaksi atau hanya kadang-kadang jalanPerbesar diagram dan hitung setiap kabel di kedua ujungnya; apakah GND tersambung bersama dengan board?Baris bergeser di breadboard, jalur daya terbelah, pin D dan A tertukar, jumper putus
4. Arah dan nilai komponenLED mati atau sangat redup, tombol selalu terbaca ditekanApakah kaki panjang LED ke pin? Apa kata gelang warna resistor? Apakah tombol terputar 90 derajat?LED terbalik, 10 kΩ bukannya 220 Ω, LDR dan resistor tertukar, urutan VCC dan GND di modul
5. KodeBoard jalan, tetapi perilakunya salahCocokkan setiap nomor pin di kode dengan rangkaian; cetak titik cek ke Serial MonitorNomor pin salah, pinMode tidak ada, = tertukar dengan ==, ambang atau delay tidak cocok
6. Sensor dan lingkunganNilai tidak pernah berubah, tidak masuk akal, atau melompat-lompatPantau nilai sensor di Serial Monitor dan ubah kondisinya (matikan lampu, dekatkan tanganmu)Cahaya sekitar, sensor di luar jangkauan, waktu pemanasan, 3,3 V vs 5 V tidak cocok, kabel panjang dan derau

Lapisan 1 dan 2: daya dan upload

Di Arduino Uno, dua LED memberi petunjuk pertama untuk dua lapisan ini. LED ON menunjukkan board mendapat daya; kalau mati, ganti dulu kabel USB-nya, karena beberapa kabel hanya untuk mengisi daya dan tidak membawa data. Kalau ON menyala tetapi bunyi USB komputermu terputus ketika board dicolokkan, atau LED-nya berkedip, mungkin ada korsleting di rangkaian: cabut USB, telusuri jalur 5V dan GND, dan cari modul yang terpasang terbalik atau kabel yang menjembatani kedua jalur. Komponen yang jadi panas selalu tanda serius; jangan beri daya ke board lagi sebelum komponen itu dilepas. Kalau kamu memakai motor, servo, atau relay, USB mungkin tidak memberi arus yang cukup; dalam kasus ini gejalanya biasanya bukan “tidak ada yang jalan”, melainkan reset acak atau getaran. Untuk pilihan baterai dan adaptor, baca menjalankan Arduino dengan baterai.

Di lapisan upload kamu menjawab satu pertanyaan saja: apakah kode di board sama dengan kode yang kamu lihat di layar? Ketika upload selesai, Arduino IDE memberitahukannya di area output di bagian bawah; kalau ada baris merah, kode tidak pernah sampai ke board dan board terus menjalankan program lamanya. Ini licik, karena kamu akan mengira perbaikanmu tidak berhasil. Untuk error avrdude, port, dan driver, kode Arduino gagal di-upload menjelaskan setiap pesannya, dan kalau kamu mentok di tahap kompilasi, baca error kompilasi. Ada juga tes bukti sederhana: ubah sebuah delay di kode dari 100 ke 1000 lalu upload. Kalau ritme LED tidak berubah, masalahnya ada di lapisan upload. Beberapa board ESP32 perlu tombol BOOT ditahan selama upload; di Raspberry Pi Pico, cek bahwa interpreter MicroPython sudah dipilih di pojok kanan bawah Thonny.

Lapisan 3: pengkabelan, GND, dan pin

Kalau board sudah mendapat daya dan kode sudah di-upload, sekarang giliran kabel. Dua kesalahan yang paling umum adalah lupa GND bersama dan salah membaca breadboard. Walaupun sebuah sensor atau modul punya catu daya sendiri, GND-nya harus tersambung ke GND Arduino; kalau tidak, tegangan sinyal tidak punya acuan. Di breadboard, parit tengah memisahkan kedua sisi, dan di breadboard panjang jalur daya di sepanjang tepinya bisa terputus di tengah; memberi 5V ke satu bagian jalur lalu menganggapnya memberi daya ke komponen di bagian lain adalah kesalahan yang sangat umum. Metode terbaik untuk lapisan ini adalah perbandingan satu per satu dengan diagram: hitung setiap kabel, di kedua ujungnya, dan tunjuk pasangannya di diagram dengan jarimu. Digital 2 yang tertukar dengan analog A2, 5V yang tertukar dengan VIN, atau kabel yang bergeser satu baris akan langsung kelihatan. Kalau simbol-simbol skema terlihat asing, Cara Membaca Skema Rangkaian memandumu memindahkannya ke breadboard.

Cabut kabel USB board selama kamu mengubah kabel. Jangan pernah menyambungkan pin 5V atau 3.3V langsung ke GND; board jadi panas dan komputermu bisa mematikan port USB. Kalau ada komponen yang panas, tercium bau terbakar, atau LED daya berkedip, putuskan daya sebelum melanjutkan.

Lapisan 4: arah dan nilai komponen

Kalau pengkabelannya benar tetapi sebuah komponen tetap tidak merespons, lihat komponennya sendiri. Kaki panjang LED (anoda) harus lewat resistor ke pin, dan kaki pendek (katoda) ke GND; LED yang terbalik biasanya tidak rusak, hanya tetap gelap. Resistor adalah komponen yang paling sering tertukar: 220 Ω punya gelang merah-merah-cokelat, 10 kΩ cokelat-hitam-oranye. Pasang 10 kΩ di samping LED, dan LED menyala begitu redup sampai tidak kamu sadari; pasang 220 Ω di samping LDR atau tombol, dan bacaannya jadi tidak masuk akal. Kamu bisa membaca gelang warnanya dengan kalkulator kode warna resistor dan mencari nilai yang tepat untuk LED dengan kalkulator resistor LED. Push button empat kaki yang terputar 90 derajat akan terbaca selalu ditekan atau tidak pernah ditekan. Di modul, urutan VCC, GND, dan sinyal berbeda-beda tergantung pabrikannya, jadi baca label pin di board-nya langsung, bukan dari gambar di internet. Komponen berkaki tiga seperti transistor dan regulator tegangan juga punya urutan pin yang berbeda tergantung modelnya.

Lapisan 5: kode (nomor pin dan logika)

Kalau hardware-nya beres, cek apakah kode mengatakan hal yang sama dengan rangkaian. Pengecekan pertama adalah nomor pin: kalau LED secara fisik ada di pin 8 tetapi kode menulis digitalWrite(9, HIGH), semuanya terlihat sempurna dan tidak ada yang terjadi. Pengecekan kedua adalah pinMode: kalau pinMode(pin, OUTPUT) tidak ada di setup(), digitalWrite(pin, HIGH) tidak membuat pin menjadi output, melainkan hanya menyalakan resistor pull-up internal, dan LED menyala sangat redup. Selain resistor, inilah penyebab paling umum “LED redup”. Pengecekan ketiga adalah logika: menulis if (value = 100) tidak membandingkan apa pun, tetapi memberi nilai 100 ke variabel dan kondisinya selalu benar; bentuk yang benar adalah ==. Ambang dan delay juga termasuk lapisan ini: ambang yang tidak cocok dengan lingkunganmu membuat tidak ada yang pernah terpicu, bahkan dengan sensor yang berfungsi sempurna. Di proyek yang memakai library, cek juga bahwa library yang benar sudah terinstal; rinciannya ada di Cara Instal Library Arduino.

Lapisan 6: sensor dan lingkungan

Lapisan terakhir mencakup kondisi luar yang merusak hasil walaupun rangkaian dan kodenya benar. Nilai LDR bergantung pada cahaya ruangan; ambang yang bekerja di dekat jendela pada siang hari bisa gagal di bawah lampu pada malam hari. HC-SR04 tidak mendapat gema dari permukaan lembut seperti kain dan tidak bisa mengukur lebih dekat dari 2 cm. Sensor gas seri MQ butuh beberapa menit pemanasan sebelum mengukur. DHT11 mengembalikan error kalau kamu membacanya lebih sering dari sekali per detik. Pin di ESP32 dan Raspberry Pi Pico bekerja di 3,3 V; menyambungkan sensor dengan output 5 V secara langsung bisa memberi bacaan yang salah dan bisa merusak pin. Kabel panjang, derau dari motor, dan input yang mengambang juga membuat nilai melompat-lompat. Alat terbaik di lapisan ini adalah Serial Monitor: pantau nilai mentah sensor dan ubah kondisinya dengan sengaja. Kalau layar atau sensor I2C sama sekali tidak merespons, sketch scanner di Apa Itu I2C? menunjukkan alamatnya.

Cara tercepat melewati lapisan-lapisan ini adalah membagi rangkaian dan kode menjadi potongan-potongan. Potongan pertama adalah board itu sendiri: tanpa ada yang tersambung, upload kode yang membuat LED L bawaan berkedip. Kalau L berkedip, daya, upload, dan board-nya beres, dan mulai sekarang kamu mencari masalah di luar board. Potongan kedua adalah output: kedipkan LED eksternal di kode yang sama. Potongan ketiga adalah input: cetak nilai sensor ke Serial Monitor. Sketch di bawah melakukan ketiganya dan mencetak titik cek bernomor ke Serial Monitor di setiap langkah. Sambungkan LED eksternal ke pin 9 lewat resistor 220 Ω dan sinyal sensor analog yang kamu uji ke A0, lalu atur Serial Monitor ke 9600 baud.

C++ (Arduino IDE)
1const int LED_PIN = 9;       // Harici LED pini / External LED pin
2const int SENSOR_PIN = A0;   // Analog sensör pini / Analog sensor pin
3
4void setup() {
5  Serial.begin(9600);                  // Seri monitör de 9600 olmalı / Serial Monitor must be 9600 too
6  pinMode(LED_BUILTIN, OUTPUT);        // Karttaki L ışığı / On-board L LED
7  pinMode(LED_PIN, OUTPUT);            // Harici LED çıkış / External LED as output
8  Serial.println("1) setup bitti");    // Kontrol noktası 1 / Checkpoint 1
9}
10
11void loop() {
12  digitalWrite(LED_BUILTIN, HIGH);     // Kart canlı mı? / Is the board alive?
13  digitalWrite(LED_PIN, HIGH);         // Harici LED açık / External LED on
14  Serial.println("2) LED acik");       // Kontrol noktası 2 / Checkpoint 2
15  delay(500);
16
17  digitalWrite(LED_BUILTIN, LOW);
18  digitalWrite(LED_PIN, LOW);          // Harici LED kapalı / External LED off
19  Serial.println("3) LED kapali");     // Kontrol noktası 3 / Checkpoint 3
20  delay(500);
21
22  int value = analogRead(SENSOR_PIN);  // 0-1023 arası okuma / Reading from 0 to 1023
23  Serial.print("4) A0 = ");
24  Serial.println(value);               // Sensör değeri / Sensor value
25}
Yang kamu lihat di Serial Monitor dan di boardArtinyaLapisan yang dicek
Serial Monitor kosong dan L tidak berkedipKode tidak jalan atau tidak pernah sampai ke board1. Daya, 2. Upload
Karakter sampah bergulir lewatKecepatan Serial Monitor tidak cocok dengan Serial.begin(9600)5. Kode (pengaturan baud)
“1) setup bitti” (bahasa Turki untuk “setup selesai”) muncul lagi sesekaliBoard me-reset dirinya sendiri, biasanya karena catu dayanya tidak cukup1. Daya
2 dan 3 bergantian, L berkedip tetapi LED eksternal tetap gelapKode dan board beres; jalur LED eksternal terputus3. Pengkabelan, 4. Arah dan nilai komponen
A0 selalu mendekati 0 atau selalu mendekati 1023Jalur sinyal ke GND atau 5V, sensor tidak mendapat daya, atau resistor pembaginya tidak ada3. Pengkabelan, 4. Nilai komponen
A0 melompat acak tanpa ada yang tersambungPin-nya mengambang; itu normal dan seharusnya berhenti begitu sensor disambungkan3. Pengkabelan

Kekuatan sebenarnya dari sketch ini ada di titik-titik ceknya. Pakai metode yang sama di proyekmu sendiri: tambahkan Serial.println() singkat di akhir setup() dan setelah setiap langkah penting di loop(), misalnya “tombol ditekan” atau “ambang terlewati”. Pesan terakhir yang muncul di Serial Monitor memberi tahu di mana program macet. Untuk mencari tahu kenapa sebuah kondisi tidak pernah terpicu, cetak nilai yang dibandingkan tepat sebelum kondisinya; kalau “value < 50” tidak pernah benar, kamu akan langsung melihat bahwa nilainya tidak pernah turun di bawah 50. Di proyek yang lebih besar, pakai logika yang sama: jadikan sebagian kode komentar untuk sementara dan uji potongan-potongannya satu per satu. Untuk pengaturan Serial Monitor seperti baud rate, akhir baris, dan plotter, baca Serial Monitor Arduino.

4 pengecekan multimeter (atau LED dan Serial Monitor kalau tidak punya)

Multimeter mengubah diagnosis dari menebak menjadi mengukur, dan hanya empat pengukuran sudah mencakup sebagian besar kerusakan Arduino. Sebelum mengukur, atur alat ke mode yang benar: DC V untuk tegangan, bip (kontinuitas) untuk mengecek kabel dan baris, Ω untuk hambatan. Selalu lakukan pengecekan kontinuitas dan hambatan dengan USB dicabut. Kalau kamu tidak punya multimeter, metode di kolom terakhir memberi jawaban yang lebih kasar tetapi cukup untuk pertanyaan yang sama. Rentang alat ukur dan soket tempat probe dicolokkan dijelaskan dengan gambar di Cara Memakai Multimeter.

PengecekanPengaturan alat dan probeYang diharapkanTanpa multimeter
Tegangan catuDC V; probe hitam di GND, probe merah di pin 5V (board di USB)Sekitar 4,7–5,1 V; sekitar 3,3 V di pin 3.3VLihat LED ON dan upload Blink; kalau L berkedip stabil, catu dayanya baik
Kabel dan baris breadboardMode bip, USB dicabut; sentuhkan ke kedua ujung kabel atau dua lubang di baris yang samaBerbunyi bip; tidak ada bip berarti kabel putus atau baris berbedaTukar kabel yang dicurigai dengan yang pasti bagus; sambungkan LED dan resistor 220 Ω antara 5V dan GND lewat kabel itu
Nilai resistorRentang Ω; lepas resistor dari rangkaian dan sentuh kedua kakinyaSekitar 209–231 Ω untuk 220 Ω (toleransi 5 persen)Baca gelang warnanya dan pastikan dengan kalkulator kode warna
Tegangan sinyalDC V; probe hitam di GND, probe merah di pin output atau jalur sinyal sensorSekitar 5 V ketika output HIGH, 0 V ketika LOW; di pembagi LDR nilainya bergantung pada cahayaPantau nilai analogRead di Serial Monitor (5 V sekitar 1023, 0 V sekitar 0); sambungkan LED ke pin output

Contoh nyata: LED tidak mau menyala di proyek Lampu Tidur dengan LDR

Mari coba metodenya di sebuah proyek BlueGrays gratis: Lampu Tidur dengan LDR. Di rangkaiannya, satu ujung LDR ke 5V dan ujung lainnya ke A0; resistor 10 kΩ ada di antara A0 dan GND, dan keduanya membentuk pembagi tegangan. LED tersambung ke pin 13 lewat resistor 330 Ω. Kodenya membaca A0 dan, kalau nilainya di bawah 50, menganggap ruangan gelap lalu menyalakan LED. Gejalanya: “Aku menutup LDR dengan tangan, tapi LED tidak pernah menyala.” Daripada menukar kabel secara acak, mari telusuri lapisannya secara berurutan.

Komponen LDR (fotoresistor) yang hambatannya berubah mengikuti cahaya
Hambatan LDR turun ketika cahaya bertambah. Di proyek lampu tidur, LDR membentuk pembagi tegangan dengan resistor 10 kΩ; kalau keduanya ditukar, LED menyala ketika terang dan mati ketika gelap.
  1. Daya: LED ON menyala dan tidak ada yang hangat. Lanjut.
  2. Upload: Upload selesai tanpa error. Supaya yakin, ubah sementara angka 50 di kode menjadi 2000 lalu upload; karena analogRead paling tinggi mengembalikan 1023, kondisinya selalu benar dan LED seharusnya terus menyala.
  3. Pengkabelan dan LED L: Pin 13 juga tersambung ke LED L bawaan. Kalau L menyala dengan ambang 2000 tetapi LED eksternal tidak, kodenya jalan dan masalahnya ada di jalur LED. Apakah kaki panjang LED ke 13 lewat 330 Ω dan kaki pendeknya ke GND?
  4. Arah dan nilai komponen: LED-nya tidak terbalik, tetapi kalau di sampingnya ada 10 kΩ bukannya 330 Ω, LED menyala terlalu redup untuk disadari. Bedakan kedua resistor itu dari warnanya.
  5. Kode dan sensor: Kalau LED eksternal menyala dengan ambang 2000, kembalikan ke 50. Sekarang, untuk melihat nilai sebenarnya, upload kode proyek Mengukur Intensitas Cahaya dengan LDR ke rangkaian yang sama; proyek itu memakai pengkabelan LDR yang sama dan mencetak A0 ke Serial Monitor setiap setengah detik.
  6. Baca nilainya: Misalnya kamu melihat sekitar 600 ketika tidak ditutup dan sekitar 120 ketika ditutup tangan. Nilainya tidak pernah turun di bawah 50, jadi LED tidak pernah menyala. Kembali ke kode lampu tidur dan naikkan ambangnya ke suatu nilai antara 200 dan 300.
  7. Kenali perilaku terbalik: Kalau nilainya naik ketika ditutup, bukannya turun, berarti LDR dan resistor 10 kΩ bertukar tempat. Kalau nilainya melompat acak padahal tanganmu diam, kabel A0 tidak tertancap di baris tempat LDR dan resistor bertemu.

Yang menemukan kerusakan di contoh ini bukan pengetahuan baru, melainkan urutannya: pertama kita membuktikan bahwa LED-nya sendiri bisa menyala, lalu kita melihat apa yang sebenarnya dibaca sensor. Di aplikasi, bagian Kalau mentok di tab Pahami kode proyek ini sudah memuat lima gejala ini sebagai pasangan gejala dan solusi: LED eksternal tidak pernah menyala dalam gelap, LED menyala ketika terang dan mati ketika gelap, tidak menyala bahkan ketika ditutup tangan, terus menyala atau berkedip, dan error upload. Bagian Atasi masalah di proyek ini memberi daftar periksa umum 10 langkah yang dimulai dari daya lalu melewati upload, nomor pin, breadboard, kabel jumper, GND, LED, dan resistor. Seperti yang mungkin sudah kamu perhatikan, urutan itu hampir sama dengan lapisan-lapisan di awal tulisan ini.

Bantuan di aplikasi: ke mana melihat ketika proyek tidak jalan

  • Atasi masalah: Daftar periksa berurutan di halaman proyek yang dimulai dengan “Kalau proyekmu belum jalan, cek langkah-langkah di bawah.” Bagian ini tersedia di lebih dari 170 proyek dan terbuka dengan Premium; di proyek gratis pun bagian ini ditampilkan dengan Premium. Kalau kamu sama sekali tidak tahu apa yang rusak, inilah tempat untuk ditelusuri dari awal sampai akhir.
  • Pahami kode › Kalau mentok: Pasangan gejala dan solusi yang khusus untuk kode dan rangkaian proyek itu. Terbuka untuk semua orang di proyek gratis, dengan Premium di proyek Premium. Kalau kamu bisa menulis gejalamu dalam satu kalimat, lihat ke sini dulu. Seluruh bagian ini dibahas di tulisan Pahami kode.
  • Kembali ke langkah Yuk bikin bareng: Di mode terpandu, kembali ke 2. Rakit rangkaian dan rakit ulang rangkaiannya dari nol dengan kabel USB board dicabut; di 3. Upload kode, cek ulang board dan port di menu Tools Arduino IDE. Mode ini mengingat langkah terakhirmu. Cara kerjanya dijelaskan di proyek Arduino pertama langkah demi langkah.
  • Perbesar skema rangkaian: Cubit untuk memperbesar Skema rangkaian dan bandingkan pengkabelanmu koneksi demi koneksi; kalau mau, simpan dengan Simpan ke galeri dan tandai kabel yang sudah kamu cek. Cara ini menangkap sebagian besar kerusakan di lapisan 3.
  • Ajukan pertanyaan yang tepat di forum: Kalau kamu sudah mencoba semua ini dan masih tidak jalan, buat topik di kategori Pertanyaan di Belajar › Forum. Tulis board-nya, kode lengkapnya, koneksinya, perilaku yang diharapkan dan yang terjadi, serta lapisan mana saja yang sudah kamu cek, lalu tambahkan foto rangkaian yang jelas. Cara menulisnya ada di bertanya soal Arduino di forum.

Rujukan cepat berdasarkan gejala

GejalaLapisan yang dicek pertamaTes pertamaTulisan terkait
Tidak ada yang terjadi, LED ON juga mati1. DayaCoba kabel USB dan port lain; cari korsleting antara 5V dan GNDMenjalankan Arduino dengan baterai
Kode tidak mau di-upload, error avrdude atau port2. UploadBoard dan port di menu Tools; kabel yang membawa dataKode Arduino gagal di-upload
Baris error merah ketika kompilasi5. KodeBaca baris error pertama dan pergi ke nomor baris ituError kompilasi
LED menyala tetapi sangat redup4. Nilai komponen, 5. KodeWarna resistor; apakah ada pinMode(…, OUTPUT) di setup()?Apa Itu LED?
Sensor selalu 0 atau selalu 10233. PengkabelanVCC dan GND sensor, baris kabel sinyal, resistor pembagiPembagi tegangan
Tombol seperti menekan dirinya sendiri3. PengkabelanApakah ada resistor pull-down, atau INPUT_PULLUP dipakai?Cara menghubungkan tombol
Servo bergetar1. DayaBeri daya servo dari catu 5 V terpisah dan satukan GND-nyaApa Itu Motor Servo?
Board reset secara acak1. DayaLepas motor atau relay lalu uji; apakah pesan setup berulang di Serial Monitor?Arduino terus reset, brownout ESP32
Karakter sampah di Serial Monitor5. KodeSamakan kecepatan Serial Monitor dengan nilai Serial.begin()Serial Monitor Arduino

Untuk guru: daftar periksa diagnosis 8 poin

Misalnya kamu punya kelas berisi 24 siswa dengan 8 kelompok yang merakit rangkaian bersamaan, dan dalam 15 menit pertama enam kelompok mengangkat tangan sambil bilang “tidak jalan”. Taruh daftar periksa di bawah di meja setiap kelompok dan tetapkan aturannya sejak awal: sebelum mengangkat tangan, telusuri kartu ini dari atas ke bawah dan tulis di baliknya di poin mana mereka mentok dan apa yang sudah mereka ubah. Cara ini membebaskan waktumu dan membangun kebiasaan memecahkan masalah pada siswamu; catatan diagnosisnya juga menjadi bukti proses yang bisa kamu pakai untuk penilaian. Untuk pengaturan kelompok di kelas besar, baca mengajar Arduino di kelas besar, dan untuk menilai prosesnya, lihat Rubrik Penilaian Proyek Arduino.

  1. Gejala: Apa yang kita harapkan, dan apa yang terjadi? Tulis dalam satu kalimat.
  2. Daya: Apakah LED ON menyala? Cabut USB: ada komponen yang hangat?
  3. Upload: Apakah upload selesai tanpa error? Apakah board dan port di menu Tools sudah benar?
  4. Board: Setelah meng-upload Blink, apakah LED L bawaan berkedip?
  5. Pengkabelan: Perbesar diagram dan hitung setiap kabel di kedua ujungnya. Apakah GND tersambung bersama, apakah kabel ada di pin yang benar dan di baris yang benar?
  6. Komponen: Apakah kaki panjang LED ke pin? Apakah gelang warna resistor cocok dengan nilai di daftar komponen? Apakah VCC dan GND di modul sudah benar?
  7. Kode: Apakah nomor pin di kode cocok dengan rangkaian? Ketika kamu mencetak titik cek ke Serial Monitor, mana yang muncul terakhir?
  8. Sensor dan langkah berikutnya: Apakah nilai sensor di Serial Monitor masuk akal, dan apakah nilainya berubah ketika kondisinya berubah? Kalau masih belum terpecahkan, cek Kalau mentok dan Atasi masalah, lalu panggil guru. Ubah satu hal dalam satu waktu dan buat catatan.

Diagnosis kerusakan adalah keterampilan, dan makin cepat dengan setiap kerusakan: pencarian yang makan 20 menit di proyek pertamamu turun menjadi 3 menit di proyek kelimamu, karena kamu mulai bisa menebak lapisannya dari gejalanya. Lain kali sebuah proyek tidak jalan, buka urutan ini sebelum mencabut kabel apa pun dan kerjakan dari atas ke bawah. Proyek kecil seperti lampu tidur di tulisan ini ideal untuk latihan; di aplikasi BlueGrays, masing-masing dari 60 proyek gratis dilengkapi skema rangkaian, kode, dan bagian Pahami kode, jadi ketika kerusakan berikutnya datang, kamu sudah tahu harus melihat ke mana.

Pertanyaan umum

Kenapa proyek Arduino-ku tidak berfungsi?

Penyebab paling umum, secara berurutan, adalah masalah daya, kode yang tidak pernah sampai ke board, GND bersama yang tidak ada atau kabel yang bergeser satu baris di breadboard, LED terbalik atau nilai resistor yang salah, dan nomor pin yang salah di kode. Cek semuanya dengan urutan itu, ubah satu hal dalam satu waktu, dan biasanya kamu akan menemukan kerusakannya dalam 10 menit.

Bagaimana cara tahu Arduino-ku rusak atau tidak?

Lepas semua sambungan, colokkan board hanya dengan kabel USB, lalu upload contoh Blink. Kalau LED ON menyala, upload selesai tanpa error, dan LED L berkedip, kemungkinan besar board-nya baik dan masalahnya ada di rangkaian atau bagian kode lainnya. Kalau board sama sekali tidak muncul sebagai port, coba dulu kabel data dan port USB lain.

Kenapa kode Arduino-ku berhasil di-upload tetapi tidak jalan?

Pertama cek bahwa upload benar-benar selesai; kalau ada baris error, board menjalankan kode lama. Kalau upload-nya beres, cocokkan nomor pin di kode dengan rangkaian, cek bahwa setup() berisi baris pinMode, dan tambahkan Serial.println() di akhir setup() untuk melihat di Serial Monitor apakah program sampai ke titik itu.

Kenapa Serial Monitor menampilkan karakter sampah?

Kecepatan Serial Monitor tidak cocok dengan nilai Serial.begin() di kodemu. Kalau kodenya menulis 9600, atur juga kecepatan di kanan bawah Serial Monitor ke 9600. Di ESP32, pesan boot dikirim pada 115200 baud, jadi beberapa baris kacau di 9600 itu normal.

Bagaimana cara menguji rangkaian Arduino tanpa multimeter?

LED ON dan L di board memberi tahu kondisi catu daya dan board, dan nilai analogRead yang dicetak ke Serial Monitor menunjukkan sinyal sensor. Menukar kabel atau LED yang dicurigai dengan komponen yang pasti bagus menggantikan tes kontinuitas. Kamu bisa membaca nilai resistor dari gelang warnanya dan memastikannya dengan kalkulator kode warna.

Kenapa sensor analog Arduino-ku selalu terbaca 0 atau 1023?

Selalu 0 biasanya berarti jalur sinyal ke GND atau sensor tidak mendapat daya; selalu 1023 berarti jalur sinyal tersambung langsung ke 5V atau resistor pembaginya tidak ada. Cek VCC dan GND sensor, pastikan kabel sinyal ada di baris yang benar, dan untuk komponen seperti LDR, pastikan resistor 10 kΩ sudah terpasang.

Lihat semua proyek
Lampu Tidur dengan LDR
#12Pemula

Lampu Tidur dengan LDR

Lampu tidur kecil yang menyala sendiri ketika gelap dan mati ketika pagi tiba. Sensor cahaya mengukur seberapa terang ruangan, dan Arduino menyalakan LED ketika cukup gelap lalu mematikannya lagi keti

4.8(102)
205
Mengukur Intensitas Cahaya dengan LDR
#11Pemula

Mengukur Intensitas Cahaya dengan LDR

Ingin melihat seberapa terang kamarmu dalam bentuk angka? LDR, komponen kecil yang bereaksi terhadap cahaya, mengukur cahaya di sekitarnya, dan Arduino menulis nilainya ke layar komputermu setiap sete

4.6(81)
139
LED Berkedip
#1Pemula

LED Berkedip

"Halo" pertama di dunia elektronika: menyalakan dan mematikan satu LED. Arduino menyalakan dan mematikan LED dengan jeda singkat, sehingga cahayanya berkedip cepat. Kamu melihat dengan cara paling sed

4.6(188)
1127
Kendali LED dengan Tombol Tekan (Tekan)
#9Pemula

Kendali LED dengan Tombol Tekan (Tekan)

Persis seperti bel pintu: lampu tetap menyala selama kamu menekan, dan mati ketika kamu melepasnya. Arduino terus mendengarkan tombol; selama ditekan LED menyala, dan begitu jarimu terangkat LED mati.

4.8(113)
229
Nyala/Mati LED dengan Tombol (On/Off)
#10Pemula

Nyala/Mati LED dengan Tombol (On/Off)

Tekan tombol sekali dan lampu menyala, tekan lagi dan lampu mati, persis seperti sakelar lampu di kamarmu. Arduino menyadari setiap tekanan dan membalik LED ke keadaan sebaliknya, sambil menunggu sebe

4.8(100)
167
Pengukuran Jarak HC-SR04 (Tampilan Serial)
#27Pemula

Pengukuran Jarak HC-SR04 (Tampilan Serial)

Sensor HC-SR04 bekerja persis seperti kelelawar yang mencari jalan dalam gelap: ia mengirim suara yang tidak bisa kamu dengar, mendengarkan pantulannya, dan mengukur seberapa jauh benda di depannya. A

4.6(46)
71
Suhu dan Kelembapan dengan DHT11
#55Menengah

Suhu dan Kelembapan dengan DHT11

Seberapa hangat kamarmu, dan apakah udaranya lembap atau kering? Sensor DHT11 mengukur suhu dan kelembapan, dan Arduino menulis nilainya di layar LCD dua baris, diperbarui setiap beberapa detik. Jika

4.7(47)
73
Raspberry Pi Pico: Mengendalikan LED Eksternal (Breadboard)
#148Pemula

Raspberry Pi Pico: Mengendalikan LED Eksternal (Breadboard)

Langkah berikutnya setelah LED bawaan Pico: menyambungkan LED eksternal ke breadboard dan mengendalikannya lewat pin GP14. Di proyek ini, kamu belajar memakai pin GPIO serbaguna Pico mana pun sebagai output, polaritas LED (kaki panjang = anoda/+, kaki pendek = katoda/–), dan kenapa resistor pembatas arus (220Ω) diperlukan. Tanpa resistor, arus berlebih mengalir melalui LED dan LED bisa terbakar. Rangkaiannya sangat sederhana: Pico GP14 → resistor 220Ω → LED → GND.

4.5(2)
7