Anda di halaman 1dari 47

Ullam ne por arum sim sunt alit unt recate duciatiscium

1
Starter Kit Arduino - Starlectric

YUK Belajar arduino !

2
Daftar Isi

Daftar isi

Starter Kit Arduino................................................................... 4


Apa saja di dalam Starter Kit ?......................................... 4
Pengenalan Arduino................................................................ 6
Apa itu Arduino ?............................................................... 6
Arduino IDE....................................................................... 7
Upload Program Arduino................................................. 8
Serial Monitor.................................................................... 9
Menambahkan & Menggunakan Library......................... 10
01 - Kontrol Lampu LED........................................................... 12
02 - Membaca Input Switch..................................................... 15
03 - Display Teks dengan LCD I2C........................................... 18
04 - Termometer dengan DHT11............................................. 21
05 - Penggaris Digital dengan Ultrasonik................................ 24
06 - Alarm Anti Maling............................................................. 27
07 - Lampu Teras Otomatis...................................................... 30
08 - Lampu Tidur Pelangi......................................................... 33
09 - Detektor Objek dengan Infrared...................................... 36
10 - Mengontrol Motor Servo.................................................. 39
11 - Input Angka dengan Keypad............................................ 42

3
Starter Kit Arduino - Starlectric

Starter Kit Arduino

1 Apa saja di dalam Starter Kit ?

3
2
1

7
5 6
4

8 9 11
10

13
14 15

17

12 18

4
No Nama Item Qty
1 Arduino Uno dengan Kabel USB 1
2 Breadboard 400 1
3 LED Merah, LED Hijau, LED Kuning 9
4 LCD Karakter 16x2 with I2C Module 1
5 DHT11 Sensor Suhu dan Kelembapan 1
6 LED RGB (Red, Green, Blue) 1
7 LDR (Light Dependent Resistor) 1
8 Sensor Ultrasonik HC-SR04 1
9 Sensor Gerakan (PIR) 1
10 Motor Servo SG90 1
11 Buzzer Active 5V 1
12 Keypad Matrix 4x4 1
13 Resistor 330 ohm, 10K ohm, 120K ohm 9
14 Potentiometer 10K 1
15 Switch 5mm 8
16 Sensor Halangan 1
Jumper Male Male 20cm 5
17
Jumper Male Female 20cm 5

5
Starter Kit Arduino - Starlectric

Pengenalan Arduino

1 Apa itu Arduino ?

Arduino Uno R3 DIP Version

A
rduino adalah board modul mikrokontroller yang digunakan
untuk membuat perangkat digital. Board Arduino dilengkapi
dengan pin Input/Output (I/O) baik digital maupun analog yang
dapat digunakan untuk menghubungkan Arduino dengan komponen
lain seperti modul sensor, lampu LED, motor DC, modul bluetooth,
komunikasi serial dan banyak lagi.

Arduino merupakan sistem mikrokontroller yang menjalankan program


yang diupload oleh pengguna menggunakan Arduino IDE. Pemograman
dapat menggunakan bahasa pemograman C dan C++.

Terdapat banyak versi Arduino yang ada di pasaran, seperti Arduino


UNO, Arduino Mega2560, Arduino Nano, Pro Mini, Leonardo dan lain-
lain. Pada Starter Kit Arduino ini kita lengkapi dengan Arduino UNO
yang menggunakan IC dari Atmel yaitu ATMega328P.

Arduino UNO memiliki 14 pin input/output digital. Di mana dari 14 pin


tersebut, 6 pin dapat digunakan untuk output sinyal PWM dan 6 pin
untuk input sinyal analog.

6
Pengenalan Arduino

2 Arduino IDE

Arduino IDE digunakan untuk menulis program yang akan


diupload ke board Arduino untuk melakukan tugas yang
diperintahkan pengguna. Program yang ditulis menggunakan
Arduino IDE disebut Sketch.

Tampilan Arduino IDE

Gambar di atas adalah tampilan Arduino IDE. Setiap sketch


Arduino selalu memiliki 2 bagian fungsi utama, yaitu fungsi
setup() dan loop().

