0% menganggap dokumen ini bermanfaat (0 suara)
168 tayangan31 halaman

03modul Belajar Arduino Untuk Siswa

Dokumen ini adalah modul belajar tentang Arduino, yang menjelaskan pengertian, manfaat, prinsip kerja, dan berbagai komponen serta sensor yang digunakan dalam proyek Arduino. Selain itu, modul ini juga membahas bahasa pemrograman yang digunakan dalam Arduino IDE dan struktur pemrograman yang diperlukan untuk mengembangkan proyek. Dengan belajar Arduino, siswa dapat meningkatkan kemampuan berpikir logis, sistematis, dan problem-solving yang penting di abad 21.

Diunggah oleh

kumara
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
168 tayangan31 halaman

03modul Belajar Arduino Untuk Siswa

Dokumen ini adalah modul belajar tentang Arduino, yang menjelaskan pengertian, manfaat, prinsip kerja, dan berbagai komponen serta sensor yang digunakan dalam proyek Arduino. Selain itu, modul ini juga membahas bahasa pemrograman yang digunakan dalam Arduino IDE dan struktur pemrograman yang diperlukan untuk mengembangkan proyek. Dengan belajar Arduino, siswa dapat meningkatkan kemampuan berpikir logis, sistematis, dan problem-solving yang penting di abad 21.

Diunggah oleh

kumara
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 31

DINAS PENDIDIKAN KABUPATEN LAMONGAN

SMP NEGERI 1 KEDUNGPRING

PRAKTIK LINTAS BIDANG

INFORMATIKA
INFORMATIKA

MODUL BELAJAR
MENGENAL ARDUINO
DAN IMPLEMENTASINYA
EDISI KE-1 STARTER

Ditulis oleh :
Achmad Falichul Hidayat, S.Kom
Apa sih Arduino itu ?

Arduino atau biasa juga disebut Mikrokontroler Arduino yaitu suatu kit
elektronik open source yang dirancang spesial untuk mempermudah
penggunanya bereksperimen. Khususnya dalam menghasilkan atau
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

pun meningkatkan fitur elektronik dengan paduan berbagai macam


sensor serta pengendali. Hardware Arduino berbentuk papan sirkuit
yang terdiri atas berbagai versi. Misalnya seperti Arduino Uno, Nano,
Mega, Esplora, Leonardo, dan sebagainya. Adapun untuk software-nya
yaitu Arduino IDE (Integrated Development Environment).

Beberapa contoh produk yang menggunakan Arduino di dalamnya


adalah robot line follower, robot keseimbangan, jam digital, sistem
kontrol rumah, robot humanoid, sistem pengaman cerdas, spider
robot, running text, dan sebagainya.

Robotika

Lampu Lalu Lintas Tempat Sampah


Pintar
ACHMAD FALICHUL HIDAYAT, S.KOM

R3
o
Un
no
dui
Smart Home Ar

Drone

Smart Farming
Cek Detak Jantung

1
Mengapa Kita Belajar Arduino?
Belajar pemrograman khususnya pemrograman hardware untuk project
Arduino tentu tak hanya sebatas mengenal teknologi otomasi dan
meningkatkan kemampuan melakukan pemrograman yang akan di
dapatkan, tetapi berbagai hal terkait dengan hal tersebut.
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Nah ini adalah tiga manfaat belajar pemrograman hardware untuk project
Arduino, di antaranya adalah sebagai berikut ini.

1. Meningkatkan Kemampuan Berpikir Secara Logis


Ketika kita membuat suatu project Arduino, kita
tidak akan bisa lepas dari logika-logika
pemrograman. Kesalahan logika yang digunakan,
tentu akan berakibat fatal terhadap project yang
akan dikembangkan. Jadi tanpa sadar kita akan
mendapatkan kemampuan berpikir secara logis
sebagai salah satu manfaat belajar bahasa
pemrograman.

2. Mengembangkan Cara Berpikir Dengan Sistematis


Saat membuat sebuah project, kita dituntut untuk
melakukannya secara sistematis. Jika tidak, pasti
output dari project itu akan salah bahkan error.
Dengan belajar membuat project Arduino, kita
akan belajar lebih dari sekedar bagaimana
membuat sesuai dengan urutannya. Kita juga akan
belajar tentang bagaimana cara berpikir secara
ACHMAD FALICHUL HIDAYAT, S.KOM

sistematis dan terorganisasi.

3. Meningkatkan Kemampuan dalam Mengatasi Masalah


Project yang akan kita buat pasti sudah memiliki
tujuan tertentu. Nah ini sudah merupakan salah satu
bukti bahwa kita akan belajar bagaimana cara
mengatasi suatu masalah dengan project kita.

Nah... BAGAIMANA menurut kalian, Keren Kan?


KETERAMPILAN BERPIKIR SEPERTI INILAH yang dibutuhkan siswa di
abad 21 INI...

2
Prinsip Kerja Arduino

Secara sederhana, prinsip kerja dari Arduino bisa kita gambarkan seperti
di bawah ini.
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

ARDUINO
KOMPONEN Pin Pin KOMPONEN
INPUT Input MIKROKONTROLER Output OUTPUT

Input dapat berupa PEMROSES Output dapat


sensor, keypad, berupa lampu LED,
joystick, saklar, motor DC, LCD,
camera, microphone, OLED, Speaker, dsb.
dsb.

Prinsip kerja arduino Arduino ibaratkan suatu otak dalam rangkaian. Arduino
ACHMAD FALICHUL HIDAYAT, S.KOM

bertugas memproses informasi dan mengendalikan kinerja komponen yang


terhubung pada rangkaian. Baik itu komponen input maupun output.

Kira-kira alur kerjanya seperti ini

Pembacaan data oleh komponen input > data dikirim ke pin input > data
masuk ke mikrokontroler > data diproses > data keluar dari Arduino >data
dikirim ke pin output > data diteruskan ke komponen output.

