Langsung ke konten utama

LAPORAN PROJECT #2 “DIGITAL IO PADA ESP32”

"LAPORAN PROJECT #2 SISTEM EMBEDDED II2260"

DIGITAL IO PADA ESP32

Muhammad Ichsandro Daniswara Noor – 18219094

ABSTRAK

GPIO merupakan pin sinyal digital uncommitted pada papan sirkuit elektronik yang dapat digunakan sebagai input atau output, atau keduanya, dan dapat dikontrol oleh pengguna di runtime. Digital IO adalah singkatan dari Digital Input and Output. Input Digital memungkinkan mikrokontroler untuk mendeteksi logic states, dan Output Digital memungkinkan mikrokontroler untuk mengeluarkan logic statesPercobaan kali ini adalah membaca input digital dari Push Button untuk mengontrol output digital (LED) pada ESP32 yang diprogram menggunakan Arduino IDE.

Kata kunci: ESP32, Arduino IDE, GPIO, Digital IO.

I. PENDAHULUAN

GPIO

General Purpose Input / Output ( GPIO ) merupakan pin sinyal digital uncommitted pada sirkuit terpadu atau papan sirkuit elektronik yang dapat digunakan sebagai input atau output, atau keduanya, dan dapat dikontrol oleh pengguna di runtime.

GPIO tidak memiliki tujuan yang telah ditentukan dan tidak digunakan secara default Jika digunakan, tujuan dan perilaku GPIO ditentukan dan diimplementasikan oleh perancang sirkuit tingkat perakitan yang lebih tinggi: perancang papan sirkuit dalam kasus GPIO sirkuit terintegrasi, atau integrator sistem dalam kasus papan GPIO tingkat. (Wikipedia)

Digital IO

Digital IO adalah singkatan dari Digital Input and Output. Input Digital memungkinkan mikrokontroler untuk mendeteksi logic states, dan Output Digital memungkinkan mikrokontroler untuk mengeluarkan logic statesSetiap IO digital dapat dikonfigurasi secara individual ke salah satu dari 3 status: input, output-tinggi, atau output-rendah.

Input digital mendeteksi jika tegangan berada di atas atau di bawah ambang tertentu. Jika tegangan lebih tinggi dari nilai tertentu, komputer akan mendeteksi input digital sebagai tinggi atau 1. Jika tegangan lebih rendah dari beberapa nilai, komputer akan mendeteksi input digital sebagai rendah atau 0.

Output Digital: Output digital memungkinkan Anda untuk mengontrol tegangan dengan komputer. Jika komputer menginstruksikan output menjadi tinggi, output akan menghasilkan tegangan (umumnya sekitar 5 atau 3,3 volt). Jika komputer menginstruksikan output menjadi rendah, itu terhubung ke ground dan tidak menghasilkan tegangan. (LabJack)

II. METODOLOGI

Metodologi yang digunakan untuk penyelesaian tugas Project #2 diilustrasikan dalam diagram berikut:


Gambar 2.1 Diagram Metodologi

1. Menyiapkan Alat dan Bahan

Pada tahap ini dilakukan persiapan alat dan bahan yang dibutuhkan dalam bentuk software maupun hardware.

2. Perakitan Alat

Pada tahap ini dilakukan perakitan dari berbagai komponen yang telah disiapkan.

3. Membuat Program

Pada tahap ini dilakukan pemograman pada ESP32 yang telah disusun yang dilakukan menggunakan aplikasi Arduino IDE. Pemograman dilakukan agar ESP32 dapat membaca digital input dari button switch menyalakan lampu saat setelah tombol atau button ditekan.

4. Uji Coba

Pada tahap ini dilakukan uji coba dengan mengirimkan program yang telah dibuat dan kemudian menjalankan perintah pada ESP32.

5. Evaluasi

Pada tahap ini dilakukan evaluasi dari awal hingga akhir uji coba apakah perintah berhasil dilakukan oleh ESP32 sesuai yang diinginkan.