Fungsi setup() diproses oleh Arduino pada saat pertama kali


diaktifkan, sering kali digunakan untuk melakukan konfigurasi
sesuai yang dibutuhkan. Sedangkan fungsi loop() akan diproses
oleh Arduino secara berulang-ulang, di sinilah program utama
ditulis.

7
Starter Kit Arduino - Starlectric

3 Upload Program Arduino

Sebelum melakukan upload program Arduino, pastikan board


yang terpilih dan port sesuai dengan modul Arduino yang dimiliki,
pada percobaan ini kita gunakan Arduino UNO.
Ubah board pada Tools > Board > Arduino UNO.
Pilih Port pada Tools > Port > COMx (sesuaikan dengan yang ada)

Verify untuk melakukan pengecekan error pada program.

Upload untuk upload program ke modul Arduino.

Tampilan di atas adalah program untuk menyalakan LED dan


mematikan LED selama 1 detik (1000ms).
Untuk percobaan ini, coba untuk merubah nilai delay(1000)
menjadi delay(500).
Kemudian tekan tombol upload. Perhatikan apa yang terjadi
pada LED di modul Arduino UNO.

8
Pengenalan Arduino

4 Serial Monitor

Tombol Serial monitor di pojok kanan atas Arduino IDE.

Fungsi serial monitor adalah sebagai tampilan komunikasi antara


modul Arduino dan Komputer. Dengan serial monitor kita dapat
mengirim dan menerima data seperti alphabet dan angka.

Untuk memulai komunikasi serial, perlu dilakukan fungsi


Serial.begin(9600) di dalam fungsi setup(), yang berarti
Arduino memulai komunikasi serial dengan baud rate 9600 bps.

Ketika hendak mengirim data ke komputer melalui serial dapat


melakukan fungsi Serial.print(“HELLO”). Di mana “HELLO”
adalah data yang dikirim.

9
Starter Kit Arduino - Starlectric

5 Menambahkan & Menggunakan Library

Library pada Arduino adalah kumpulan coding yang memiliki


fungsi khusus untuk menghubungkan komponen seperti sensor,
LCD, motor dan lain-lain. Dengan menggunakan library tambahan
dapat memudahkan pembuatan program Arduino.

Untuk menggunakan library, dapat mendownload jenis libary


yang dibutuhkan. Sebagai contoh, kita akan menggunakan library
LiquidCrystal I2C. Library berfungsi untuk menggunakan LCD
dengan modul I2C.

Pilih menu Sketch > Include Library > Add .ZIP Library.

Pilih library yang akan ditambah. Pada contoh kita gunakan


LiquidCrystal_V1.2.1

10
Pengenalan Arduino

Menambahkan library juga dapat dilakukan manual dengan


meletakkan folder library pada folder Documents\Arduino\
Libraries.

Untuk menggunakan library pada Arduino bisa melalui menu


Sketch > Include Library > Library yang digunakan.

Cara ini akan menambahkan baris #include pada code untuk


setiap file header (ekstensi file .h)

Pada contoh di bawah, sudah ditambahkan library untuk


LiquidCrystal_I2C.h pada program.

11
Starter Kit Arduino - Starlectric

01 - Kontrol Lampu LED

1 INTRO

Pada project ini kita akan mengenal bagaimana mengontrol LED


dan fungsi dasar dari program dengan Arduino. Dengan cara
yang sama kita juga dapat mengontrol pin digital pada Arduino
agar dapat diaplikasikan pada modul lain.

Gunakan resistor sebesar 330 ohm untuk membatasi arus yang


melewati LED agar tidak cepat putus.

Hubungkan kaki Anode pada sumber arus dan


Cathode pada Ground. Pada umumnya, kaki Anode
lebih panjang daripada kaki Cathode.

Kita juga akan mengenal Breadboard


atau Project Board. Breadboard
digunakan untuk menghubungkan
komponen yang terpasang.
Dapat dilihat bahwa lubang yang
terhubung digambarkan dengan
garis.

12
01 - Kontrol Lampu LED

2 DAFTAR KOMPONEN