3
Mengenal Sensor
Apa sebenarnya sensor itu, bagaimana bentuknya dan apa saja jenisnya ?
Sensor adalah piranti yang ditujukan untuk mendeteksi keberadaan suatu
perubahan yang ada dan memberikan tanggapan berupa keluaran,
umumnya berupa isyarat listrik contohnya seperti sensor suhu yang akan
memberikan keluaran perubahan suhu dalam bentuk celcius.
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Jika diibaratkan dengan manusia, Sensor itu adalah indera (pendengaran,


penciuman, perasa, penglihatan, peraba)

Sensor Biometrik

Sensor biometrik adalah segala sensor yang terkait


dengan identifikasi seseorang melalui segala parameter
yang melekat di tubuh. Contohnya yaitu sensor sidik jari
(fingerprint reader) dan retina.

Sensor Gerakan

Sensor Gerakan adalah sensor yang mendeteksi


perubahan pergerakan fisik. Contohnya PIR (passive Infra
Red). Penggunaannya seperti untuk membuka pintu
ketika seseorang berada di depan pintu atau biasa
disebut pintu otomatis.

Sensor Lokasi
Sensor Lokasi adalah sensor yang dapat
memberikan informasi lokasi secara geografis.
Sebagai contoh GPS receiver dapat memberikan
ACHMAD FALICHUL HIDAYAT, S.KOM

informasi tentang letak lintang dan bujur.

Sensor Cahaya

Sensor Cahaya adalah segala sensor yang


memberikan informasi mengenai karakteristik
cahaya. Contoh umumnya yaitu fotoresistor
atau biasa disebut LDR (Light Dependent
Resistor) yang dapat mengukur intensitas
cahaya secara relatif.

4
Mengenal Sensor
Sensor Listrik

Sensor Listrik adalah sensor yang ditujukan untuk


menghasilkan informasi tentang sistem kelistrikan
sebagai contoh sensor arus yang digunakan
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

mengukur arus melalui suatu titik dalam rangkaian.

Sensor Lingkungan
Sensor Lingkungan adalah sensor yang
memberikan informasi berupa cuaca atau
lingkungan kita. Contohnya adalah sensor
kelembaban udara dan sensor suhu.

Sensor Mekanik
Sensor Mekanik adalah sensor yang berhubungan
dengan pengukur mekanisme dan alat-alat mekanis.
Sebagai contohnya yaitu Sensor Flex, Flexi Force,
Timbangan Digital.

Sensor Pemindai

Sensor Pemindai adalah sensor yang bekerja


atas dasar pindaian, RFID Reader dan Barcode
Reader adalah contohnya.
ACHMAD FALICHUL HIDAYAT, S.KOM

Sensor Suara
Sensor Suara adalah sensor yang berhubungan
dengan suara, contohnya adalah mikrofon yang
mengubah suara menjadi isyarat listrik.

Sensor Jarak

Sensor Jarak adalah sensor yang berguna untuk


mengukur jarak suatu objek atau mendeteksi
halangan di depan suatu objek. contohnya adalah
ultrasonik.

5
Datasheet Arduino
Konektor Pinout
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Karakteristik Arduino Uno

Kategori PIN Nama PIN Detail

Vin: Input tegangan ke Arduino ketika


menggunakan sumber daya eksternal.5V: Catu
Kekuatan Vin, 5V, 3.3V, GND daya yang digunakan untuk board
miktrokontroler.3.3V: Tegangan yang dihasilkan
oleh regulator on-board.GND: Ground
ACHMAD FALICHUL HIDAYAT, S.KOM

Reset Reset Mengatur ulang miktrokontroler

PIN Analog A10-A5 Untuk memberikan input analog sekitar 0-5V

PIN Input/Output PIN digital 0-13 Dapat digunakan sebagai PIN input atau output

Serial 0 (RX), 1 (TX) Untuk menerima atau transmisi data serial TTL

Interupsi Eksternal 2, 3 Sebagai pemicu interupsi

PWM 3, 5, 6, 9, 11 Memasok 8-bit PWM output

10 (SS), 11 (MOSI), 12
SPI Sebagai komunikasi SPI
(MISO), 13 (SCK)

LED 13 Untuk mengaktifkan lampu LED

TWI A4 9SDA), A5 (SCA) Sebagai komunikasi TWI

AREF AREF Memberikan tegangan acuan pada output

6
Apa Saja yang Digutuhkan dalam Praktik ini ?
Papan Arduino / Arduino Board
Jenis Arduino yang digunakan dalam
modul belajar ini yaitu Arduino Uno R3 yang
menggunakan chip mikrokontroler
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

berbasia ATmega 328

Breadboard / Project Board

Breadboard merupakan sebuah board


atau papan yang berfungsi untuk
merancang sebuah rangkaian
elektronik sederhana. Breadboard
tersebut nantinya akan dilakukan
prototipe atau uji coba tanpa harus
melakukan solder.

Kabel Jumper
Kabel Data

OTG
USB A-B Male

Sebagai alternatif, bisa juga


menggunakan kabel printer
untuk menghubungkan Arduino
dengan Komputer.
ACHMAD FALICHUL HIDAYAT, S.KOM

kabel jumper merupakan kabel


Resistor elektrik yang memiliki pin konektor di
setiap ujungnya dan
Fungsi utama dari resistor memungkinkanmu untuk
adalah membatasi aliran arus. menghubungkan dua komponen yang
Resistor dapat menahan arus Relay
melibatkan Arduino tanpa
dan memperkecil besar arus. memerlukan solder.

Push Button LED


LED (Light Emitting Diode)
Push button atau biasa juga disebut merupakan salah satu
sebagai Tombol Tekan merupakan
suatu saklar yang berfungsi sebagai + komponen elektronika
yang mengubah energi
penghubung (ON) atau pemutus (OFF)
rangkaian listrik.
- listrik menjadi energi
cahaya.