III. HASIL DAN ANALISIS

3.1. Persiapan Alat dan Bahan

a. ESP32 Board DevKit V1 (30 pins)


b. LED


c. Resistor 330 ohm


d. Resistor 10k ohm



e. Push Button


f. Breadboard


g. Jumper Wires


3.2 Schematic Diagram

Berikut ini merupakan diagram schematic yang digunakan untuk perakitan alat dalam project kali ini:


Berdasarkan diagram tersebut ada 3 LED yang digunakan dan kutub negatif dari masing-masing led dikoneksikan dengan resistor 330 ohm dan tersambung ke ground. Kutub positif dari LED merah tersambung ke GPIO 5. Kutub positif dari LED biru tersambung ke GPIO 2. Kutub positif dari LED warna-warni tersambung ke GPIO 19. Setiap Push Button pada diagram dikoneksikan dengan 3v3 dan resistor 10k ohm. Push Button pertama tersambung ke GPIO 4 dan Push Button kedua tersambung ke GPIO 18. 

3.2.1 Hasil Perakitan Alat

Berikut ini merupakan hasil perakitan alat sesuai diagram schematic yang telah dibuat:


3.3 Kode Program


3.4 Menjalankan Program Digital IO

Bedasarkan kode program yang telah dibuat, LED Merah didefinisikan dengan ledPin1, LED Biru didefinisikan dengan ledPin2 dan LED warna-warni didefinisikan dengan ledPin3. Push Button Merah didefinisikan dengan buttonPin1 dan Push Button Hitam didefiniskan dengan buttonPin2. Dari program diatas dapat dilihat bahwa jika Push Button Merah ditekan maka LED Merah akan menyala dan LED Biru akan Mati, Namun jika Push Button Merah dilepas maka LED Biru akan menyala dan LED Merah akan mati sehingga LED Biru dan LED Merah akan menyala secara bergantian. Sedangkan untuk Push Button Hitam, jika Push Button Hitam ditekan maka LED warna-warni akan menyala dan jika dilepas akan mati. 

Setelah melakukan verifikasi dan mengupload program, ESP32 dapat melakukan perintah dengan baik dan program berjalan dengan sesuai. LED Biru dan Merah menyala secara bergantian saat Push Button Merah ditekan dan LED warna-warni akan menyala saat Push Button Hitam ditekan.

Berikut ini merupakan video hasil uji coba:


3.5 Evaluasi

Setelah melakukan beberapa percobaan mulai dari perakitan hingga tahap uji coba, ada beberapa kendala yang dialami. Kendala pertama adalah tidak terhubungnya ESP32 dengan laptop. Hal ini terjadi dikarenakan kabel micro USB yang digunakan rusak dan solusinya dengan mengganti kabel mirco USB yang baru. Kedua lampu LED tidak menyala setelah program dijalankan. Hal ini terjadi dikarenakan beberapa kendala yaitu posisi lampu LED yang terbalik, ESP32 yang kurang menancap ke breadboard, dan variabel ledpin yang belum terdefinisi di dalam kode program. Setelah kendala tersebut diselesaikan, program dapat berjalan dan lampu bisa menyala dengan sesuai.

IV. KESIMPULAN

Dari percobaan yang telah dilakukan ada beberapa hal yang dapat disimpulkan:

4.1 Alat dan Bahan yang digunakan dalam percobaan ini meliputi komponen hardware yaitu ESP32, 3 LED, 2 Push button, 3 Resistor 330 ohm, 2 Resistor 10k ohm, Breadboard, Jumper wires, microUSB, laptop/komputer, dan komponen software yaitu Arduino IDE.

4.2 Proses perakitan alat disesuaikan dengan diagram schematic dan semua komponen dapat berfungsi dengan baik.

4.3 Proses verifikasi dan pengiriman kode program ke ESP32 berjalan dengan baik tanpa kendala.