No Nama Item Qty


1 Arduino Uno 1
2 Breadboard 400 1
3 LED 3
4 Resistor 330 ohm 3
5 Jumper Male Male 4

3 Skematik

4 Source Code

1 void setup() {
2 pinMode(5, OUTPUT);
3 pinMode(6, OUTPUT);
4 pinMode(7, OUTPUT);
5 }
6

13
Starter Kit Arduino - Starlectric

7 void loop() {
8 digitalWrite(5, HIGH);
9 delay(200);
10 digitalWrite(6, HIGH);
11 delay(200);
12 digitalWrite(7, HIGH);
13 delay(200);
14 digitalWrite(5, LOW);
15 delay(200);
16 digitalWrite(6, LOW);
17 delay(200);
18 digitalWrite(7, LOW);
19 delay(200);
20 }

Hasil dari program ini adalah 3 buah LED akan menyala bergiliran
dengan delay 200 miliseconds. Kemudian juga secara bergiliran
LED akan mati dari urutan pertama dengan delay sebesar 200
miliseconds.

• pinMode
Menentukan pin sebagai INPUT / OUTPUT

• digitalWrite(pin, logic)
Menentukan logic pin menjadi HIGH / LOW.
HIGH = 5V, LOW = 0V / Ground.

• delay(x)
Tunda selama durasi x (satuan miliseconds)

14
02 - Membaca Input Switch

02 - Membaca Input Switch

1 INTRO
Pada project 01, kita membuat program Arduino yang
menghasilkan output digital berupa HIGH dan LOW. Project ini
akan membahas cara membaca input digital dari switch.

Switch yang akan kita gunakan adalah push on di mana switch


ini menghubungkan ketika ditekan saja, begitu pula sebaliknya
jika dilepas koneksi akan terputus. Memanfaatkan fungsi
digitalRead dari Arduino, kita dapat mengetahui status switch.

2 DAFTAR KOMPONEN

No Nama Item Qty


1 Arduino Uno 1
2 Breadboard 400 1
3 LED 1
4 Tactile Switch 1
5 Resistor 10K ohm 1
6 Resistor 330 ohm 1
7 Jumper Male Male 5

15
Starter Kit Arduino - Starlectric

3 Skematik

4 Source Code
1 int pinLed = 7;
2 int pinSwitch = 3;
3 int val = 0;
4
5 void setup() {
6 pinMode(pinLed, OUTPUT);
7 pinMode(pinSwitch, INPUT);
8 }
9
10 void loop(){
11 val = digitalRead(pinSwitch);
12 if (val == HIGH) {
13 digitalWrite(pinLed, LOW);
14 } else {
15 digitalWrite(pinLed, HIGH);
16 }
17 }

16
02 - Membaca Input Switch

LED yang terpasang pada pin 7 akan menyala diberi tegangan


Ground (LOW) ketika tombol ditekan. Begitu pula sebaliknya
ketika tombol di lepas, maka LED akan diberi tegangan 5V (HIGH).

• digitalRead(pin)
Membaca status dari pin, jika pin diberi 5V, maka hasil
pembacaan menjadi HIGH, begitu pula jika pin diberi 0V maka
hasil menjadi LOW.

• if(condition) {
// statements
}
Melakukan pengecekan pada condition, jika TRUE / HIGH,
maka statements akan dieksekusi.

17
Starter Kit Arduino - Starlectric

03 - Display Teks dengan LCD I2C

1 INTRO

Pada project ini kita akan membahas bagaimana menghubungkan


LCD (Liquid Crystal Display) dengan Arduino dan menampilkan
tulisan. LCD Karakter 16x2 ini sangat populer digunakan karena
praktis untuk menampilkan informasi mengenai sensor dan
status dari project Arduino.

Project ini akan membahas cara mengakses LCD dengan modul


I2C. Kelebihan modul I2C adalah memperingkas koneksi antara
Arduino dan LCD sehingga membutuhkan hanya 4 pin kabel saja.

Untuk memudahkan penggunaan, kita gunakan Library LCD I2C.