7
Mengenal Bahasa Pemrograman?
Bahasa pemrograman adalah teknik komunikasi standar untuk
mengekspresikan instruksi kepada komputer. Layaknya manusia, Coding
setiap bahasa memiliki tata tulis dan aturan tertentu.

Seperti halnya sebuah bahasa, misalnya bahasa Inggris, maka terdapat


kosakata/dictionary yang valid yang merupakan bagian dari bahasa
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Inggris, seperti “read, write, eat”. Selain itu terdapat pula


aturan/grammar agar kalimat atau paragraf yang dihasilkan dianggap
valid. Agar kita bisa berkomunikasi dengan orang yang menggunakan
bahasa Inggris, maka kita perlu mempelajari bahasa tersebut. Begitu pula
dengan bahasa pemrograman, ia adalah media berkomunikasi dengan
komputer yang terdiri dari lexis (kosakata) serta syntax (aturan)
penyusunan kata-kata tersebut untuk menjadi sebuah instruction
(kalimat) yang valid.

Komputer tidak bisa memahami bahasa manusia yang sangat kompleks


dan ambigu, sehingga jika kita ingin berkomunikasi dengan komputer,
memberi instruksi kepada komputer, maka haruslah dengan bahasa yang
dimengerti oleh komputer. Namun sayangnya, bahasa yang dimengerti
oleh komputer hanyalah bahasa tingkat rendah yaitu bahasa mesin yang
hanya terdiri dari binary code. Sebagai contoh berikut ini adalah bahasa
mesin untuk “Hello World”: 01001000 01100101 01101100 01101100 01101111
00100000 01010111 01101111 01110010 01101100 01100100.

Bisa dibayangkan betapa sulitnya untuk membuat program berisi


instruksi-instruksi yang panjang menggunakan bahasa biner tersebut.
Untuk itulah orang menciptakan berbagai bahasa pemrograman tingkat
tinggi yang berfungsi sebagai perantara antara bahasa manusia dengan
bahasa mesin. Bahasa pemrograman tingkat tinggi inilah yang biasa
dimaksud ketika orang menyebut istilah bahasa pemrograman. Bahasa
pemrograman tingkat tinggi seperti Python, C, Java, dan sebagainya
sudah jauh lebih mendekati bahasa manusia. Instruksi yang ditulis
dengan bahasa pemrograman ini disebut juga source code. Nantinya,
ACHMAD FALICHUL HIDAYAT, S.KOM

source code (atau “code” saja) tersebut harus ditranslate menjadi


machine code agar bisa dieksekusi oleh komputer.

Ada dua cara untuk mentranslate program yang dibuat dalam bahasa
tingkat tinggi ke bahasa mesin, yaitu compilation dan interpretation.

Compilation - semua source code (misalnya .cpp) akan ditranslate


secara sekaligus menjadi machine code oleh sebuah program yang
disebut compiler. Sebagai analogi, anda memiliki sebuah resep masakan
dalam bahasa Aceh, dan anda tidak memahami bahasa Aceh. Maka salah
satu cara yang bisa dilakukan agar anda bisa mengikuti resep tersebut
adalah mendapatkan versi resep yang sudah ditranslate ke dalam bahasa
Indonesia. Lalu anda tinggal mengikuti instruksi di resep seperti biasa.
Kode yang sudah di-compile tersebut (misalnya .exe) bisa didistribusikan
ke banyak mesin dan tinggal dieksekusi saja tanpa membutuhkan
program lainnya. Contoh compiled programming language adalah: C,
C++, Erlang, Haskell, Rust, and Go.
8
Bahasa Pemrograman di Arduino

Sekarang kita masuk ke Arduino-nya sendiri. Sebelum masuk ke bahasa


pemrogramannya, kita akan berkenalan dulu dengan aplikasi Arduino IDE.
Arduino IDE adalah salah satu aplikasi yang digunakan untuk memprogram
IC mikrokontroler agar dapat digunakan sesuai dengan fungsinya.

Pada dasarnya aplikasi ini menggunakan bahasa C, namun sedikit lebih


MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

berbeda untuk beberapa hal terutama karena tujuan dari aplikasi ini adalah
pengiriman perintah ke IC mikrokontroler. Ada beberapa bahasa yang perlu
disesuaikan meskipun secara logika tetap sama dengan bahasa C.

Struktur Pemrograman Arduino IDE


Struktur pemrograman yang ada di Arduino IDE
secara garis besar terbagi menjadi beberapa
bagian seperti gambar di atas. yaitu :
1. Header
2. Deklarasi Variabel
3. Setup
4. Loop

Header
Header berisi library yang kita butuhkan. Library-library dasar yang ada
dalam pemrograman bahasa C, sudah terinput otomatis dalam Arduino IDE.
Library dasar seperti stdio.h, stdlib.h, math.h, kemudian library
mikrokontroler yang digunakan dan masih banyak lagi. Sehingga, ketika
memprogram di Arduino IDE dan perlu library-library dasar sudah tidak
perlu dipanggil lagi di bagian header.
Library yang sifatnya pengembangan, yang tidak termasuk library dasar
maka harus dipanggil dibagian header. Misal library untuk LCD 16x2,
HCSR04, dan masih banyak lagi. Cara menulisnya sebagai berikut:
ACHMAD FALICHUL HIDAYAT, S.KOM

Deklarasi Variabel

Deklarasi variabel yang dimaksud yaitu variabel global, yaitu variabel yang
bisa digunakan diseluruh bagian program ini. Variabel terbagi menjadi dua,
yaitu global dan lokal. Untuk deklarasi variabel global terletak dibagian ini,
tetapi untuk variabel lokal maka dideklarasikan ditiap awal fungsi/prosedur
dimana variabel tersebut digunakan.
Cara penulisannya deklarasi variabel global sebagai berikut:

