Kelas XII Pengenalan Arduino Dengan Wokwi
Kelas XII Pengenalan Arduino Dengan Wokwi
Sebelum mengenal Wokwi mari berkenalan dengan Arduino, Menurut website resmi
Arduino, Arduino merupakan sebuah perangkat elektronik yang bersifat open source dan sering
digunakan dalam merancang dan membuat perangkat elektronik serta software yang mudah
untuk digunakan juga dirancang sedemikian rupa untuk dapat mempermudah penggunaan
perangkat elektronik di berbagai bidang. Selain itu, Arduino juga sudah menggunakan bahasa
pemrograman Arduino Language yang sedikit mirip dengan bahasa pemrograman C++.
Biasanya Arduino digunakan untuk mengembangkan beberapa sistem seperti pengatur suhu,
sensor untuk bidang agrikultur, pengendali peralatan pintar, dan masih banyak lagi.
Fungsi Arduino
Fungsi Arduino adalah sebagai pusat pemrosesan atau disebut juga otak yang mengatur
arus data dari perangkat input ke perangkat output. Pada dasarnya, baik penggunaan Arduino
Uno R3, Nano, Mega, Due, Pro Mini, Leonardo, maupun yang Lilypad serta perangkat arduino jenis
lain memiliki fungsi yang sama. Yaitu sebagai otak atau pusat pemrosesan data yang kelola dari
sensor untuk diteruskan ke komponen aktuator (perangkat output).
Arduino Uno
https://shorturl.at/GYlsJ
2
1. Power USB – Papan Arduino dapat diberi daya listrik menggunakan kabel
USB dari komputer. Yang perlu dilakukan hanyalah menghubungkan kabel
USB ke koneksi USB
2. Power (Barrel Jack) – Papan Arduino dapat diberi daya listrik langsung dari
sumber daya listrik dengan menghubungkan ke Barrel Jack.
3. Voltage Regulator – Fungsi Voltage Regulator adalah untuk mengontrol
tegangan yang diberikan ke papan Arduino dan menstabilkan tegangan DC
yang digunakan oleh prosesor dan elemen lainnya.
4. Crystal Oscillator – Crystal Oscillator berfungsi untuk menangani masalah
waktu. Bagaimana cara Arduino menghitung waktu? Jawabannya adalah,
dengan menggunakan Crystal Oscillator. Angka yang tercetak di atas Crystal
https://shorturl.at/GYlsJ
3
https://shorturl.at/GYlsJ
4
Arduino Kit merupakan kumpulan dari Komponen Elektronik yang digunakan untuk
pembuatan Project Arduino. Komponen ini merupakan komponen tambahan yang
digunakan untuk membuat Rangkaian Elektronika Pada Arduino kita. Komponen ini
digunakan sebagai media untuk menerima dan Menampilkan Hasil dari Inputan Arduino.
Adapun beberapa Komponen yang harus kita ketahui antara lain :
● Breadboard
https://shorturl.at/GYlsJ
5
● Kabel jumper
LED merupakan lampu indikator yang sering kita lihat pada rangkaian Elektronika. Pada
Dasarnya lampu LED Tunggal ini memiliki banyak variasi warna seperti Merah, Kuning
https://shorturl.at/GYlsJ
6
dan Hijau. Lampu LED ini memiliki 2 buah kaki yaitu Memiliki Kaki Panjang (Anoda /
Tegangan Positif) dan memiliki Kaki yang Pendek (Katoda / Tegangan Negatif)
● LED RGB
Lampu LED RGB merupakan Lampu LED tunggal yang yang memiliki 3 nyala LED
dasar yaitu Red, Green dan Blue dalam sebuah Lampu. Untuk penjelasan Pin atau Kaki
dari Lampu LED ini dapat dilihat pada gambar dibawah ini
Papan LCD ini merupakan media yang digunakan untuk menampilkan Output data yang
diinginkan dalam bentuk Layar kecil. LCD ini hanya dapat menampung 2 Baris dengan
16 Karakter tiap barisnya (Tergantung Jenis LCD)
● Buzzer
https://shorturl.at/GYlsJ
7
● Resistor
Resistor berfungsi untuk menghambat arus listrik yang masuk kedalam rangkaian
sehingga tidak menghasilkan tegangan yang berlebihan. Nilai resistor dinyatakan dalam
satuan Ω (ohm). Susunan cincin warna yang melingkar pada bodi resistor menunjukan
nilai hambatanya
Merupakan Sensor yang digunakan untuk menerima dan menangkap Intensitas Cahaya
yang ada.
https://shorturl.at/GYlsJ
8
● Potensiometer
Potensiometer merupakan jenis Resistor yang memiliki Nilai Resistansinya bisa diatur
sesuai dengan kebutuhan Rangkaian Elektronika maupun kebutuhan kita sendiri.
● Push button
Push button adalah sebuah saklar yang menghubungkan arus pada suatu rangkaian
ketika knobnya ditekan. Saklar sangat cocok dipasang pada pin digital input untuk
mendeteksi sinyal on/off
● Servo
Servo adalah motor yang mempunyai gearbox dan dapat berputar dengan posisi yang
presisi sesuai yang diperintahkan, untuk jenis ini hanya bisa berputar 180 derajat.
https://shorturl.at/GYlsJ
9
Putarannya dapat dikontrol dengan memberikan pulsa tegangan dari analog output
Arduino, pulsa tegangan tersebut yang memerintahkan servo untuk berputar pada posisi
tertentu.
● Modul relay
pada dasarnya relay adalah sebuah saklar yang dikontrol secara elektronik, untuk
mengubah kondisi saklar menjadi on atau off menggunakan arus listrik yang dikenakan
pada lilitan magnet di dalamnya. Pada modul relay ini selain terdapat komponen relay
sudah dilengkapi juga dengan komponen tabahan seperti led sebagai indikator,
transistor sebagai pengendali, dan terminal
● DHT11
DHT11 merupakan sensor untuk mengukur suhu dan kelembapan udara sekitar. Output
yang keluar dari sensor ini sudah berupa data, sehingga memerlukan penggunaan
library pada sketch programnya. Untuk membaca data dari sensor ini hanya
memerlukan satu sinyal pin digital dengan pembacaan data tiap 2 detik sekali, serta pin
VCC (Power 5V) dan GND (Ground).
https://shorturl.at/GYlsJ
10
● Modul Ultrasonik
Modul Ultrasonik merupakan sensor jarak untuk mengukur jarak dari 2cm – 400cm dan
memiliki tingkat akurasi sekitar 3mm. Pada modul ini terdapat sensor ultrasonik
penerima, pemancar dan rangkaian kontrol. Hanya terdapat empat pin untuk
menghubungkannya dengan Arduino: VCC (Power 5V), Trig (Trigger), Echo (Receive),
dan GND (Ground).
● Kabel USB
Kabel USB berfungsi untuk menghubungkan antara Arduino Uno dengan perangkat
komputer atau Android (perlu OTG adapter) sebagai jalur pemograman dan Sumber
Tegangan.
https://shorturl.at/GYlsJ
11
Koding Arduino
void setup() {
// Untuk Definis PIN, memasukan sensur dan juga LCD
pinMode(ledPIN, OUTPUT); // len dijadikan outputan
Serial.begin(9600);
}
void loop() {
digitalWrite(ledPIN, HIGH); // untuk mengaktifkan
delay(2000); // menambahkan delay untuk waktu
digitalWrite(ledPIN, LOW); // untuk mematikan
delay(1000); // menambahkan delay dengan format milisecond
Serial.println(serialValue);
delay(1);
}
https://shorturl.at/GYlsJ
12
void setup()
pinMode(4, OUTPUT);
void loop()
digitalWrite(4, HIGH);
https://shorturl.at/GYlsJ
13
https://shorturl.at/GYlsJ
14
https://shorturl.at/GYlsJ
15
void setup()
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
void loop()
digitalWrite(1, HIGH);
digitalWrite(2, LOW);
digitalWrite(1, LOW);
digitalWrite(2, HIGH);
https://shorturl.at/GYlsJ
16
Nama pin #
Nama Keterangan
Tombol tekan memiliki dua set pin (kontak), 1 dan 2. Ketika tombol tekan ditekan,
kedua kontak tersebut akan terhubung, sehingga menutup sirkuit listrik.
Setiap kontak memiliki pin di sisi kiri tombol tekan, dan pin lain di sisi kanan tombol
tekan. Jadi pin tersebut 1.ladalah pin kiri untuk kontak pertama, dan 1.rpin kanan
untuk kontak pertama. Karena keduanya termasuk dalam kontak yang sama,
keduanya selalu terhubung, bahkan saat tombol tidak ditekan.
Saat bekerja dengan Arduino, Anda biasanya menghubungkan satu kontak (misalnya
1.ratau 1.l) ke pin digital dan mengonfigurasi pin tersebut sebagai
INPUT_PULLUP, dan kontak lainnya (misalnya 2.ratau 2.l) ke ground. Pin digital
akan terbaca LOWsaat Anda menekan tombol, dan HIGHsaat tombol tidak ditekan.
Atribut
https://shorturl.at/GYlsJ
17
Menentukan pintasan
Anda dapat menggunakan atribut "key" untuk menentukan tombol keyboard yang
akan mengendalikan tombol tersebut. Tombol tersebut hanya aktif saat simulasi
berjalan dan diagram memiliki fokus.
Anda dapat menentukan pintasan papan ketik alfanumerik apa pun (jadi huruf dan
angka dalam bahasa Inggris), dan untuk huruf, nilai "tombol" tidak membedakan
huruf besar/kecil (jadi "q" dan "Q" memiliki arti yang sama).
Anda juga dapat menargetkan beberapa tombol khusus, seperti "Escape", "ArrowUp",
"F8", " " (spasi), atau "PageDown", tetapi beberapa tombol dapat diblokir oleh browser
(misalnya "F5" yang menyegarkan halaman). Daftar lengkap nama tombol dapat
ditemukan di sini . Perhatikan bahwa nama tombol khusus peka huruf besar-kecil -
jadi "Escape" akan berfungsi, "escape" tidak.
Pengguna Firefox: jika pintasan keyboard tidak berfungsi untuk Anda, pastikan
bahwa pengaturan "Cari teks saat Anda mulai mengetik" dinonaktifkan.
Memantul
Saat Anda menekan tombol tekan fisik, rangkaian akan terbuka dan tertutup puluhan
atau ratusan kali. Fenomena ini disebut Bouncing. Hal ini terjadi karena sifat
mekanis tombol tekan: saat kontak logam saling bertemu, ada periode singkat saat
kontak tidak sempurna, yang menyebabkan serangkaian transisi buka/tutup yang
cepat.
https://shorturl.at/GYlsJ
18
{ "bounce": "0" }
Simulasi pantulan mengikuti perilaku yang dijelaskan dalam "The Art of electronics"
oleh Horowitz & Hill:
Ketika sakelar ditutup, kedua kontak benar-benar terpisah dan terhubung kembali,
biasanya 10 hingga 100 kali dalam periode sekitar 1 ms.
Misalnya, proyek ini menunjukkan perbedaan antara tombol yang memantul dan
tidak memantul . Proyek ini memiliki dua tombol yang terhubung ke pin input Arduino
yang sama:
Kelengketan
Jika Anda ingin tombol tersebut tetap ditekan, tekan tombol Ctrl-klik (pada Mac
tekan tombol Cmd-klik). Tombol tersebut akan tetap ditekan hingga Anda mengeklik
tombol berikutnya. Hal ini berguna jika Anda perlu menekan beberapa tombol secara
bersamaan.
ConKontrol otomatisasi
https://shorturl.at/GYlsJ
19
Contoh berikut mensimulasikan penekanan tombol pada "btn1" selama 200 ms:
- set-control:
part-id: btn1
control: pressed
value: 1
- delay: 200ms
- set-control:
part-id: btn1
control: pressed
value: 0
https://shorturl.at/GYlsJ
20
Coding
// Pin terhubung ke LED
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
void loop() {
// Nyalakan LEDnya
digitalWrite(ledPin, HIGH);
https://shorturl.at/GYlsJ
21
// Tunggu 1 detik
delay(1000);
// Matikan LEDnya
digitalWrite(ledPin, LOW);
// Matikan LEDnya
delay(1000);
2 resistor.
UJIAN PRAKTEK
/ Lampu LED Berjalan Menggunakan Arduino UNO
https://shorturl.at/GYlsJ
22
int ledPin1 = 0;
int ledPin2 = 1;
void setup()
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
https://shorturl.at/GYlsJ
23
void loop()
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
delay(250);
digitalWrite(ledPin1, LOW);
delay(250);
digitalWrite(ledPin1, LOW);
delay(250);
digitalWrite(ledPin1, LOW);
delay(250);
digitalWrite(ledPin1, LOW);
delay(250);
https://shorturl.at/GYlsJ
24
int jumlahTekanan; //deklarasi variabel untuk jumlah tekanan yang diberikan dari tombol
void setup() {
void loop()
https://shorturl.at/GYlsJ
25
https://shorturl.at/GYlsJ
26
LCD I2C yang kita gunakan dalam latihan ini dilengkapi dengan rangkaian
tambahan kecil yang dipasang di bagian belakang modul. Modul ini
dilengkapi dengan chip PCF8574 (untuk komunikasi I2C) dan
potensiometer untuk mengatur lampu latar LED.
Jenis LCD ini ideal untuk menampilkan teks dan angka, oleh karena itu
dinamakan 'character LCD'.
LCD I2C yang kami gunakan dalam tutorial ini dilengkapi dengan rangkaian
tambahan kecil yang dipasang di bagian belakang modul. Modul ini
dilengkapi dengan chip PCF8574 (untuk komunikasi I2C) dan
potensiometer untuk mengatur lampu latar LED.
https://shorturl.at/GYlsJ
27
Jika kita perhatikan LCD dengan seksama, kita dapat melihat persegi
panjang kecil yang membentuk karakter-karakter individual pada LCD.
Setiap persegi panjang terdiri dari kisi-kisi berukuran 5x8 piksel. Nanti
dalam latihan ini, saya akan menunjukkan cara mengendalikan piksel-piksel
individual untuk menampilkan karakter-karakter khusus pada LCD.
Spesifikasi
https://shorturl.at/GYlsJ
28
https://shorturl.at/GYlsJ
29
int baris = 2;
//membuat obyek dengan alamat 0x27, dengan kolon dan baris yang
sebelumnya
https://shorturl.at/GYlsJ
30
void setup()
lcd.init();
lcd.backlight();
void loop()
https://shorturl.at/GYlsJ
31
void setup()
{
lcd.init();
lcd.backlight();
}
void loop()
{
int i;
lcd.setCursor(0,0);
lcd.print("Selamat Datang");
lcd.setCursor(0,3);
lcd.print("Di Toko Hp Sumitro Ramot S");
https://shorturl.at/GYlsJ
32
JARINGAN KOMPUTER
https://shorturl.at/GYlsJ
33
Materi Soal UH
PG
1. Kabel LAN
2. Konektor Lan
3. LCD
https://shorturl.at/GYlsJ
34
4. Ip address
5. Program C++
6. Topologi Jaringan
7. Firewall
8. Resistor
9. Hub
10. Roouter
11. Switch
12. Internet Connection
13. LANcard
14. Server
15. FTP
16. Program Coding Mematikan Led
17. Program Coding Menyalakan Led
Isian
1. Mengambarkan Rangkain Led dengan 5 Resistor
2. Kompenen dalam membagun Jaringan Komputer
3. LAN dengan Ip Addres.
4. Topologi Jaringan
5. Teknologi Ingternet
https://shorturl.at/GYlsJ