2 DAFTAR KOMPONEN

No Nama Item Qty


1 Arduino Uno 1
2 LCD with I2C Module 1
3 Jumper Male Female 4

18
03 - Display Teks dengan LCD I2C

3 Skematik

4 Source Code

1 #include <Wire.h>
2 #include <LiquidCrystal_I2C.h>
3
4 LiquidCrystal_I2C lcd(0x27, 16, 2);
5
6 void setup() {
7 lcd.begin();
8 lcd.backlight();
9 lcd.print("Hello, world!");
10 lcd.setCursor(0,1);
11 lcd.print("STARLECTRIC");
12 }
13
14 void loop() {
15
16 }

19
Starter Kit Arduino - Starlectric

Setelah program di jalankan, LCD akan menampilkan tulisan


“Hello World” pada baris pertama. Dan tulisan “Starlectric” pada
baris kedua.

Note : Gunakan LiquidCyrstal_I2C lcd(0x3F, 16, 2)


pada baris 4 jika alamat I2C 0x27 tidak dapat berfungsi.

• lcd.begin();
Lakukan fungsi ini untuk inisialisasi LCD.

• lcd.print(text);
Fungsi untuk menampilkan text.

• lcd.setCursor(x,y);
Fungsi untuk memindahkan kursor ke baris x, kolom y.

20
04 - Termometer Dengan DHT11

04 - Termometer dengan DHT11

1 INTRO
DHT11 adalah sensor yang dapat mengukur nilai suhu dan
kelembapan udara di sekitar. DHT11 mampu mengukur suhu
dengan rentang suhu antara 0 hingga +50 derajat Celsius dengan
akurasi + 2 derajat Celsius. Sedangkan rentang kelembapan yang
dapat diukur adalah 20 hingga 80% dengan akurasi 5%.

Project ini akan melakukan pembacaan nilai suhu dan kelembapan


dari sensor DHT11 dan menampilkan hasil pembacaan pada LCD
16x2.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 LCD with I2C Module 1
3 DHT11 Sensor 1
4 Jumper Male Female 7
5 Jumper Male Male 2

21
Starter Kit Arduino - Starlectric

3 Skematik

4 Source Code
1 #include <Wire.h>
2 #include <LiquidCrystal_I2C.h>
3 #include <dht.h>
4
5 LiquidCrystal_I2C lcd(0x27, 16, 2);
6 dht DHT;
7
8 void setup(){
9 lcd.begin();
10 lcd.backlight();
11 delay(1000);
12 }
13
14 void loop(){
15 DHT.read11(7);
16 lcd.clear();

22
04 - Termometer Dengan DHT11

17 lcd.print("Temp : ");
18 lcd.print(DHT.temperature);
19 lcd.print(" C");
20 lcd.setCursor(0,1);
21 lcd.print("Humid : ");
22 lcd.print(DHT.humidity);
23 lcd.print(" %");
24
25 delay(5000);
26 }

Dengan menggabungkan dengan project LCD sebelumnya, kita


dapat menampilkan hasil pembacaan sensor DHT11 langsung
pada LCD.

Delay sebesar 5000 miliseconds (5 detik) berfungsi untuk


memberi waktu kepada sensor untuk mengukur suhu sebelum
Arduino meminta nilai hasil pengukuran selanjutnya.

• DHT.read11(pin)
Fungsi untuk melakukan pembacaan data dari sensor
DHT11 yang dihubungkan pada pin 7 di Arduino.

• DHT.temperature
Fungsi untuk mengambil nilai temperature yang sudah
diukur.

• DHT.humidity
Fungsi untuk mengambil nilai kelembapan yang sudah
diukur.

23
Starter Kit Arduino - Starlectric

05 - Penggaris Digital dengan Ultrasonik

1 INTRO
Sensor jarak dengan ultrasonik
yang digunakan adalah HC-SR04.
Prinsip kerja dasar sensor ini adalah
memancarkan gelombang ultrasonik
yang kemudian menyentuh objek di
depan dan dipantulkan kembali.
Gelombang pantulan ditangkap oleh
receiver. Dengan menghitung jarak antara waktu pancar dan
terima menghasilkan jarak objek dengan sensor.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 LCD with I2C Module 1
3 Sensor Ultrasonik HC-SR04 1
4 Jumper Male Male 8