9
Bahasa Pemrograman di Arduino

Cara penulisan deklarasi variabel lokal adalah sebagai berikut:


MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Setup
Pada bagian ini, digunakan untuk mengkonfigurasi / mengatur
mikrokontroler supaya sesuai kebutuhan pengguna. Pada dasarnya pin-pin
yang ada pada mikrokontroler bisa digunakan sebagai masukan (input)
atau keluaran (output), baik digital maupun analog. Maka, mikrokontroler
harus diatur sebelum digunakan sesuai kebutuhan.
Kegunaan lainnya yaitu untuk menjalankan program yang hanya sekali
dijalankan seperti tampilan awal program, atau init. Cara menulisnya
sebagai berikut:

Loop
ACHMAD FALICHUL HIDAYAT, S.KOM

Bagian Loop merupakan bagian yang isinya program utama yang akan
dijalankan berulang-ulang. Program yang dijalankan sampai sumber tenaga
(power supply) dicabut.
Jika ingin membuat program menghidupkan LED yang dirangkai active low,
maka sebagai berikut cara penulisan programnya.

10
Aplikasi Arduino IDE

Upload
Open Sketch Serial Monitor
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Verify/Compile Save Sketch

New Sketch

Penjelasan Menu Arduino IDE


Verify Code: Berfungsi untuk mengecek code apakah ada yang error atau
sudah benar.
Upload: Berfungsi untuk mengisi program yang sudah diketik pada
software Arduino IDE ke papan Arduino.
New Sketch: Berfungsi untuk membuat halaman sketch atau code yang
baru.
Open Sketch: Berfungsi untuk membuka sketch atau code yang sudah ada.
Contohnya file yang berekstensi .ino
Save Sketch: Berfungsi untuk menyimpan sketch atau code yang kita edit
maupun kita ingin save supaya aman.
Serial Monitor: Berfungsi untuk menampilkan serial monitor untuk
membaca komunikasi serial RX TX antara laptop/PC dengan papan/board
Arduino.
Void Setup: Berfungsi untuk wadah menuliskan setingan pin hingga
setingan library (fungsi khusus).
Void Loop: Berfungsi untuk menjalankan program/code secara berulang
tanpa batas.
Keterangan Aplikasi: Berfungsi sebagai indikator keberhasilan atau error.
Konsole Log: Berfungsi sebagai log saat melakukan compile maupun
upload code/sketch ke papan Arduino.
Line Number Sketch: Berfungsi sebagai tanda cursor komputer berada
ACHMAD FALICHUL HIDAYAT, S.KOM

pada baris keberapa.


Info Board dan Port Koneksi: Berfungsi sebagai indikator bahwa setingan
PC/Laptop sudah terhubung ke papan Arduino yang benar sesuai dengan
tipe papan Arduino.
Alur Pembuatan Program
Seorang programmer tidak melakukan pembuatan dan pengkodean
program begitu saja, namun mengikuti perencanaan dan metodologi
yang terstruktur yang memisahkan proses suatu aplikasi menjadi
beberapa bagian.
Berikut langkah-langkah sistematis dasar dalam menyelesaikan
permasalahan pemrograman :
mendefinisikan masalah.
menganalisa dan membuat rumusan pemecahan masalah.
desain algoritma dan representasi.
pengkodean, uji coba, dan pembuatan dokumentasi.
11
Bagaimana Cara Memprogramnya ?
Komputer Desktop/Laptop

(1) Buka aplikasi sketch Arduino


melalui tombol Start menu Windows
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

(2) Setelah terbuka aplikasinya, buka


2 contoh program blink.

(3) Pilih Board :


"Arduino Uno"
(4) memilih port
yang akan
3
digunakan. (Port
akan muncul jika
Arduino sudah
terhubung ke
komputer)

4
ACHMAD FALICHUL HIDAYAT, S.KOM

Upload open
5
Verify New Save

(5) Klik Verify untuk memverifikasi program.


hal ini untuk mencegah kemungkinan
adanya kesalahan pada program yang
dibuat.
(6) Setelah verifikasi selesai maka lakukan
upload program pada Arduino dengan
menekan tombol upload dan Arduino akan
langsung menjalankan program yang
dimasukkan.
12
Bagaimana Cara Memprogramnya ?
Chromebook
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Kalian dapat menulis


dan mengunggah
sketches/sketsa/
kode program di
Chrome OS dengan
Editor Web di Arduino
Cloud. Editor Web
memiliki serangkaian
fitur ekstensif yang
mirip dengan IDE
desktop.

untuk instalasinya
adalah sebagai berikut :
1. Buka halaman
Chrome web store
2. Klik Add to Chrome
3. Klik Add app to
Confirm
4. Klik Launch app
untuk memulai
editor web atau klik
menuju halaman
create.arduino.cc/e
ACHMAD FALICHUL HIDAYAT, S.KOM

ditor.

Syarat menggunakan web editor yaitu harus


terkoneksi dengan internet.
Untuk memulainya login terlebih dahulu
dengan akun Arduino atau menggunakan akun
google kalian.
Setelah itu menghubungkan Compatible
Hasil penulisan sketch ini
Board ke Port USB di komputer. bisa juga dibagikan
Pilih jenis board/papan arduino yang melalui link yang tersedia
digunakan melalui menu dropdown. dan juga blog atau
Mulai menulis program "New Sketch" di Editor website kalian dengan
atau menggunakan Sketch dari contoh yang menyalin embed code
melalui menu Share
sudah disediakan.
Sketch.
13
Bagaimana Cara Memprogramnya ?
Ponsel Android

Kalian dapat menulis dan mengunggah


sketches/sketsa/ kode program di HP
android kalian dengan menginstal aplikasi
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

ArduinoDroid melalui Play Store.

Aplikasi ini sifatnya offline,


