Advertisement
  1. Computer Skills
  2. Electronics

Arduino 101: Membuat LED Berkedip dengan Tombol

Scroll to top
Read Time: 10 min

Indonesian (Bahasa Indonesia) translation by Sayektisri1967 (you can also view the original English article)

Dalam tutorial terakhir saya, saya menjelaskan mengapa mudah untuk mengerjakan proyek elektronik dengan Arduino. Dalam tutorial ini saya akan menggunakan papan Arduino untuk membuat rangkaian sederhana, yang dapat menyalakan lampu LED. Dengan menggunakan lebih banyak kode dasar, saya akan membuat lampu LED yang sama berkedip. Akhirnya, saya akan menambahkan push-button dan menggunakannya untuk mempercepat kedipan.

Beberapa diagram dalam artikel ini dikembangkan menggunakan program Fritzing.


Persediaan

Arduino componentsArduino componentsArduino components
Komponen Arduino

Dalam tutorial ini saya akan menggunakan komponen-komponen berikut:

  • Arduino Uno R3 x 1
  • Breadboard x 1
  • Kabel USB Tipe B standar x 1
  • Tombol Tekan x 1
  • Resistor 10K x 1
  • Kabel jumper pendek x 3

Anda dapat membeli barang-barang ini baik melalui toko elektronik lokal, seperti Fry's (jika Anda tinggal di AS), atau melalui Internet dari Situs Web Arduino, Amazon, Little Bird Electronics, atau bahkan eBay.

Atau, Anda dapat memilih salah satu papan Arduino lainnya untuk mengikuti tutorial ini:

Papan Arduino lainnya atau papan yang kompatibel dengan pihak ketiga dapat berfungsi juga. Namun, mereka mungkin memerlukan konektor USB yang berbeda. Pastikan bahwa papan Arduino Anda dapat terhubung ke komputer Anda menggunakan kabel USB yang sesuai.

Selanjutnya, pastikan Anda telah mengunduh dan menginstal versi terbaru Arduino IDE di komputer Anda. Menginstal Arduino IDE mungkin memerlukan beberapa langkah lagi di komputer Windows karena Anda perlu menginstal beberapa driver. Untuk instruksi lebih lanjut silakan ikuti panduan instalasi di situs web Arduino.

Anda mungkin bertanya-tanya bagaimana kita akan menyalakan lampu ketika kita tidak memasukkan satu dalam daftar komponen? Itu mudah! Papan Arduino biasanya dilengkapi dengan LED onboard, yang dapat kita gunakan dalam proyek-proyek kami. Untuk menjaga rangkaian kami sesederhana mungkin, kami akan menggunakan LED ini.

Arduino boardArduino boardArduino board
Kode kami akan bekerja dengan lampu yang ditandai dengan huruf L di sebelahnya.

1. Siapkan Proyek Baru

Untuk memulai, hubungkan papan Arduino Anda ke komputer Anda menggunakan kabel USB yang sesuai. Anda akan melihat bahwa satu atau beberapa lampu dapat menyala sebentar atau secara permanen. Arduino Uno memiliki empat lampu LED onboard. Jika papan Anda memiliki lebih dari satu LED, lampu yang berkedip menandakan bahwa papan itu terhubung ke sumber listrik dan sedang dinyalakan. Diperlukan sekitar lima detik agar Arduino siap untuk Anda berinteraksi dengannya.

Luncurkan Arduino IDE di komputer Anda. Anda akan disajikan dengan ruang kerja kosong di mana Anda akan menulis kode yang diperlukan untuk memprogram papan Arduino Anda.

Selanjutnya, Anda harus memberi tahu Arduino IDE board mana yang akan Anda sambungkan. Dari menu, pilih  Tools > Board, lalu pilih papan Arduino Anda dari daftar. Jika Anda telah memilih untuk menggunakan papan Arduino resmi, maka namanya harus tercantum untuk Anda pilih. Papan pihak ketiga biasanya setara dengan papan Arduino resmi lainnya. Jika Anda tahu yang papan yang, kemudian pergi ke depan dan pilih yang satu dari daftar. Jika tidak, lihat manualnya untuk mengetahui model mana dari daftar yang harus bekerja dengan dewan spesifik Anda.

Akhirnya, Anda harus memilih port yang tepat untuk komunikasi dengan dewan Arduino Anda. Sekali lagi dari menu, pergi ke Tools> Serial Port, dan pilih port Serial yang tepat. Pada Mac, port serial yang benar sering didaftar sebagai /dev/tty.usbmodem1421 atau serupa. Pada Windows, koneksi harus terdaftar sebagai port COM.