24
05 - Penggaris Digital Dengan Ultrasonik

3 Skematik

4 Source Code
1 #include <HCSR04.h>
2 #include <Wire.h>
3 #include <LiquidCrystal_I2C.h>
4
5 LiquidCrystal_I2C lcd(0x27, 16, 2);
6 HCSR04 hc(5,6); // (5-pin Trig , 6-pin
Echo)
7
8 void setup()
9 {
10 lcd.begin();
11 lcd.backlight();
12 lcd.print(“Jarak Objek : “);
13 }
14

25
Starter Kit Arduino - Starlectric

15 void loop(){
16 lcd.setCursor(0,1);
17 lcd.print(hc.dist());
18 lcd.print(" cm ");
19 delay(300);
20 }

Kita memanfaatkan library baru yaitu library “HCSR04.h”.


Inisialisasi awal sensor dilakukan di bvaris 6, di mana pin 5
terhubung ke pin Trig, begitu pula pin 6 terhubung ke pin Echo
di sensor. Pin tersebut dapat diubah menyesuaikan pemasangan
pada Arduino.

• HCSR04 hc(Trig, Echo);


Inisialisasi sensor dengan posisi pin Trig dan pin Echo.

• hc.dist();
Fungsi ini untuk mendapatkan hasil pengukuran jarak.
Jarak yang dihasilkan dalam satuan cm.

26
06 - Alarm Anti Maling

06 - Alarm Anti Maling

1 INTRO
Project ini kita akan memanfaatkan sensor gerakan atau biasa
disebut PIR Motion Sensor yang dapat mendeteksi gerakan di
depan sensor dengan sudut pandang hingga 110° dan jarak
deteksi hingga 10 meter. Sensor dapat diatur sensitifitas dan
durasi trigger menyesuaikan dengan kebutuhan dengan memutar
potentiometer di modul.

Dengan membaca output digital dari sensor, kita dapat


mengetahui adanya gerakan manusia dan membunyikan buzzer
ketika terdapat gerakan.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 Sensor Gerakan PIR 1
3 Buzzer Active Mini 1
4 Jumper Male Female 3
5 Jumper Male Male 2

27
Starter Kit Arduino - Starlectric

3 Skematik

4 Source Code
1 int pir = 3;
2 int buzzer = 7;
3 int deteksi = 0;
4
5 void setup() {
6 pinMode(pir, INPUT);
7 pinMode(buzzer,OUTPUT);
8 }
9
10 void loop() {
11 deteksi = digitalRead(pir);
12
13 if(deteksi == HIGH) {
14 alarmAktif();
15 }
16 }
17

28
06 - Alarm Anti Maling

18 void alarmAktif() {
19 for(int i=0; i<10; i++) {
20 digitalWrite(buzzer, HIGH);
21 delay(100);
22 digitalWrite(buzzer, LOW);
23 delay(100);
24 }
25 }

Dari coding di atas, PIR akan menghasilkan output digital berupa


HIGH atau LOW ketika mendeteksi gerakan. Output tersebut
dibaca dengan fungsi digitalRead(pin), kemudian dicek
apakah output PIR adalah HIGH. Jika HIGH, maka terdapat
gerakan, maka lakukan fungsi alarmAktif().

Pada fungsi tersebut kita lakukan pengulangan dengan metode


for loop. Di mana mengaktifkan buzzer selama 100ms dan
mematikan buzzer selama 100ms diulang sebanyak 10 kali.

• digitalRead(pin);
Membaca status digital pada pin yang dipilih.

• for(awal; kondisi; penambahan);


Metode looping dengan nilai awal dan kondisi yang
digunakan untuk akhir pengulangan. Pengulangan akan terjadi
selama kondisi belum tercapai. Penambahan dilakukan setiap
terjadi loop.

29
Starter Kit Arduino - Starlectric

07 - Lampu Teras Otomatis