jadi bisa memprogram tanpa OTG
harus terhubung ke internet.
Untuk menghubungkan ke
papan Arduino, dibutuhkan
alat tambahan yaitu adaptor
OTG (On The Go) dan jenis
OTG menyesuaikan HP
masing-masing.
Compile Monitor

Simpan Upload Menu


ACHMAD FALICHUL HIDAYAT, S.KOM

Aplikasi berbasis
Android ini bisa
digunakan sebagai
alternatif untuk
belajar pemrograman
Arduino tanpa
komputer
14
Praktik - 1
Blinking LED (Perakitan Komponen)
Tujuan :

Peserta didik diharapkan mampu :


1. merakit komponen elektronika ke papan Arduino.
2. membuat program Led berkedip
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Peralatan yang dibutuhkan:

NO ALAT & BAHAN BANYAKNYA

1 Arduino Uno R3 1 buah


2 Bread board/ Project board 1 buah
3 LED 1 buah
4 Resistor 220 ohm 3 buah
5 Kabel Jumper (male to male) secukupnya
Anoda (+)
Rangkaian Percobaan :

Katoda (-)

Langkah-Langkah Percobaan :
ACHMAD FALICHUL HIDAYAT, S.KOM

Susunlah komponen-komponen praktikum seperti gambar diatas :


1. Hubungkan kaki - Katoda LED ke Pin Gnd Arduino menggunakan kabel
jumper.
2. Hubungkan kaki + Anoda LED dengan kaki-1 Resistor.
3. Hubungkan kaki-2 Resistor dengan Pin 13 Arduino menggunakan kabel
jumper.
4. Hubungkan papan/board Arduino Uno dengan Komputer
menggunakan kabel USB.
5. Pilih Port yang digunakan untuk berkomunikasi : Tools -> Port -> (pilih
port yang digunakan, contoh COM 3)
6. Bukalah IDE Arduino, kemudian ketikkan kode program/sketch.
7. Compile menggunakan verify button (tanda ceklist pada IDE
arduino) untuk mengecek ada atau tidaknya error/kesalahan dalam
pengetikan.
8. Upload program ke arduino dengan cara, pilih File > Upload to I/O
board, atau tekan tombol tanda panah pada jendela IDE arduino.
15
Praktik - 1
Blinking LED (Coding)
Ligt Emitting Diode
program Percobaan 1 :
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

program Percobaan 2 :
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
Rubahlah LED_BUILTIN menjadi angka 13
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000); void setup() {
} // inisialisasi pin 13 sebagai output.
pinMode(13, OUTPUT);
}
Amati outputnya dan tuliskan
hasil dari percobaan ke-1 void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Amati outputnya dan tuliskan
program Percobaan 3 : hasil dari percobaan ke-2

tambahkan int led = 13; di awal


program
rubahlah angka 13 menjadi tulisan
led
rubahlah tulisan HIGH menjadi program Percobaan 4 :
angka 1 dan LOW menjadi angka 0. Ketik ulang tulisan dibawah ini
rubahlah delay(1000) menjadi
delay(500); atau delay(250); int Led = 13;