4.4 Secara umum, ESP32 berhasil melakukan perintah dengan baik yang ditandai dengan LED Biru dan Merah menyala secara bergantian saat Push Button Merah ditekan dan LED warna-warni akan menyala saat Push Button Hitam ditekan.

V. DAFTAR PUSTAKA

Soin, K., Santos, S., Steve, Santos, R., Amit, & Salah. (2020, March 27). ESP32 digital inputs and digital outputs (Arduino IDE). Retrieved February 07, 2021, from https://randomnerdtutorials.com/esp32-digital-inputs-outputs-arduino/

Software. (n.d.). Arduino. https://www.arduino.cc/en/software/

Wikipedia. (2020, February 17). Retrieved February 07, 2021, from https://en.m.wikipedia.org/wiki/General-purpose_input/output

What are Digital i/o? (IO, D, Dio, Fio, Eio, CIO, MIO). (n.d.). Retrieved February 07, 2021, from https://labjack.com/support/faq/what-are-digital-io#:~:text=Digital%20Input%3A%20A%20digital%20input,above%2Fbelow%20a%20specific%20threshold.&text=Digital%20Output%3A%20A%20digital%20output,about%205%20or%203.3%20volts).

BONUS

PROJECT #2.1 "PWM PADA ESP32"

1. Alat dan Bahan

a. ESP32 Board DevKit V1 (30 pins)
b. LED
c. Jumper Wire
d. Resistor 330 ohm

2. Hasil Perakitan Alat


3. Kode Program



4. Hasi Uji Coba







Komentar

Postingan populer dari blog ini

LAPORAN PROJECT #8 "WIFI PADA ESP32"

" LAPORAN PROJECT #8 SISTEM EMBEDDED II2260" “WIFI  PADA ESP32 ”      Muhammad Ichsandro Daniswara Noor – 18219094 ABSTRAK WiFi adalah keluarga dari jaringan nirkabel protokol, berdasarkan IEEE 802.11 keluarga standar, yang biasanya digunakan untuk jaringan area lokal perangkat dan Internet akses, yang memungkinkan perangkat terdekat digital untuk bertukar data dengan gelombang radio .  Percobaan kali ini adalah menggunakan Wifi pada ESP32 agar dapat berkomunikasi dan saling mengirim data dengan Web Server. Kata kunci: ESP32, Arduino IDE, Wifi, Web Server. I. PENDAHULUAN WIFI WiFi  adalah keluarga dari jaringan nirkabel protokol, berdasarkan IEEE 802.11 keluarga standar, yang biasanya digunakan untuk jaringan area lokal perangkat dan Internet akses, yang memungkinkan perangkat terdekat digital untuk bertukar data dengan gelombang radio. Ini adalah jaringan komputer yang paling banyak digunakan di dunia, digunakan secara global di jaringan rumah da...

LAPORAN PROJECT #9 "WEB SERVER PADA ESP32"

" LAPORAN PROJECT #9 SISTEM EMBEDDED II2260" “WEB SERVER  PADA ESP32 ” Muhammad Ichsandro Daniswara Noor – 18219094 ABSTRAK Web Server adalah perangkat lunak server, atau perangkat keras yang didedikasikan untuk menjalankan perangkat lunak ini, yang dapat memenuhi permintaan klien di World Wide Web. Percobaan kali ini adalah menggunakan wifi pada ESP32 untuk menginisiasi Web Server agar dapat menampilkan hasil pembacaan sensor bme-280 pada web server. Kata kunci: ESP32, Arduino IDE, Web Server, BME-280. I. PENDAHULUAN Web Server Web Server adalah perangkat lunak server, atau perangkat keras yang didedikasikan untuk menjalankan perangkat lunak ini, yang dapat memenuhi permintaan klien di World Wide Web. Server web dapat, secara umum, berisi satu atau lebih situs web. Server web memproses permintaan jaringan yang masuk melalui HTTP dan beberapa protokol terkait lainnya. Fungsi utama server web adalah untuk menyimpan, memproses, dan mengirimkan halaman web ke klien. Komunika...