1 INTRO
Kita akan menggunakan sensor LDR (Light Dependent Resistor)
pada project ini. LDR adalah resistor variabel yang nilai tahanannya
berubah mengikuti intensitas cahaya. Dengan memanfaatkan
sifat LDR tersebut, kita dapat mendeteksi pagi atau malam
maupun cerah atau mendung.
Arduino membaca nilai tahanan dengan menggunakan ADC
(Analog to Digital Converter) yaitu mengkonversi tegangan analog
menjadi nilai digital yang dapat dibaca Arduino.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 LDR (Light Dependent Resistor) 1
3 Resistor 120 kOhm 1
4 Resistor 330 ohm 1
5 LED 1
6 Jumper Male Male 4

30
07 - Lampu Teras Otomatis

3 Skematik

4 Source Code
1 int ldr = A0;
2 int led = 7;
3 int intensitas = 0;
4
5 void setup() {
6 pinMode(led, OUTPUT);
7 Serial.begin(9600);
8 }
9
10 void loop() {
11 intensitas = analogRead(ldr);
12 Serial.println(intensitas);
13
14 if(intensitas < 700) {
15 digitalWrite(led, HIGH);
16 }

31
Starter Kit Arduino - Starlectric

17 else {
18 digitalWrite(led, LOW);
19 }
20 }

ADC pada Arduino menghasilkan nilai antara 0 - 1023. Karena


cahaya berbeda-beda di setiap tempat, maka standar terang dan
gelap akan berbeda juga. Oleh karena itu kita akan membaca
intensitas cahaya yang terbaca LDR dengan Serial Monitor. Upload
coding ke Arduino dan buka Serial Monitor. Buka dan tutup LDR
dengan tangan untuk melihat nilai ketika terang dan gelap.

Pada contoh serial monitor di atas, ketika cahaya terang LDR


menghasilkan nilai ~900, sedangkan ketika gelap nilainya ~600.
Dengan hasil tersebut, kita dapat mengubah batas antara terang
dan gelap, pada contoh project ini kita melakukan pengecekan
jika intensitas dibawah 700, maka bisa dikatakan cahaya sedang
gelap dan perintah Arduino untuk menyalakan LED.

• analogRead(pin);
Membaca tegangan sinyal analog pada pin. Hasil
pengukuran dalam kisaran 0 - 1023 (0 - 5V)

• Serial.println(data);
Mengirim data melalui komunikasi serial. Dapat dilihat
melalui Serial Monitor dalam Arduino IDE.

32
08 - Lampu Tidur Pelangi

08 - Lampu Tidur Pelangi

1 INTRO
Untuk menghasilkan warna LED
yang bervariasi, kita gunakan
LED RGB (Red Green Blue).
Dengan mengkombinasikan
ketiga warna tersebut, kita
bisa mendapatkan banyak warna. Arduino dapat mengontrol
LED tersebut dengan PWM (Pulse Width Modulation). Sehingga
perubahan warna setiap LED dapat dikontrol dengan mudah.
LED RGB yang akan digunakan pada project ini adalah Common
Cathode, dimana kaki paling panjang adalah kaki Common dan
terhubung ke Ground.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 LED RGB 1
3 Resistor 330 ohm 3
4 Jumper Male Male 4

33
Starter Kit Arduino - Starlectric

3 Skematik