int led = 13; void setup() {


ACHMAD FALICHUL HIDAYAT, S.KOM

inisialisasi variabel led sebagai output.


void setup() { pinMode(led, output);
//inisialisasi variabel led sebagai output. }
pinMode(led, OUTPUT);
} void loop() {
digitalwrite(led, 1);
void loop() { delay(500);
digitalWrite(led, 1); digitalWrite(led, 0);
delay(500); delay(500)
digitalWrite(led, 0); }
delay(500);
}
Apa yang terjadi setelah kalian
menuliskan kode program
Amati outputnya dan tuliskan pada percobaan ke-4 ?
hasil dari percobaan ke-3

16
Praktik - 1
Blinking LED (evaluasi)
Setelah mencoba mempraktikkan percobaan ke-4, tuliskan penyebab terjadinya
kesalahan sehingga program tidak bisa berjalan !

Tuliskan kesalahan dalam penulisan program yang kalian temui


MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

1.
2.
3.
4.
5.

Kesimpulan :

Tuliskan kesimpulan hasil dari percobaan 1, 2, 3, dan 4

Evaluasi 1 :

Jawablah pertanyaan berikut sesuai dengan pengalaman kalian dalam


melakukan percobaan 1,2,3 dan 4 !
1. apa yang harus dilakukan seandainya pada saat mengupload kode
program ke papan Arduino mengalami kendala ?
2. jelaskan apa yang dimaksud dengan baris program pinMode(13,
ACHMAD FALICHUL HIDAYAT, S.KOM

OUTPUT) ?
3. jelaskan apa yang dimaksud dengan baris program digitalWrite(13, 1) ?
4. Jika dalam percobaan 3, tulisan int led = 13 diganti dengan int led = 10,
menurut kalian apa yang akan terjadi setelah program dijalankan ?
Jelaskan alasannya !
5. sebutkan output yang dihasilkan dari baris program :
digitalWrite(13, HIGH);
delay(2000);

Evaluasi 2 :

Dari rangkaian yang sudah dibuat, pin (+) Led yang sebelumnya dicolokkan
di pin 13 selanjutnya pindahkan ke pin 2. buatlah kode programnya dan tulis
ulang kode programnya di lembar kerja yang disediakan atau di buku tulis.

17
Praktik 2
Lampu Lalu Lintas (Perakitan Komponen)
Tujuan :
Peserta didik diharapkan mampu :
1. merakit komponen elektronika ke papan Arduino.
2. memprogram Lampu Lalu Lintas Sederhana
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Peralatan yang dibutuhkan:

NO ALAT & BAHAN BANYAKNYA

1 Arduino Uno R3 1 buah


2 Bread board/ Project board 1 buah
3 LED 3 buah (Merah, Kuning, Hijau)
4 Resistor 220 ohm 3 buah
5 Kabel Jumper (male to male) secukupnya

Rangkaian Percobaan :

PIN
LED
ARDUINO
Merah 4
Kuning 3
Hijau 2

Langkah-Langkah Percobaan :
ACHMAD FALICHUL HIDAYAT, S.KOM

Susunlah komponen-komponen praktikum seperti gambar diatas :


1. Hubungkan kaki - Katoda LED ke Pin Gnd Arduino menggunakan kabel
jumper.
2. Hubungkan kaki + Anoda LED dengan kaki-1 Resistor.
3. Hubungkan kaki-2 Resistor dengan Pin Arduino (lihat tabel diatas)
menggunakan kabel jumper.
4. Hubungkan papan/board Arduino Uno dengan Komputer
menggunakan kabel USB.
5. Pilih Port yang digunakan untuk berkomunikasi : Tools -> Port -> (pilih
port yang digunakan, contoh COM 3)
6. Bukalah IDE Arduino, kemudian ketikkan kode program/sketch.
7. Compile menggunakan verify button (tanda ceklist pada IDE
arduino) untuk mengecek ada atau tidaknya error/kesalahan dalam
pengetikan.
8. Upload program ke arduino dengan cara, pilih File > Upload to I/O
board, atau tekan tombol tanda panah pada jendela IDE arduino.
18
Praktik - 2
Lampu Lalu Lintas (Coding)
program Percobaan 1 : Amati outputnya dan tuliskan
hasil dari percobaan ke-2 di
void setup() {
// inisialisasi pin 2,3, dan 4 sebagai output. lembar kerja
pinMode(2, OUTPUT);
MODUL BELAJAR ARDUINO

pinMode(3, OUTPUT);
UNTUK PELAJAR - EDISI KE-1 (STARTER)

pinMode(4, OUTPUT);
}

void loop() { program Percobaan 3 :


digitalWrite(4, HIGH);
delay(1000); Rubahlah angka 2,3, dan 4 ke
digitalWrite(4, LOW); dalam variabel seperti berikut.
delay(1000);
int hijau = 2;
digitalWrite(3, HIGH); int kuning = 3;
delay(1000); int merah = 4;
digitalWrite(3, LOW);
delay(1000); void setup() {
// inisialisasi pin 2,3, dan 4 sebagai output.
digitalWrite(2, HIGH);
pinMode(hijau, OUTPUT);
delay(1000);
pinMode(kuning, OUTPUT);
digitalWrite(2, LOW);
pinMode(merah, OUTPUT);
delay(1000);
}
}
void loop() {
digitalWrite(merah, 1);
delay(2000);
program Percobaan 2:
digitalWrite(merah, 0);
delay(2000);
Rubahlah nilai dari delay dan rubah
HIGH/LOW-nya menjadi angka 1/0 digitalWrite(kuning, 1);
delay(1000);
seperti berikut. digitalWrite(kuning, 0);
delay(1000);
void setup() {
// inisialisasi pin 2,3, dan 4 sebagai output. digitalWrite(hijau, 1);
pinMode(2, OUTPUT); delay(3000);
pinMode(3, OUTPUT); digitalWrite(hijau, 0);
ACHMAD FALICHUL HIDAYAT, S.KOM

pinMode(4, OUTPUT); delay(3000);


} }

void loop() { Amati outputnya dan tuliskan


digitalWrite(4, 1); hasil dari percobaan ke-3 di
delay(2000); lembar kerja
digitalWrite(4, 0);
delay(2000);
digitalWrite(3, 1);
delay(1000);
digitalWrite(3, 0);
delay(1000);
Amati outputnya dan tuliskan
digitalWrite(2, 1);
delay(3000); hasil dari percobaan ke-2 di
digitalWrite(2, 0); lembar kerja
delay(3000);
}

19
Praktik - 2
Lampu Lalu Lintas (evaluasi)
Setelah mencoba mempraktikkan percobaan ke-4, tuliskan penyebab terjadinya
kesalahan sehingga program tidak bisa berjalan !

Tuliskan kesalahan dalam penulisan program yang kalian temui


MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

1.
2.
3.
4.
5.

Kesimpulan :

Tuliskan kesimpulan hasil dari percobaan 1, 2, dan 3

Evaluasi 1 :

Membuat program lampu berjalan

Rubahlah program pada percobaan 3 sehingga pada saat arduino dalam


kondisi aktif atau ada tegangan listrik, maka lampu akan menyala
bergantian sesuai urutan dibawah :
ACHMAD FALICHUL HIDAYAT, S.KOM

lampu menyala bersamaan selama 1 detik


lampu menyala bergantian mulai dari merah, kuning, hijau
lampu menyala bergantian dari hijau, kuning, merah
lampu merah, kuning, hijau menyala bersama dan berkedip 3 kali

Kondisi diatas akan berjalan secara terus menerus (looping), dan akan
berhenti dengan sendirinya jika Arduino tidak mendapat tegangan listrik
(kondisi off).

Evaluasi 2 :

Setelah menyelesaikan tugas praktik membuat program lampu berjalan,


selanjutnya salinlah kode program yang sudah dibuat dilembar kerja atau
buku tulis, dan berikan penjelasan di tiap-tiap barisnya.

20
Praktik 3
Kontrol Lampu dengan Push Button (Perakitan Komponen)
Tujuan :
Peserta didik diharapkan mampu :
1. merakit komponen elektronika ke papan Arduino.
2. mengontrol led dengan push button
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Peralatan yang dibutuhkan:

NO ALAT & BAHAN BANYAKNYA

1 Arduino Uno R3 1 buah


2 Bread board/ Project board 1 buah
3 LED 1 buah
4 Push Button 1 buah
5 Resistor 220 ohm 1 buah
6 Resistor 1 K ohm 1 buah
7 Kabel Jumper (male to male) secukupnya
Rangkaian Percobaan :

LED PIN

Led 13
Push Button A3
ACHMAD FALICHUL HIDAYAT, S.KOM

Langkah-Langkah Percobaan :
Susunlah komponen-komponen praktikum seperti gambar diatas :
1. Langkah-langkah pemasangan pin led sama seperti pada praktik 1 dan
hanya menambahkan pin push button.
2. Hubungkan kaki-1 push button ke ground (GND).
3. Hubungkan kaki-2 push button ke kaki-1 Resistor dengan pemasangan
seperti pada gambar.
4. Selanjutnya kaki-2 resistor dihubungkan ke 5V.
5. Pada kaki-2 push button, tambahkan kabel jumper dan dihubungkan ke
pin A3.
6. Selanjutnya lakukan proses mulai menancapkan kabel usb dari Arduino
ke Komputer, klik Compile, dan Upload program ke mikrokotroler
Arduino (langkahnya sama seperti pada praktik 1 dan 2).

21
Praktik - 3
Kontrol Lampu dengan Push Button (Coding)
program Percobaan 1 :
void setup() {
// inisialisasi pin A3 sebagai input.
// insisialisasi pin 13 sebagai output
pinMode(A3, INPUT); program Percobaan 3 :
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

pinMode(13, OUTPUT);
} Kembalikan kembali nilai logika yang
semula 0 menjadi 1;
void loop() {
if(digitalRead(A3))==1) { Tambahkan variabel yang bernama
digitalWrite(13, HIGH); tombol yang digunakan untuk
} else {
digitalWrite(13, LOW);
menyimpan data push button;
}
delay(10); int Tombol = 0;
}
void setup() {
// inisialisasi pin A2 sebagai input.
Tekan tombol push button dan // insisialisasi pin 13 sebagai output
amati outputnya. selanjutnya pinMode(A3, INPUT);
tuliskan hasil dari percobaan pinMode(13, OUTPUT);
}
ke-1 ke lembar kerja
void loop() {
Tombol=digitalRead(A3);
if(digitalRead(A3))==1) {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
program Percobaan 2:
delay(1000);
} else {
Rubahlah nilai logika push button yang
digitalWrite(13, LOW);
semula 1 menjadi 0. delay(100);
}
void setup() { }
// inisialisasi pin A3 sebagai input.
// insisialisasi pin 13 sebagai output
ACHMAD FALICHUL HIDAYAT, S.KOM

