Anda di halaman 1dari 20

DAFTAR ISI

BAB 1 - PENGENALAN ROBOT ARDUINO BASIC ...........................................................2

BAB 2 – HELLO WORLD! ......................................................................................................4

BAB 3 – TONE MUSIC ............................................................................................................5

BAB 4 – DRIVER MOTOR ......................................................................................................6

BAB 5 – JALANKAN MOTOR ................................................................................................7

BAB 6 – FUNGSI DAN PARAMETER ...................................................................................9

BAB 7 – SISTEM GERAK ROBOT .......................................................................................11

BAB 8 – DRAWING ROBOT.................................................................................................12

BAB 9 – SENSOR ULTRASONIK.........................................................................................15

BAB 10 – OBSTACLE AVOIDANCE ROBOT ....................................................................16

BAB 11 – WALL FOLLOWER ROBOT................................................................................18

Ruang Robot-Arduino Robot Basic |1


BAB 1 - PENGENALAN ROBOT ARDUINO BASIC

A. Penjelasan
Robot arduino basic adalah robot yang dapat diprogram menggunakan komputer. Robot
arduino basic menggunakan arduino NANO sebagai otaknya. Untuk softwarenya kita
menggunakan aplikasi Mblock yang berbentuk bahasa pemrograman visual agar mudah
dipahami oleh orang yang baru belajar pemrograman robotik. Robot ini memiliki fungsi
yang luas sesuai dengan program yang kita masukkan.

B. Bagian-Bagian Robot

Hardware Robot

Ruang Robot-Arduino Robot Basic |2


Software Aplikasi Pemrograman Robot

Alur Upload Program Ke Robot

Ruang Robot-Arduino Robot Basic |3


BAB 2 – HELLO WORLD!

A. Penjelasan
Dalam dunia pemrograman terdapat istilah “Hello World!” yang merepresentasikan
perkenalan awal kita terhadap suatu bahasa pemrograman. Istilah ini biasanya digunakan
untuk suatu program sederhana yang kita gunakan saat pertama kali belajar
pemrograman. Pada bagian ini kita akan mencoba membuat program “Hello World!”
pada robot Arduino Basic. Pada pemrograman robot terdapat dua jenis eksekusi program
yang pertama yang dijalankan sekali dan yang kedua yang dijalankan secara terus
menerus.

No. Blok Program Penjelasan


1 Blok program ini akan dijalankan sekali oleh
robot biasanya digunakan untuk inisialisasi
awal seperti menyeting pin atau deklarasi
variabel.

2 Blok program ini akan dijalankan secara


terus menerus oleh robot. Kita memasukkan
semua logika robot disini (didalam blok
forever). Tujuan dari program dijalankan
secara terus menerus adalah agar robot dapat
terus meng-update baik pembacaan sensor
maupun pergerakannya.

B. Percobaan
Program yang kita buat akan menggunakan komponen buzzer (pin D13) sebagai
outputnya. Secara sederhana program yang kita buat akan menyalakan (HIGH) dan
mematikan (LOW) buzzer secara terus menerus dengan jeda. Buat blok program seperti
gambar berikut.

Tantangan:

Ubah nilai dari blok dan jelaskan apa yang terjadi!

Ruang Robot-Arduino Robot Basic |4


BAB 3 – TONE MUSIC

A. Penjelasan
Secara sederhana buzzer hanya bisa menyala atau mati saja akan tetapi di arduino
terdapat fungsi yaitu tone() yang berfungsi untuk memberikan output frekuensi pada
buzzer sehingga bisa menghasilkan irama sesuai not lagu.

Berikut penjelasannya.
1. C/D/E/F/G/A/B pada dropdown menu note merepresentasikan nama not yaitu
Do/Re/Mi/Fa/So/La/Si. Angka dibelakangnya melambangkan pitch atau tinggi
nadanya, C4 standar C, and C5 oktaf tinggi and C3 oktaf rendah.
2. Dropdown menu dengan nilai Half, Full, Double dst. menandakan panjang nadanya.

Alfabet Solmisasi Notasi Angka


C Do 1
D Re 2
E Mi 3
F Fa 4
G So 5
A La 6
B Si 7

B. Percobaan
Buat program seperti berikut

Tantangan:
1. Buat program lagu ini
CCGGAAG-FFEEDDC-GGFFEED-GGFFEED-CCGGAAG-FFEEDDC

Ruang Robot-Arduino Robot Basic |5


BAB 4 – DRIVER MOTOR

A. Penjelasan
Motor pada robot arduino basic difungsikan sebagai penggerak robot. Terdapat dua motor
pada robot arduino basic dan keduanya dikontrol oleh driver motor L293.

Gambar Pinout L293

Pada robot arduino basic konfigurasi pin driver motor dan arduino ditunjukkan pada tabel
dibawah.

Tabel konfigurasi pin driver Motor ke Arduino


Motor Kiri Motor Kanan
ENABLE1 - D3 ENABLE2 - D5
INPUT1 - D4 INPUT3 - D7
INPUT2 - D2 INPUT4 - D8