2. Menghidupkan Lampu

Arduino dilengkapi dengan banyak konektor input dan output yang berbeda, yang akan kita sebut sebagai IO Pins. Saat ini, kami ingin menggunakan pin IO digital untuk menginstruksikan lampu LED menyala. Karena kami juga menggunakan lampu LED onboard, pin IO yang sesuai telah diputuskan untuk kami oleh pembuat Arduino. Ini adalah pin 13, yang, dengan desain, telah terpasang ke lampu LED onboard.

Salin kode berikut dan tempelkan ke Arduino IDE Anda:

Dalam kode, saya telah menggunakan dua fungsi Arduino: pinMode(pin_number, mode) dan digitalRead(pin_number, value).

Saya akan memanggil fungsi pinMode() di dalam setup() untuk menginstruksikan Arduino untuk memperlakukan pin-13 sebagai output. Kemudian dengan memanggil fungsi digitalWrite() di dalam loop() saya dapat mengaktifkan sinyal HIGH pada pin-13 yang menyalakan lampu LED.

Klik pada tombol Upload untuk mendorong kode di atas ke papan Arduino Anda. Dengan menyediakan papan Arduino yang benar dan port Serial dipilih, Anda akan melihat bilah kemajuan yang diikuti oleh pesan Selesai Mengunggah.

Sementara kode sedang diunggah, Anda mungkin melihat berbagai lampu berkedip, yang menunjukkan komunikasi yang sukses antara PC Anda dan papan Arduino. Pada titik ini, lampu LED onboard harus dihidupkan secara permanen.


3. Jadikan Berkedip

Anda telah menyelesaikan Arduino yang setara dengan "Hello World". Sekarang Anda akan membuat kedipan cahaya dengan memperkenalkan fungsi delay() ke kode di atas. delay() berfungsi menerima nilai integer, sama dengan jangka waktu dalam milidetik. 1000 milidetik sama dengan satu detik.

delay() berfungsi membuat lampu LED menyala dan juga mematikannya selama satu detik selama setiap iterasi fungsi loop(). Karena fungsi loop() terus berulang, kode ini akan menyalakan dan mematikan lampu LED berulang kali.

Digital Wave diagramDigital Wave diagramDigital Wave diagram
Diagram Gelombang Digital

Dengan menggunakan diagram gelombang digital, saya dapat menjelaskan dengan jelas bagaimana perilaku asli telah berubah. Sebelum memperkenalkan fungsi penundaan pada langkah ketiga, saya menghasilkan gelombang digital yang tampak seperti diagram, di atas. Setiap siklus setiap loop () fungsi iterasi dihabiskan untuk menjaga lampu LED dihidupkan.

Menggunakan fungsi delay (), kode kita membagi setiap siklus menjadi dua bagian, membuat setiap iterasi berlangsung selama dua detik. Selama detik pertama LED dihidupkan, dan, selama detik berikutnya dimatikan.

Digital Wave diagram showing the delay() functionDigital Wave diagram showing the delay() functionDigital Wave diagram showing the delay() function
Gambar ini menunjukkan bagaimana fungsi penundaan () digunakan untuk mempertahankan keadaan saat ini.

4. Ubah Waktu Tunda Menggunakan Tombol

Hingga titik ini, perilaku proyek Arduino ini telah dengan baik didorong oleh kode yang telah kami tulis. Namun, setelah diunggah dan berjalan, kami tidak memiliki cara berinteraksi dengan sirkuit elektronik ini. Ini sangat statis dan saya akan mengubahnya dengan menambahkan tombol yang akan membiarkan saya mengubah kecepatan berkedip. Dalam langkah ini, saya perlu menggunakan breadboard. Ini adalah saat yang tepat untuk melihat apa itu papan breadboard dan bagaimana itu bisa digunakan.

Breadboard

Breadboard adalah papan prototipe tanpa soldir yang digunakan untuk membuat sirkuit elektronik sementara, terutama untuk bereksperimen dengan desain papan sirkuit yang berbeda.

Breadboards modern terdiri dari sepotong plastik berlubang padat, dengan banyak klip tembaga di bawah permukaannya untuk membuat sambungan listrik. Banyak lubang di permukaan papan ini memungkinkan untuk memasukkan komponen elektronik yang berbeda tanpa perlu solder di tempat.