pinMode(A3, INPUT);
pinMode(13, OUTPUT);
Tekan tombol push button dan
} jangan dilepas hingga 10 detik,
Amati outputnya dan tuliskan
void loop() { hasil dari percobaan ke-3 di
if(digitalRead(A3))==0) { lembar kerja
digitalWrite(13, HIGH);
} else {
digitalWrite(13, LOW);
}
delay(10);
}

Tekan tombol pushbutton dan


amati outputnya. selanjutnya
tuliskan hasil dari percobaan
ke-2 ke lembar kerja

22
Praktik - 3
Kontrol Lampu dengan Push Button (evaluasi)
Setelah mencoba mempraktikkan ketiga percobaan diatas, dimungkinkan
terjadi beberapa hambatan. tuliskan permasalahan-permasalahan yang kalian
temui dan bagaimana langkah kalian dalam memecahkan permasalahan
tersebut !
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Tuliskan berdasarkan pengalaman kalian saat melakukan praktik


1.
2.
3.
4.

Kesimpulan :

Tuliskan kesimpulan hasil dari percobaan 1, 2, 3, dan 4

Evaluasi 1 :

Jawablah pertanyaan berikut sesuai dengan pengalaman kalian dalam


melakukan percobaan 1,2,dan 3 !
1. apa fungsi dari variabel pada praktik percobaan ke-3 ?
2. Jika pin push button dipindah ke pin 2, baris program mana saja yang
ACHMAD FALICHUL HIDAYAT, S.KOM

perlu dirubah pada percobaan ke-3? berikan penjelasannya.


3. jelaskan apa yang dimaksud dengan baris program
Tombol=digitalRead(A3) ?
4. Jika tulisan "T" pada baris program Tombol=digitalRead(A3) diganti
tombol=digitalRead(A2), menurut kalian setelah meng-compile program
hasilnya seperti apa?
5. apa perbedaan antara nilai logika 1 dan 0 pada saat memprogram push
button untuk mengontrol lampu?

Evaluasi 2 :

Modifikasilah program pada percobaan ketiga sehingga outputnya ketika


tombol ditekan, lampu akan berkedip cepat, dan jika dilepas, lampu akan
berkedip lambat. Buatlah programnya dan salinlah kode program yang
sudah berhasil dibuat di lembar kerja atau buku tulis masing-masing.

23
Praktik - Lanjutan
Traffic Light
Lampu Lalu Lintas
Tujuan :

Peserta didik diharapkan mampu :


MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

1. mengimplementasikan praktik yang sudah dipelajari sebelumnya


2. membuat program lampu lalu-lintas

Apa yang terjadi jika di


perempatan jalan tidak diberi
lampu lalu lintas? Bisa diprediksi
akan terjadi kekacauan, dan
bahkan bisa menyebabkan terjadi
kecelakaan.

Semakin bertambahnya jumlah


kendaraan di jalan raya
menjadikan fungsi lampu lalu
lintas menjadi sangat penting,
sehingga kehaditrannya sangatlah
diperlukan untuk bisa menjamin
ketertiban dalam berlalu-lintas.

Dalam praktik kali ini, kalian akan belajar bagaimana lampu lalu lintas
bekerja dan bagaimana cara memprogramnya.

Lampu lalu-lintas merupakan sebuah alat pemberi isyarat lalu-lintas yang


akan mengontrol arus lalu lintas.

Cara kerjanya yaitu sinyal waktu


ACHMAD FALICHUL HIDAYAT, S.KOM

sudah ditentukan urutan operasinya