Berikut merupakan tabel kebenaran dari driver motor L293. Untuk mengatur kecepatan
pin Enable bisa diganti dengan nilai angka analog.

Tabel kebenaran L293


No ENABLE INPUT1 INPUT2 Arah Putaran
1 HIGH / ANGKA LOW HIGH KIRI
2 HIGH / ANGKA HIGH LOW KANAN
3 HIGH / ANGKA LOW LOW STOP
4 HIGH / ANGKA HIGH HIGH STOP
5 LOW / NOL FREE FREE STOP

Ruang Robot-Arduino Robot Basic |6


BAB 5 – JALANKAN MOTOR

A. Penjelasan
Sesuai dengan konfigurasi pin dan tabel kebenaran driver motor L293 pada bab
sebelumnya kita akan mencoba memprogram jalannya motor pada robot.

B. Percobaan
Buat program seperti berikut upload ke robot, jalankan dan tuliskan hasilnya.
Motor Kiri

No. Pin Blok Program Hasil


1 D3 – 255
D4 – LOW
D2 – HIGH

2 D3 – 255
D4 – HIGH
D2 – LOW

3 D3 – 255
D4 – LOW
D2 – LOW

4 D3 – 255
D4 – HIGH
D2 – HIGH

5 D3 – 0
D4 – FREE
D2 – FREE

Ruang Robot-Arduino Robot Basic |7


Motor Kanan

No. Pin Blok Program Hasil


1 D5 – 255
D7 – LOW
D8 – HIGH

2 D5 – 255
D7 – HIGH
D8 – LOW

3 D5 – 255
D7 – LOW
D8 – LOW

4 D5 – 255
D7 – HIGH
D8 – HIGH

5 D5 – 0
D7 – FREE
D8 – FREE

Ruang Robot-Arduino Robot Basic |8


BAB 6 – FUNGSI DAN PARAMETER

A. Penjelasan
Beberapa blok program dapat dijadikan satu untuk menjadi fungsi tertentu agar
memudahkan jika kita membutuhkan lagi. Pada mBlock untuk membuat fungsi kita dapat
memilih “Make a Block” pada menu “Data&Blocks”.

Setelah itu kita tinggal memberi nama fungsinya dan bisa juga kita menambahkan
parameter pada menu “Options”. Parameter adalah suatu nilai yang bisa kita ubah saat
pemanggilan fungsi jenisnya ada berupa angka, huruf atau boolean.

Berikut contoh blok-blok program yang dijadikan fungsi dan terdapat parameter serta
cara pemanggilan fungsi dalam program.

Ruang Robot-Arduino Robot Basic |9


B. Percobaan
Buat 4 (empat) fungsi untuk menjalankan motor.
1. Fungsi motor kanan maju dengan parameter kecepatan
2. Fungsi motor kanan mundur dengan parameter kecepatan
3. Fungsi motor kiri maju dengan parameter kecepatan
4. Fungsi motor kiri mundur dengan parameter kecepatan

Fungsi stop tidak kita buat karena dengan mengisi nilai parameter kecepatan 0 (nol)
maka motor akan berhenti.

Berikut contoh implementasi keempat fungsi tersebut.

Catatan: Simpan program implementasi fungsi dan parameter motor ini karena akan
banyak kita gunakan untuk program-program selanjutnya.

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 10
BAB 7 – SISTEM GERAK ROBOT

A. Penjelasan
Robot arduino basic menggunakan desain robot dengan sistem gerak differential drive,
yaitu robot yang menggunakan dua buah motor dan roda sebagai penggeraknya. Berikut
kombinasi pergerakannya.

Gambar Sistem Gerak Robot Differential Drive

B. Percobaan
Buat program untuk menjalankan robot sesuai dengan sistem gerak differential drive.
Gunakan fungsi motor yang kita buat pada bab sebelumnya. Tuliskan hasil pergerakannya
No. Motor Blok Program Hasil

1 Kiri : Maju(255)
Kanan : Maju(255)

2 Kiri : Mundur(255)
Kanan : Mundur(255)

3 Kiri : Maju(255)
Kanan : Maju(100)

4 Kiri : Maju(100)
Kanan : Maju(255)

5 Kiri : Maju(255)
Kanan : Mundur(255)

6 Kiri : Mundur(255)
Kanan : Maju(255)

7 Kiri : Free(0)
Kanan : Free(0)

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 11
BAB 8 – DRAWING ROBOT

A. Penjelasan
Sekarang kalian sudah mampu membuat robot berjalan sesuai dengan program yang
kalian masukkan baik jalan maju, mundur, atau belok. Pada bab ini kita akan membuat
robot kita melakukan tugas-tugas khusus, yaitu kita akan membuat robot menggambar
pola di lantai sesuai yang kita inginkan. Modifikasi robot kalian dengan menambahkan
spidol seperti gambar berikut.

Gambar Drawing Robot

Pergerakan robot yang sesuai dengan pola kita sebut dengan motion. Motion adalah
gabungan dari beberapa pergerakan robot dan delay / wait (tunggu). Contoh maju 1 detik,
stop 1 detik, belok kanan 1 detik, maju 1 detik dst.