Breadboard umum memiliki dua kolom, masing-masing dengan lima lubang. Setiap lubang terhubung ke semua lubang lain di baris yang sama tetapi tidak ke salah satu lubang di kolom yang berdekatan. Dengan kata lain, jika dua kabel tidak ditempatkan di baris yang sama dari kolom yang sama, maka keduanya tidak terhubung satu sama lain. Pengaturan ini memungkinkan kita untuk berbagi koneksi tunggal dari komponen melalui empat titik koneksi lainnya di baris yang sama.

Alasan memiliki dua atau lebih kolom pada breadboard  yang sama adalah untuk memungkinkan beberapa Integrated Circuits (ICs) dihubungkan. IC biasanya terhubung ke kedua kolom papan tempat memotong roti karena mereka memiliki lebih dari dua pin di kedua sisi seperti yang digambarkan pada diagram berikut.

40-pin IC attached to a breadboard.40-pin IC attached to a breadboard.40-pin IC attached to a breadboard.
IC 40-pin melekat pada breadboard.

Di kedua sisi papan paling, ada strip panjang yang digunakan untuk berbagi kekuasaan. Strip ini sering disebut sebagai strip bus, atau rel listrik, karena mereka berjalan sepanjang seluruh papan. Rel listrik pada beberapa papan akan memungkinkan Anda menghubungkan koneksi positif dan darat. Tidak seperti baris normal, semua lubang di sepanjang papan terhubung satu sama lain.

Power rails on breadboardPower rails on breadboardPower rails on breadboard
Rel listrik biasanya ditandai dengan garis merah dan biru yang membentang sepanjang seluruh papan.

Saat membeli breadboard, ada baiknya memilih jenis dengan alur di kedua sisi papan. Alur-alur ini dapat digunakan untuk memasang beberapa breadboard bersama-sama untuk membuat ruang kerja yang lebih besar. Breadboard berkualitas baik ditandai dengan angka dan huruf sehingga mudah untuk mengidentifikasi setiap baris dan kolom.

Langkah 1

Mulailah dengan menempatkan tombol push dan menghubungkannya dengan jumper daya dari papan Arduino. Arduino Uno dapat menghasilkan dua tingkat daya, 3-Volt dan 5-Volt. Untuk sirkuit ini, kita perlu menggunakan rel 5V. Alasan mengapa Anda menggunakan salah satu dari yang lain bergantung pada komponen yang akan Anda hubungkan. Beberapa komponen mungkin memerlukan tegangan daya yang lebih rendah untuk beroperasi, karenanya output 3V.

Circuit with Arduino and breadboardCircuit with Arduino and breadboardCircuit with Arduino and breadboard
Sirkuit dengan Arduino dan breadboard

Dalam diagram, di atas, kita memiliki rangkaian lengkap. Kami telah menghubungkan pin atas tombol push ke pin 5V, pada Arduino, dan ke resistor 10K. Ini kemudian terhubung ke pin ground (GND) pada Arduino kami. Kawat ketiga kami (berwarna kuning) terhubung ke pin digital-2 dan akan membawa sinyal ON ke papan Arduino.

Resistor

Tujuan dari sebuah resistor adalah untuk memperlambat arus listrik, saat arus melewati, sehingga membatasi jumlah arus yang mengalir melalui rangkaian. Ini dicapai dengan membuat resistor dari bahan dengan properti konduktif rendah. Perlawanan diukur dalam ohm dan dapat ditentukan dari persamaan berikut:

resistance (in ohms) = power or voltage (in volts) / current (in amps)resistance (in ohms) = power or voltage (in volts) / current (in amps)resistance (in ohms) = power or voltage (in volts) / current (in amps)
resistance (dalam ohm) = daya atau tegangan (dalam volt) / arus (dalam amp)

Misalkan saya ingin menghubungkan lampu LED ke sumber daya 9V, tetapi LED dapat mentolerir hanya 30 milliamps arus. Berdasarkan persamaan di atas kita perlu menggunakan resistor 300 Ohms untuk membatasi arus yang mengalir melalui lampu LED.

9 volts / 0.03 milli-amps = 300 Ohms9 volts / 0.03 milli-amps = 300 Ohms9 volts / 0.03 milli-amps = 300 Ohms
9 volt / 0,03 milli-amps = 300 Ohm

Ada tiga kategori utama resistor:

  1. Resistor tetap, seperti yang kami gunakan di sini,
  2. Variabel resistor, umumnya dikenal sebagai Potentiometers, dan
  3. Variabel resistor yang bergantung pada kualitas fisik, seperti suhu (termistor) atau cahaya (sel fotovoltaik)