4 Source Code
1 int red_RGB = 9;
2 int green_RGB = 11;
3 int blue_RGB = 10;
4
5 void setup() {
6 pinMode(red_RGB, OUTPUT);
7 pinMode(green_RGB, OUTPUT);
8 pinMode(blue_RGB, OUTPUT);
9 }
10
11 void loop() {
12 RGB_color(255, 0, 0); //Red
13 delay(1000);
14 RGB_color(0, 255, 0); //Green
15 delay(1000);
16 RGB_color(0, 0, 255); //Blue
17 delay(1000);

34
08 - Lampu Tidur Pelangi

18 RGB_color(255, 255, 125); //Raspberry


19 delay(1000);
20 RGB_color(0, 255, 255); //Cyan
21 delay(1000);
22 RGB_color(255, 0, 255); //Magenta
23 delay(1000);
24 RGB_color(255, 255, 0); //Yellow
25 delay(1000);
26 RGB_color(255, 255, 255); //White
27 delay(1000);
28 }
29
30 void RGB_color(int nRed, int nGreen, int
nBlue)
31 {
32 analogWrite(red_RGB, nRed);
33 analogWrite(green_RGB, nGreen);
34 analogWrite(blue_RGB, nBlue);
35 }
Dapat dilihat pada fungsi RGB_color terdapat fungsi
analogWrite(pin, nilai) yang berguna untuk menghasilkan
sinyal PWM pada pin tersebut.
Dengan mengatur nilai yang diberikan pada pin LED RGB dapat
menghasilkan kombinasi warna yang berbeda-beda.
• analogWrite(pin, nilai);
Output sinyal PWM pada pin dengan nilai range antara
0-255.

• // comment
Disebut sebagai comment. Tulisan setelah tanda // tidak
akan dieksekusi oleh Arduino. Biasa digunakan untuk menulis
catatan atau penjelasan.

35
Starter Kit Arduino - Starlectric

09 - Detektor Objek dengan Infrared

1 INTRO
Kita akan menggunakan modul
Obstacle Sensor yang berfungsi
mendeteksi objek atau halangan
di depan sensor.
Dengan menggunakan sinar
Infrared dan Photodiode, objek
yang memantulkan sinar akan terdeteksi. Aplikasi sensor ini
sangat luas seperti menghitung jumlah orang lewat, sensor parkir
mobil dan lain-lain.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 Sensor Halangan / Obstacle 1
3 Buzzer Active Mini 1
4 Jumper Male Female 3
5 Jumper Male Male 2

36
09 - Detektor Objek dengan Infrared

3 Skematik

4 Source Code
1 int sensor = 5;
2 int buzzer = 7;
3 int detektor = 0;
4
5 void setup() {
6 pinMode(sensor, INPUT);
7 pinMode(buzzer, OUTPUT);
8 }
9
10 void loop() {
11 detektor = digitalRead(sensor);
12
13 if(detektor == HIGH) {
14 digitalWrite(buzzer, HIGH);
15 delay(200);
16 }

37
Starter Kit Arduino - Starlectric

17 else {
18 digitalWrite(buzzer, LOW);
19 }
20 }

Sensor halangan menghasilkan sinyal digital, sehingga dapat


dibaca menggunakan fungsi digitalRead().

Sensitifitas sensor dapat diatur dengan cara memutar trimpot


pada modul sensor. Jarak maksimal yang dapat dideteksi adalah
6 cm.

38
10 - Mengontrol Motor Servo

10 - Mengontrol Motor Servo

1 INTRO
Motor Servo adalah jenis motor dengan karakteristik dapat
dikontrol dengan lebih presisi dibanding motor DC biasa. Di dalam
motor servo terdapat rangkaian gearbox yang memungkinkan
servo dikontrol dengan presisi dan dapat mempertahankan
posisi.
Servo sering kali digunakan untuk mengontrol posisi barang yang
membutuhkan ketepatan setiap dieksekusi, contohnya seperti
kemudi roda depan pada mobil Radio Control (RC).

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 Motor Servo SG90 1
3 Potentiometer 10K 1
4 Jumper Male Female 3
5 Jumper Male Male 3

39
Starter Kit Arduino - Starlectric

3 Skematik

4 Source Code
1 #include <Servo.h>
2
3 Servo motorServo;
4
5 int pinPotentiometer = A0;
6 int nilai;
7
8 void setup() {
9 motorServo.attach(9);
10 }
11
12 void loop() {
13 nilai = analogRead(pinPotentiometer);
14 nilai = map(nilai, 0, 1023, 0, 180);
15 motorServo.write(nilai);
16 delay(15);
17 }

40
10 - Mengontrol Motor Servo

Pada project ini kita mencoba mengontrol posisi motor servo