B. Percobaan
Buat program seperti berikut. Ada beberapa nilai wait yang perlu diubah agar pergerakan
robot sesuai dengan pola yang diinginkan.
No. Pola Blok Program

1 Garis Lurus

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 12
No. Pola Blok Program

2 Huruf L

3 Lingkaran

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 13
No. Pola Blok Program

4 Angka 8

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 14
BAB 9 – SENSOR ULTRASONIK

A. Penjelasan
Sensor ultrasonik merupakan sensor yang mampu mendeteksi dan menghitung jarak
objek di depannya. Cara kerja sensor ini adalah dengan cara memancarkan gelombang
ultrasonik dari transmitter apabila ada objek di depannya gelombang ultrasonik akan
terpantul dan diterima oleh receiver. Jarak dapat dihitung dari lamanya gelombang
ultrasonik terpancar sampai diterima kembali pantulannya.

Gambar Cara Kerja Sensor Ultrasonik

Pada program sensor ultrasonik dikontrol oleh dua pin yang berfungsi sebagai trigger (pin
D12) dan echo(pin D11).

Sensor ultrasonik bertindak sebagai input robot, oleh sebab itu kita perlu membuat satu
blok program kondisi untuk memprosesnya. Selain itu blok program harus dimasukkan
dalam blok forever atau dimasukkan blok perulangan agar perubahan kondisi pembacaan
sensor terus di-update.

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 15
BAB 10 – OBSTACLE AVOIDANCE ROBOT

A. Penjelasan
Dengan memanfaatkan sensor ultrasonik pada robot kita dapat membuat object detection
robot (robot pendeteksi objek). Setelah objek dapat dideteksi robot dapat melakukan
pergerakan sesuai yang kita inginkan.

B. Percobaan
Pada bab ini kita akan mencoba 2 (tiga) jenis algoritma robot yang bisa dilakukan robot
apabila mendeteksi objek.

1. Stop in Front Object


Robot akan berjalan maju dengan kecepatan tertentu, apabila sensor ultrasonik
mendeteksi objek di depannya maka secara otomatis robot akan berhenti. Berikut diagram
alur logika dan blok programnya.

Alur Logika Blok Program

Start

Maju

Tidak

Objek < 10cm?

Ya

Stop

End

2. Obstacle Avoidance Robot


Obstacle avoidance robot (robot penghindar halangan) merupakan robot otomatis yang
mampu menghindar apabila terdapat objek/halangan yang dideteksi oleh sensor
ultrasonik. Logikanya adalah apabila tidak mendeteksi halangan robot akan berjalan
maju, apabila sensor ultrasonik dari robot mendeteksi halangan pada jarak tertentu robot
akan berbelok menghindar. Berikut alur logika dan blok programnya.

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 16
Alur Logika Blok Program

Start

Objek < 10cm?

Ya Tidak

Belok Kanan Maju

Pada program diatas robot hanya akan berbelok ke kanan apabila mendeteksi halangan.
Terdapat satu cara agar robot tidak hanya belok kanan, yaitu dengan cara menambahkan
kondisi dan pembangkit angka random (acak). Sehingga nanti robot apabila mendeteksi
objek terkadang belok kanan atau terkadang juga belok kiri.

Berikut alur logika dan blok program robot setelah diberi pembangkit nilai acak dan
kondisi untuk belok.

Alur Logika Blok Program

Start

Objek < 10cm?


Tidak

Ya Maju

Random =0?
Tidak

Ya Belok Kiri

Belok Kanan

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 17
BAB 11 – WALL FOLLOWER ROBOT

A. Penjelasan
Selain sebagai robot penghindar halangan, dengan memanfaatkan sensor ultrasonik pada
robot kita dapat membuat wall follower robot (robot pengikut dinding). Agar robot dapat
mengikuti dinding sensor ultrasonik perlu dipindah posisinya disamping agak menyerong
seperti gambar berikut.

Gambar Drawing Robot

Posisi sensor ultrasonik seperti gambar berikut memungkinkan robot dapat mendeteksi
dinding di samping maupun di depannya.

B. Percobaan
Pada bab ini kita akan mencoba algoritma robot pengikut dinding (wall follower). Disini
kita membutuhkan tiga kondisi yaitu.
1. Kondisi robot pada jarak dekat – robot belok menjauh tembok
2. Kondisi robot pada jarak jauh – robot akan belok mendekat tembok
3. Kondisi robot pada antara jauh dan dekat – robot akan berjalan maju

Apabila sensor ditempatkan di kiri robot, secara sederhana logika program dapat
dituliskan sebagai berikut.

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 18
Pada kondisi ketiga yaitu kondisi nilai antara kita membutuhkan dua kondisi dalam satu
if maka kita perlu menggunakan blok and.

Berikut blok program lengkap dari wall follower robot.

R u a n g R o b o t - A r d u i n o R o b o t B a s i c | 19

Anda mungkin juga menyukai