Meskipun resistor berfungsi untuk membatasi aliran arus, ada berbagai jenis resistor di masing-masing dari ketiga kategori tersebut untuk aplikasi yang berbeda.

Kebanyakan resistor tetap ditandai dengan pita berwarna untuk membantu kami mengatasi hambatannya. Dari kiri, dua band pertama memberikan digit pertama dan kedua dari nilai resistansi. Pita ketiga memberikan faktor penggandaan. Akhirnya, band keempat memberikan toleransi terhadap resistor.

Resistor color codesResistor color codesResistor color codes
Kode warna resistor

Dari warna-warna pada resistor di atas, kita dapat mengetahui hal-hal berikut:

  • Coklat (digit pertama) = 1
  • Hitam (digit kedua) = 0
  • Oranye (pengganda) = 10 ^ 3
  • Emas (toleransi) = +/- 5%
  • 10 * 10 ^ 3 = 10.000 ohm atau 10 killo ohm atau 10K resistance

Di sini adalah tabel lengkap warna. Untuk informasi lebih lanjut, silakan lihat Wikipedia pada kode warna resistor.

Warna Digit Pengganda Toleransi
Hitam 0 x10^0 ±1%
Coklat 1 x10^1 ±2%
Merah 2 x10^2 -
Oranye 3 x10^3 (±5%)
Kuning 4 x10^4 ±5%
Hijau 5 x10^5 ±0.25%
Biru 6 x10^6 ±10%
Ungu 7 x10^7 ±1%
Abu Abu 8 x10^8 ±0.05% (±10%)
Putih 9 x10^9 -
Emas - x10^–1 ±5%
Silver - x10^–2 ±10%
Tidak ada - - ±20%

Tujuan dari Resistor

Saya menghubungkan kabel sinyal kuning dari pin digital 2 ke satu kaki tombol tekan. Itu kaki yang sama dari tombol, di sisi lain, menghubungkan melalui resistor 10K ke tanah untuk membentuk rangkaian lengkap. Ketika tombol tidak ditekan, arus perjalanan akan dibaca oleh Arduino sebagai RENDAH.

Setelah tombol ditekan ke bawah, koneksi antara pin 2 dan 5V positif akan dibentuk melalui kaki tombol push. Karena listrik akan selalu berjalan melalui jalur yang paling tidak resistan, maka akan menghindari melalui resistor dan akan mengalir ke pin 2 yang menghasilkan pembacaan TINGGI oleh dewan Arduino.

Langkah 2

Sekarang, mari selesaikan Langkah 4 dan buat lampu LED berkedip lebih cepat saat menekan tombol tekan.

Kali ini, kode tersebut menginstruksikan Arduino untuk memperlakukan pin-2 sebagai sumber input dengan memanggil pinMode(button_pin, INPUT) di dalam fungsi setup(). Ini memungkinkan kita untuk membaca status tombol tekan kemudian di dalam fungsi loop() dengan memanggil digitalRead(button_pin). Mendapatkan status tombol tekan memungkinkan kita menentukan apakah fungsi penundaan harus dipanggil dengan nilai yang lebih kecil.

Sekarang lanjutkan dan unggah kode di atas ke Arduino Anda, lalu tekan tombol tekan untuk melihat lampu LED berkedip lebih cepat.


Pemecahan masalah

Jika Anda sudah sampai sejauh ini dan kode di atas tidak berfungsi untuk Anda, mungkin ada beberapa alasan untuk ini:

  • Ini mungkin terdengar jelas, tetapi pastikan Arduino Anda terhubung ke sumber daya dan LED ON dihidupkan.
  • Pastikan semua pin dan kabel, resistor dan tombol tekan tersambung dengan kuat ke papan Arduino Anda dan ke papan tempat memotong roti. Jika Anda tidak yakin tentang kontinuitas koneksi Anda, gunakan multimeter untuk mengukur kontinuitas.
  • Pastikan semua koneksi ke papan Arduino terhubung ke input digital kanan.
  • Jika masalah Anda tetap ada, baca panduan pemecahan masalah Arduino.

Kesimpulan

The finished projectThe finished projectThe finished project
Proyek yang sudah selesai

Dalam tutorial ini, Anda belajar beberapa teknik dasar dalam menggunakan papan Arduino, breadboard, resistor dan tombol tekan bersama dengan Arduino IDE. Anda juga belajar bagaimana fungsi delay() dapat digunakan untuk mempertahankan status selama jangka waktu tertentu.

Jika Anda memiliki pertanyaan tentang tutorial ini, silakan tinggalkan di bagian komentar, di bawah ini.

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Computer Skills tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.