mengikuti posisi potentiometer. Dengan membaca nilai analog
potentiometer, kita dapat mengetahui posisi putarannya.
Menggunakan fungsi map(), kita dapat melakukan skala range
nilai awal menjadi range nilai yang kita inginkan.
Pada contoh ini, motor servo yang digunakan adalah SG90 yang
dapat berputar 180°.

• map(nilaiA, awalA, akhirA, awalB, akhirB)


Fungsi mapping yang menyesuaikan nilaiA yang berada
dalam range awalA dan akhirA menjadi dalam range awalB
dan akhirB.

• motorServo.write(nilai)
Menggerakan motor servo 180° ke posisi derajat sebesar
nilai.

41
Starter Kit Arduino - Starlectric

11 - Input Angka dengan Keypad

1 INTRO
Keypad digunakan untuk input angka. Keypad dapat dimanfaatkan
di banyak aplikasi seperti, input nomor antrian, input angka alarm
dan lain-lain. Keypad 4x4 memiliki 10 tombol angka, tombol #,
tombol * dan 4 tombol custom. Konektornya adalah 8 pin yang
terdiri dari 4 pin Kolom dan 4 pin Baris.

Cara kerja keypad adalah ketika salah satu tombol ditekan,


satu pin kolom dan pin baris akan terhubung. Dengan metode
scanning setiap kolom dan baris, Arduino dapat mengetahui
tombol mana yang ditekan.

2 Daftar Komponen

No Nama Item Qty


1 Arduino Uno 1
2 Keypad 4x4 1
3 Jumper Male Female 8

42
11 - Input Angka dengan Keypad

3 Skematik

4 Source Code

1 #include <Keypad.h>
2
3 const byte BARIS = 4; //4 baris
4 const byte KOLOM = 4; //4 kolom
5
6 //tentukan posisi tiap tombol
7 char poosisiTombol[BARIS][KOLOM] = {
8 {'1','2','3','A'},
9 {'4','5','6','B'},
10 {'7','8','9','C'},
11 {'*','0','#','D'}
12 };
13 byte pinBaris[BARIS] = {13, 12, 11, 10};
//koneksi pin baris Keypad
14 byte pinKolom[KOLOM] = {9, 8, 7, 6};
//koneksi pin kolom Keypad
15

43
Starter Kit Arduino - Starlectric

16 Keypad tombolKeypad = Keypad( makeKey-


map(poosisiTombol), pinBaris, pinKolom,
BARIS, KOLOM);
17
18 void setup(){
19 Serial.begin(9600);
20 }
21
22 void loop(){
23 char tombol = tombolKeypad.getKey();
24
25 if(tombol){
26 Serial.println(tombol);
27 }
28 }

Pada coding baris 3 dan 4 kita dapat menyesuaikan keypad yang


akan dipakai, pada contoh ini digunakan keypad 4 baris dan 4
kolom.

Pada baris 7 kita menentukan posisi tombol, kita menyesuaikan


dengan keypad yang ada dalam Starter Kit. Terdapat 4 buah
tombol A-D yang dapat digunakan untuk fungsi-fungsi khusus.

44
Starlectric

Masih banyak sensor dan komponen tambahan lain untuk project


Arduino yang dapat kalian coba seperti :
• Mengirim SMS dengan Arduino
• Koneksi dengan Smartphone via Bluetooth
• Membuat Remote Control
• Robot Line Follower
• Detektor Kebocoran Gas LPG
• Palang Pintu Otomatis
• Pemanggil Nomor Antrian
• Kontrol Lampu Otomatis
• Pengukur Kelembapan Tanah
• Detektor Curah Hujan
• Pengukur Detak Jantung

Klik untuk kunjungi Tokopedia Starlectric

Klik untuk kunjungi Bukalapak Starlectric

Klik untuk kunjungi Shopee Starlectric


45
Starter Kit Arduino - Starlectric

Follow kami di :

Klik untuk kunjungi Instagram Starlectric

Untuk informasi teknis dan penjualan, hubungi kami di :


phone : 0878-789-78-609

46
Starlectric

Nantikan seri lainnya di


Starlectric !

47

Anda mungkin juga menyukai