berdasarkan jumlah waktu yang
sama untuk setiap pergerakan lalu-
lintas. Sinyal ini akan mengubah
lampu sesuai dengan jumlah lalu
lintas di setiap arah.
Mereka menggunakan berbagai
jenis sensor untuk mendeteksi
kendaraan dan menyesuaikan
lamanya waktu lampu hijau menyala
serta memungkinkan sebanyak
mungkin kendaraan untuk bisa
melalui persimpangan.

24
Praktik - Lanjutan
Traffic Light Lampu Lalu Lintas -
Perempatan Jalan

Perencanaan penggunaan pin Arduino :


PIN
LED VARIABEL DEFINISI PIN
Lampu 1 ARDUINO
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

2 Merah 1 M1 #define M1 2
3 Kuning 1 K1 #define K1 3
4 Hijau 1 H1 #define H1 4 Lampu 2
5 Merah 2 M2 #define M2 5
6 Kuning 2 K2 #define K2 6

Lampu 3 7 Hijau 2 H2 #define H2 7


8 Merah 3 M3 #define M3 8
9 Kuning 3 K3 #define K3 9
10 Hijau 3 H3 #define H3 10 Lampu 4

11 Merah 4 M4 #define M4 11
12 Kuning 4 K4 #define K4 12
13 Hijau 4 H4 #define H4 13

Skematik Traffic Light


Lampu 4 Lampu 3 Lampu 2 Lampu 1

- +
KATODA

ANODA
ACHMAD FALICHUL HIDAYAT, S.KOM

GND

Ke Pin Arduino
Pin 2 - 13

L-4

L-1 L-3

L-2

Ground / GND

25
Praktik - Lanjutan
Traffic Light
Lampu Lalu Lintas
Contoh :
Membuat program lampu lalu lintas di perempatan jalan (satu arah).
Adapun pengaturan waktunya yaitu : Lampu Merah dan Hijau
menyala selama 5 detik, Lampu kuning menyala 2 detik.
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

L-1 L-1

Kondisi 1 Kondisi 2
L-1 L-1
L-2 L-2
L-2 L-2

Pin yang digunakan :


L-1 Pin 2 : M1, Pin 3 : K1, Pin 4 : H1

L-2 Pin 5 : M2, Pin 6 : K2, Pin 7 : H2

Logika Pemrograman Pergerakan Lampu :

L-1 L-2 L-1 L-2 L-1 L-2 L-1 L-2


ACHMAD FALICHUL HIDAYAT, S.KOM

Kondisi Pertama Kondisi Kedua Kondisi Ketiga Kondisi Keempat

H1 = 1, M2 = 1 K1 = 1, M2 = 1 M1 = 1, H2 = 1 M1 = 1, K2 = 1
digitalWrite(H1,1); digitalWrite(H1,0); digitalWrite(M2,0); digitalWrite(H2,0);
digitalWrite(M2,1); digitalWrite(K1,1); digitalWrite(K1,0); digitalWrite(M1,1);
delay(5000); digitalWrite(M2,1); digitalWrite(M1,1); digitalWrite(K2,1);
delay(2000); digitalWrite(H2,1); delay(2000);
delay(5000); digitalWrite(M1,0);
digitalWrite(K2,0);

26
Kode Program / Sketch : Traffic Light
Lampu Lalu Lintas
#define M1 2
#define K1 3 Logika "1" = "HIGH" -> Lampu Menyala
#define H1 4 Logika "0" = "LOW" -> Lampu Padam
#define M2 5 Delay "5000" -> Menunggu selama 5 detik
#define K2 6
Delay "2000" -> Menunggu selama 2 detik
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

#define H2 7

void setup()
{
pinMode(2, OUTPUT); //Merah-1
pinMode(3, OUTPUT); //kuning-1
pinMode(4, OUTPUT); //Hijau-1
pinMode(5, OUTPUT); //Merah-2
pinMode(6, OUTPUT); //kuning-2
pinMode(7, OUTPUT); //Hijau-2
}

void loop()
{
//(1) Kondisi lampu H1,M2 = ON
digitalWrite(H1,1);
digitalWrite(M2,1);
delay(5000);

//(2) Kondisi lampu K1,M2 = ON


digitalWrite(H1,0);
Lampu 2 Lampu 1
digitalWrite(K1,1);
digitalWrite(M2,1);
delay(2000);

//(3) Kondisi lampu M1,H2 = ON


digitalWrite(M2,0);
ACHMAD FALICHUL HIDAYAT, S.KOM

digitalWrite(K1,0);
digitalWrite(M1,1);
digitalWrite(H2,1);
delay(5000);

//(4) lampu M1,K2 = ON


digitalWrite(H2,0);
digitalWrite(M1,1);
digitalWrite(K2,1);
delay(2000);

digitalWrite(M1,0);
digitalWrite(K2,0);
}

27
Tantangan ini untuk mengasah logika berpikir kalian, yaitu
dengan mengatur jalannya lampu lalu lintas.

Challenge 1
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)

Pertigaan Jalan
L3

L1

L2
B D

Challenge 2
Perempatan Jalan - 1 Kondisi

L4
ACHMAD FALICHUL HIDAYAT, S.KOM

L1 L3

L2

28
MODUL BELAJAR ARDUINO
ACHMAD FALICHUL HIDAYAT, S.KOM UNTUK PELAJAR - EDISI KE-1 (STARTER)

L1
Challenge 3

L4

L2
Perempatan Jalan - 2 Kondisi

L3

29
Projek Pengembangan
Berikut adalah salah satu contoh projek Arduino yang bisa dikembangkan
kedepannya berkaitan dengan lampu lalu lintas.
MODUL BELAJAR ARDUINO
UNTUK PELAJAR - EDISI KE-1 (STARTER)
ACHMAD FALICHUL HIDAYAT, S.KOM

30

Anda mungkin juga menyukai