Modul Pembelajaran Arduino untuk Robotik
Modul Pembelajaran Arduino untuk Robotik
Pembuatan Robot
Abstract : Modul ini dibuat sebagai bahan ajar siswa dalam Implementasi
Profil Pelajar Pancasila melalui kegiatan Ekstrakurikuler Robotik dan Smart
Farmer di SMAS Santo Tarcisius Dumai
UNIVERSITAS DUMAI
Arie Linarta, [Link], M. Kom
PENGENALAN MICROCONTROLLER ARDUINO
1
papan mampu menjaga koneksi Anda dengan komponen elektronika secara fisik memegang bagian
atau kabel tempat Anda meletakkannya dan menghubungkannya secara elektrik di dalam papan.
Kemudahan penggunaan dan kecepatan sangat bagus untuk pembelajaran dan pembuatan
prototipe dari sirkuit sederhana. Sirkuit yang lebih kompleks dan sirkuit frekuensi tinggi kurang cocok
untuk menggunakan papan breadboard ini. Sirkuit pada breadboard juga tidak ideal untuk
penggunaan jangka panjang jika dibandingkan dengan sirkuit yang dibangun di atas PCB (papan
sirkuit tercetak.
Setiap project yang akan kita bangun, sebaiknya di rangkai menggunakan breadboard untuk
memudahkan kita melakukan analisis dan mendesain sirkuit secara cepat. Namun jika sirkuit sudah
melalui tahap uji coba dan memperoleh hasil sesuai dengan yang diinginkan, sebaiknya rangkaian
sirkuit dibuat menggunakan papan PCB agar rangkaian lebih solid dan efisien.
Yang perlu diperhatikan saat merancang sirkuit ini adalah jalur atau sistem pengkabelan,
intinya jangan sampai terjadi konsleting atau terjadinya hubungan arus pendek. Untuk itu sebelum
melakukan rangkaian komponen sebaiknya kita mengenal karakteristik dari komponen yang kita
gunakan seperti mengenal kutub positif dan negatif serta berapa arus maksimal yang mampu
diterima oleh komponen tersebut. Komponen elektronika yang digunakan dapat disusun pada Circuit
Area seperti contoh pada gambar 2 diatas.
2
PENDAHULUAN
A. Latar Belakang
Sebagai upaya dalam mensukseskan visi program Pendidikan yang telah di gaungkan oleh
pemerintah melalui program sekolah penggerak yang digagas oleh kementerian Pendidikan, maka
sudah sepantasnya sekolah-sekolah yang khususnya terpilih menjadi sekolah penggerak memiliki
program Pendidikan berbasis project bagi siswa-siswi di sekolah tersebut. salah satu karakteristik
Kurikulum merdeka adalah menerapkan pembelajaran berbasis proyek (project based learning)
untuk mendukung pengembangan karakter sesuai dengan Profil Pelajar Pancasila. Dalam
implementasi Kurikulum merdeka, sekolah diberikan keleluasaan dan kemerdekaan untuk
memberikan proyek-proyek pembelajaran yang relevan dan dekat dengan lingkungan sekolah.
Dengan keleluasaan dan kemerdekaan untuk memberikan proyek-proyek pembelajaran
maka sekolah dituntut untuk mampu membaca peluang dan tantangan yang akan dihapadi oleh
peserta didik mereka dalam era revolusi industry 4.0 menuju era revolusi industri 5.0. Modul diklat
ini merupakan substansi materi pelatihan yang dikemas dalam suatu unit program pembelajaran
berbasis project yang terencana guna membantu pencapaian kurikulum merdeka dengan
mengimplementasikan pembelajaran berbasis proyek untuk memberikan pengalaman dan
kompetensi pemrograman khusunya pada bidang physical programming.
B. Tujuan Pembelajaran.
Modul ini bertujuan untuk memfasilitasi peserta didik dengan sikap, keterampilan dan
pengetahuan yang dipersyaratkan pada kegiatan pembelajaran physical programming. Sikap,
pengetahuan dan keterampilan tersebut merupakan kompetensi-kompetensi profesional yang
mengacu pada Kerangka Kualifikasi Nasional Indonesia. Sehingga setelah mengikuti pembelajaran
ini peserta diharapkan mampu menyelesaikan suatu project dan menghasilkan suatu produk nyata
yang berhubungan dengan teknologi robotik dan sistem cerdas.
C. Materi Pembelajaran
Pada kegiatan ini kami memfasilitasi peserta didik untuk memilih dua bidang peminatan
dalam kegiatan pembelajaran pemograman Physical, yakni Rancang bangun robot line follower
dan Sistem Smart Farmer. Adapun materi pembelajaran dapat dilihat pada tabel dibawah ini :
Minggu Alokasi
Rancang Bangun ROBOT LINE FOLLOWER Rancang Bangun Sisterm SMART FARMER
ke Waktu
Pengenalan Microcontroller Pengenalan Microcontroller
Instalasi IDE Software Instalasi IDE Software
Basic IO (Input dan Output) Basic IO (Input dan Output)
1 Pengenalan Komponen LED Pengenalan Komponen LED 2 Jp
Memprogram Singgle LED Memprogram Singgle LED
Memporgram Triple LED Memporgram Triple LED
Mempogram Traffict Light Mempogram Traffict Light
Pengenalan Sensor ultrasonic Pengenalan Sensor ultrasonic
Membaca jarak dengan Sensor Ultrasonic Membaca jarak dengan Sensor Ultrasonic
2 Merangkai Sistem IO sederhana dengan sensor Merangkai Sistem IO sederhana dengan 2 Jp
ultrasonic dan LED sensor ultrasonic dan LED
Memprogram Sensor Level ketinggian Air Memprogram Sensor Level ketinggian Air
3
Pengenalan Sensor IR (Infra Red) Pengenalan Sensor DHT11
Membaca input dari sensor IR melalui Serial Membaca input dari sensor DHT11 melalui
monitor Serial monitor
3 Merangkai Sistem IO sederhana dengan sensor Merangkai Sistem IO sederhana dengan
IR sensor DHT11
Memprogram sensor deteksi track dengan
indikator LED dan Serial Monitor.
Pengenalan Modul Motor Driver dan Motor DC Pengenalan Relay dan Buzzer
2 Jp
Memproram Motor DC (Maju atau Mundur) Memprogram Relay
Merangkai sistem IO sederhana menggunakan
Memprogram Buzzer
IR dan Motor DC
4 Merangkai sistem IO sederhana
Merangkai Sistem IO sederhana menggunakan
menggunakan Sensor DHT11, relay serta
Sensor Ultrasonic dan Motor DC
buzzer
Merangkai Sistem IO sederhana
menggunakan Sensor Ultrasonic, relay serta
buzzer
Mendampingi siswa untuk menyelesaikan
project yakni pembuatan robot line follower - Mendampingi siswa untuk
dengan kemampuan pemograman sebelumnya menyelesaikan project yakni pembuatan 2 JP
5 . perangkat SMART Sistem Hydroponik
Uji coba robot
D. Ruang Lingkup
Kegiatan pembelajaran ini hanya membahas pembelajaran pemograman physical tingkat
dasar dan membuat project Rancang bangun robot line follower dan Sistem Smart Farmer.
Adapun board microcontroller yang digunakan adalah board Arduino Uno.
4
c. sebelum melaksanakan praktikum, identifikasi (tentukan) peralatan dan bahan yang
diperlukan dengan cermat,
d. gunakan alat sesuai prosedur pemakaian yang benar,
e. untuk melakukan kegiatan praktikum yang belum jelas, harus meminta ijin guru atau
instruktur terlebih dahulu,
f. setelah selesai, simpan alat dan bahan ketempat yang telah ditentukan, jika belum
menguasai level materi yang diharapkan, ulangi lagi pada kegiatan belajar sebelumnya
atau bertanyalah kepada instruktur yang mengampu kegiatan pembelajaran yang
bersangkutan.
5
KEGIATAN PEMBELAJARAN 1
Menginstall IDE Arduino dan Menjalan Program Dasar menggunakan LED
A. Tujuan Pembelajaran
- Mengidentifikasi Digital dan analog PIN Arduino
- Instalasi Arduino IDE
- Mengupload program basic “Blink”
- Mengidentifikasi komponen elektronika (LED dan Resistor )
- Memasang rangkaian LED
- Memprogram Single, Double dan Triple LED.
B. Indikator Capaian Kompetensi
- Mampu mengidentifikasi Digital dan Analog PIN Arduino
- Mampu menginstal software IDE Arduino
- Mengupload program basic “Blink”
- Mampu mengidentifikasi LED
- Mampu memprogram nyala lampu LED baik single, double dan triple LED
C. Uraian Materi
1) Identifikasi Digtal/ Analog PIN dan Time pada Arduino
A. Digital I/O
Board Arduino mempunyai jumlah pin yang berlabel digital D0 – D13 sebanyak 14
dengan pengalamatnya 0 – 13. Namun apabila pin digital yang kita butuhkan masih kurang,
kita masih bisa menambahnya dengan menggunakan pin yang berlabel analog A0 – A5
difungsikan sebagai pin digital input/output dengan pengalamatnya 14 – 19. Ada saat
tertentu pin digital 0 dan 1 tidak bisa digunakan karena di pakai untuk komunikasi serial,
sehingga harus hati-hati dalam pengalokasian I/O.
6
✓ pinMode (pin,mode)
Biasa digunakan dalam void setup() untuk mengkonfigurasi pin apakah sebagai
INPUT atau OUTPUT. Arduino digital pins secara default di konfigurasi sebagai input
sehingga untuk merubahnya harus menggunakan operator pinMode(pin, mode).
✓ digitalRead (pin)
Membaca nilai dari pin yang kita kehendaki dengan hasil HIGH atau LOW.
✓ digitalWrite (pin,value)
Digunakan untuk mengeset pin yang kita kehendaki dalam kondisi level tegangan
HIGH atau LOW (nyala atau mati). Arduino mempunyai Pin digital sebanyak 14 ( 0 –
13 ).
B. Analog I/O
Selain pin digital Arduino dilengkapi juga oleh pin analog yang berfungsi untuk
membaca input tegangan variabel antara 0 – 5 volt dengan resolusi ADC (Analog to Digital)
10-bit. Pada Arduino ada 6 pin yang berlabel analog input dengan pengalamatan A0 – A5.
Tidak seperti pin digital yang dapat di fungsikan selain sebagai digital input dapat juga
sebagai digital output, namun pada pin analog hanya dapat berfungsi sebagai analog input
saja, apabila kamu ingin membuat Arduino mengeluarkan output tegangan analog kamu
masih bisa melakukannya dengan menggunakan pin digital yang berlabel PWM
(3,5,6,9,10,11), sejatinya tegangan analog yang dikeluarkan Arduino adalah dengan
memanipulasi output digital secara pulsa.
✓ analogRead (pin)
Membaca nilai pin analog yang memiliki resolusi 10-bit. Fungsi ini hanya dapat
bekerja pada analog pin (0 – 5). Hasil dari pembacaan berupa nilai integer dengan
range 0 sampai 1023.
✓ analogWrite(Pin, value)
7
Mengirimkan nilai analog dengan metoda Pulse Width Modulation (PWM) ke pin
yang berlabel PWM (3,5,6,9,10,11). Nilai yang dapat digunakan adalah dari 0 –
255.
C. TIME
Dalam pemograman microcontroller variabel yang tidak kalah penting digunakan
adalah variabel waktu (time). Denga variabel time ini kita bisa mengatur waktu jalannya
sebuah perintah. Berikut jenis variabel waktu pada Arduino.
✓ delay(ms)
Menghentikan program untuk sesaat sesuai dengan yang di kehendaki, satuanya
dalam millisecond.
Contoh program menggunakan delay
✓ millis()
Mengembalikan nilai dalam millisecond dihitung sejak arduino board menyala. Dan
variabel nya harus bertype long integer.
Contoh program menggunakan millis
8
2) Instalasi Arduino IDE.
Arduino IDE adalah software yang digunakan untuk membuat sketch pemrogaman
atau dengan kata lain arduino IDE sebagai media untuk pemrogaman pada board yang
ingin diprogram. Arduino IDE ini berguna untuk mengedit, membuat, meng-upload ke board
yang ditentukan, dan meng-coding program tertentu. Arduino IDE dibuat dari bahasa
pemrogaman JAVA, yang dilengkapi dengan library C/C++(wiring), yang membuat operasi
input/output menjadi lebih mudah.
Pada BAB ini akan dijelaskan Cara Unduh/ Download Arduino IDE dan Install pada
Windows. Berikut adalah langkah-langkah Download Arduino IDE dan Install pada
Windows:
2.1. Download File Software Arduino IDE untuk Windows.
Silahkan download Software IDE Arduino di [Link]
Pilih versi windows yang anda gunakan, untuk windows 10 64 bit pilih menu paling
atas, dan jika menggunakan windows 7 piih link MSI Installer atau Zip File. kemudian
akan tampil pilihan Download. Silahkan klik Just Download atau Contribute dan
Download untuk donasi.
9
2.2. Persetujuan Instalasi Arduino IDE
Setelah selesai download silahkan buka dengan klik kiri dua kali atau klik kanan open
kemudian akan muncul License Agreement atau Persetujuan Instalasi, klik tombol I
Agree untuk memulai install software Arduino IDE.
10
2.5. Proses Extract
Pada tahapan ini kita hanya menunggu proses extract hingga selesai
2.6. Install USB Driver
Saat proses instalasi sedang berlangsung akan muncul pilihan untuk install driver, pilih
tombol instal, proses ini untuk mengenali dan melakukan komunikasi dengan board
arduino melalui port USB.
11
2.9. Tampilan aplikasi Arduino IDE
Setelah menjalankan salah satu cara diatas untuk mengaktifkan Arduino IDE, maka
aplikasi Aduino IDE akan tampil seperti pada gambar dibawah ini.
12
Gambar 16. Cek koneksi port dan jenis board microcontroller
13
icon ini berfungsi untuk melakukan verifikasi apakah program yang telah
kita tulis memiliki error atau tidak. Sehingga dengan adanya fungsi verifikasi
pogram yang di upload ke microcontroller adalah program yang minim kesalahan
atau tingkat errornya.
b. Icon Upload
icon new berfungsi untuk membuat lembar kerja atau file program yang baru.
d. Icon Open
icon open berfungsi untuk membuka file-file program yang pernah ditulis dan
disimpan sebelumnya.
e. Icon Save
icon save berfungsi untuk menyimpan file program yang telah ditulis agar
suatu saat dapat digunakan kembali jika diperlukan.
Setelah memahami fungsi-fungsi icon diatas, maka pastikan sekali lagi koneksi port
dan jenis board yang anda gunakan telah sesuai, kemudian klik icon upload
untuk menjalankan proses upload program ke board Arduino Uno yang anda miliki.
Tunggu progress bar yang ada di pojok kanan bawah hingga penuh 100 %, ini adalah
indikator bahwa proses upload ke board Arduino sudah selesai atau belum
.
14
Gambar 19. Simbol dan Bentuk lampu LED
4.1. Cara Kerja LED
Seperti dikatakan sebelumnya, LED merupakan keluarga dari Dioda yang terbuat dari
Semikonduktor. Cara kerjanya pun hampir sama dengan Dioda yang memiliki dua
kutub yaitu kutub Positif (P) dan Kutub Negatif (N). LED hanya akan memancarkan
cahaya apabila dialiri tegangan maju (bias forward) dari Anoda menuju ke Katoda.
LED terdiri dari sebuah chip semikonduktor yang di doping sehingga menciptakan
junction P dan N. Yang dimaksud dengan proses doping dalam semikonduktor adalah
proses untuk menambahkan ketidakmurnian (impurity) pada semikonduktor yang
murni sehingga menghasilkan karakteristik kelistrikan yang diinginkan. Ketika LED
dialiri tegangan maju atau bias forward yaitu dari Anoda (P) menuju ke Katoda (K),
Kelebihan Elektron pada N-Type material akan berpindah ke wilayah yang kelebihan
Hole (lubang) yaitu wilayah yang bermuatan positif (P-Type material). Saat Elektron
berjumpa dengan Hole akan melepaskan photon dan memancarkan cahaya
monokromatik (satu warna).
LED atau Light Emitting Diode yang memancarkan cahaya ketika dialiri tegangan maju
ini juga dapat digolongkan sebagai Transduser yang dapat mengubah Energi Listrik
menjadi Energi Cahaya.
15
Gambar 21. Polaritas LED
4.3. Warna pada LED
Saat ini, LED telah memiliki beranekaragam warna, diantaranya seperti warna merah,
kuning, biru, putih, hijau, jingga dan infra merah. Keanekaragaman Warna pada LED
tersebut tergantung pada wavelength (panjang gelombang) dan senyawa
semikonduktor yang dipergunakannya. Berikut ini adalah Tabel Senyawa
Semikonduktor yang digunakan untuk menghasilkan variasi warna pada LED :
5) Mengenal Resistor
Resistor merupakan salah satu komponen yang paling sering ditemukan dalam
Rangkaian Elektronika. Hampir setiap peralatan Elektronika menggunakannya. Pada
dasarnya Resistor adalah komponen Elektronika Pasif yang memiliki nilai resistansi atau
hambatan.
5.1. Jenis-jenis Resistor
Pada umumnya Resistor dapat diklasifikasikan menjadi beberapa jenis, diantaranya
adalah Fixed Resistor, Variable Resistor, Thermistor dan LDR.
A. Fixed Resistor
Fixed resistor adalah jenis Resistor yang memiliki nilai resistansinya tetap. Nilai
Resistansi atau Hambatan Resistor ini biasanya ditandai dengan kode warna ataupun
kode Angka.
16
Gambar 22. Jenis dan Simbol Fixed Resistor
➢ Carbon composite resistor, Resistor jenis Carbon Composistion ini terbuat dari
komposisi karbon halus yang dicampur dengan bahan isolasi bubuk sebagai
pengikatnya (binder) agar mendapatkan nilai resistansi yang diinginkan. Semakin
banyak bahan karbonnya semakin rendah pula nilai resistansi atau nilai
hambatannya. Nilai Resistansi yang sering ditemukan di pasaran untuk Resistor
jenis Carbon Composistion Resistor ini biasanya berkisar dari 1Ω sampai 200MΩ
dengan daya 1/10W sampai 2W
➢ Carbon Film Resistor Resistor Jenis Carbon Film ini terdiri dari filem tipis karbon
yang diendapkan Subtrat isolator yang dipotong berbentuk spiral. Nilai
resistansinya tergantung pada proporsi karbon dan isolator. Semakin banyak
bahan karbonnya semakin rendah pula nilai resistansinya. Keuntungan Carbon
Film Resistor ini adalah dapat menghasilkan resistor dengan toleransi yang lebih
rendah dan juga rendahnya kepekaan terhadap suhu jika dibandingkan dnegan
Carbon Composition Resistor. Nilai Resistansi Carbon Film Resistor yang
tersedia di pasaran biasanya berkisar diantara 1Ω sampai 10MΩ
dengan daya 1/6W hingga 5W. Karena rendahnya kepekaan terhadap
suhu, Carbon Film Resistor dapat bekerja di suhu yang berkisar dari -
55°C hingga 155°C.
➢ Metal Film Resistor adalah jenis Resistor yang dilapisi dengan Film
logam yang tipis ke Subtrat Keramik dan dipotong berbentuk spiral. Nilai
Resistansinya dipengaruhi oleh panjang, lebar dan ketebalan spiral
logam. Secara keseluruhan, Resistor jenis Metal Film ini merupakan
yang terbaik diantara jenis-jenis Resistor yang ada (Carbon
Composition Resistor dan Carbon Film Resistor).
17
B. Variabel Resistor
Variable Resistor adalah jenis Resistor yang nilai resistansinya dapat
berubah dan diatur sesuai dengan keinginan. Pada umumnya Variable
Resistor terbagi menjadi Potensiometer, Rheostat dan Trimpot.
18
Gambar 24. Jenis dan Simbol Thermistor
D. Light Dependent Resistor (LDR)
LDR atau Light Dependent Resistor adalah jenis Resistor yang nilai
Resistansinya dipengaruhi oleh intensitas Cahaya yang diterimanya.
19
Tempatkan komponen diatas pada breadboard seperti pada gambar dibawah ini
20
6.1. Syntax dalam penulisan program /sketch.
a. Komentar satu baris // …
Digunakan untuk memberi komentar atau catatan pada kode-kode yang dibuat.
c. Kurung kurawal { .. }
Digunakan untuk mendefinisikan kapan blok program mulai dan berakhir serta
digunakan juga pada fungsi dan pengulangan.
d. titik koma ;
Setiap baris kode harus diakhiri dengan tanda ; (titik koma), jika ada titik koma
yang hilang maka program tidak akan berjalan
6.2. Menulis program untuk mengontrol rangkaian 1 buah LED.
Setelah rangkaian terpasang seperti pada gambar 26, langkah selanjutnya adalah
menulis program seperti dibawah ini :
Setelah selesai menulis program, silahkan di upload dengan cara click icon .
21
6.3. Membuat prototype lampu lalu lintas
Selanjut untuk penutup pertemuan ini, silahkan buat rangkaian yang terdiri dari 3 buah
lampu LED dengan warna merah, kuning, dan hijau. Perhatikan contoh rangkaian
seperti pada gambar dibawah ini :
😊 Selamat Bekerja 😊
22
KEGIATAN PEMBELAJARAN 2
Mengindentifikasi sensor ultrasonic HC-SRO4 dan membuat prototype
sensor pengukur level ketinggian air
A. Tujuan Pembelajaran
- Pengenalan Sensor ultrasonic
- Membaca jarak dengan Sensor Ultrasonic
- Merangkai Sistem IO sederhana dengan sensor ultrasonic dan LED
- Memprogram Sensor Level ketinggian Air.
B. Indikator Capaian Kompetensi
- Mampu mengidentifikasi sensor ultrasonic
- Mampu memasang rangkaian sensor ultrasonic dan mengukur jarak benda menggunakan
sensor ultrasonic.
- Mampu membuat sensor level ketinggian air.
C. Uraian Materi
1) Identifikasi Sensor Ultra sonic
Sensor ultrasonik merupakan sensor yang menggunakan gelombang ultrasonik.
Gelombang ultrasonik yaitu gelombang yang umum digunakan untuk mendeteksi
keberadaan suatu benda dengan memperkirakan jarak antara sensor dan benda tersebut.
Sensor ini berfungsi untuk mengubah besaran fisis (bunyi) menjadi besaran listrik begitu
pula sebaliknya. Gelombang ultrasonik memiliki frekuensi sebesar 20.000 Hz. Bunyi
tersebut tidak dapat didengar oleh telinga manusia. Bunyi tersebut dapat didengar oleh
hewan tertentu seperti anjing, kelelawar dan kucing. Bunyi gelombang ultrasonik dapat
merambat melalui zat cair, padat dan gas. Benda cair merupakan media merambat yang
paling baik untuk sensor ultrasonik jika dibandingkan dengan benda padat dan gas. Oleh
karena itu, sensor ultrasonik banyak digunakan pada kapal selam dan alat khusus untuk
mengukur kedalaman air laut.
A. Cara kerja sensor ultrasonic
Cara kerja sensor ultrasonik berdasarkan prinsip dari pantulan suatu gelombang
suara sehingga dapat dipakai untuk menafsirkan jarak suatu benda menggunakan
frekuensi tertentu. Gelombang ultrasonik dibangkitkan melalui sebuah alat yang
disebut dengan piezoelektrik menggunakan frekuensi tertentu. Piezoelektrik tersebut
akan menghasilkan gelombang ultrasonik dengan frekuensi 40KHz ketika sebuah
osilator diterapkan pada benda tersebut. Pada umumnya, alat tersebut akan
menembakkan gelombang ultrasonik menuju suatu area atau suatu target. Ketika
gelombang sudah menyentuh permukaan target, maka target akan memantulkan
kembali gelombang tersebut. Kemudian gelombang pantulan yang dihasilkan dari
target akan ditangkap oleh sensor. Setelah itu, sensor akan menghitung selisih antara
waktu pengiriman gelombang dan waktu gelombang pantul yang diterima.
23
✓ Sinyal yang dipancarkan akan merambat sebagai gelombang bunyi dengan
kecepatan sekitar 340 m/s. Ketika membentur suatu benda, maka sinyal tersebut
akan dipantulkan oleh benda tersebut.
✓ Sinyal akan diproses untuk menghitung jarak benda tersebut setelah gelombang
pantulan sampai di alat penerima.
Cara menggunakan sensor ini yaitu ketika diberikan tegangan positif pada pin Trigger
selama 10uS, maka sensor akan mengirimkan 8 step sinyal ultrasonik dengan
frekuensi 40 kHz. Selanjutnya, sinyal akan diterima pada pin Echo. Untuk mengukur
jarak benda yang memantulkan sinyal tersebut, maka selisih waktu ketika mengirim
dan menerima sinyal digunakan untuk menentukan jarak benda tersebut
1. Arduino Board
2. Sensor Ultrasonic HC-SR04
3. Kabel jumper
Setelah seluruh komponen tersedia, tempatkan komponen pada breadboard sesuai contoh
pada gambar dibawah ini :
24
Gambar 30. Desain Rangkaian Sensor Ultrasonic
Keterangan :
Arduino Uno Sensor Ultrasonic HC SR04
Gnd Gnd
5V vcc
Pin 2 Echo
Pin 3 Trig
Setelah semua komponen terpasang sesuai pada layout rangkaian diatas, selanjutnya
tuliskan program seperti dibawah ini dan klik icon upload :
void setup() {
[Link] (9600); //inisialiasasi komunikasi serial
//deklarasi pin
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(LEDPin, OUTPUT);
}
void loop() {
/* Berikut siklus trigPin atau echo pin yang digunakan
untuk menentukan jarak objek terdekat dengan memantulkan
gelombang suara dari itu. */
25
digitalWrite(trigPin, LOW);delayMicroseconds(2);
digitalWrite(trigPin, HIGH);delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
3) Membuat sensor level ketinggian air menggunakan ultrasonic dan indikator lampu LED
Baiklah untuk project akhir pertemuan ini, kita akan membuat sebuah prototype sensor
pengukur ketinggian air (water level sensor) menggunakan indikator berupa lampu LED.
Aplikasi dari prototipe “water level sensor” ini biasa dapat digunakan untuk mengukur stock
atau persediaan air bersih dan persedian nutrisi tanaman hidroponik. Berikut ilustrasi dari
desain aplikasi tersebut:
26
Pada gambar diatas terdapat sensor ultrasonic yang dipasang pada tandon air, berfungsi
sebagai sensor pengukur ketinggin air dalam tandon. JIka air pada tandon kosong, maka
microcontroller akan mengaktifkan pompa air dengan sekaligus menyalakan alarm tanda
pengisian air sedang berlangsung untuk mengisi kembali stok persediaan air. Jika air dalam
tandon sudah mulai penuh maka pompa air dimatikan secara otomatis.
Untuk percobaan kali ini kita akan membuat sistem pengukur ketinggian air sederhana
dengan menggunakan indikator berupa lampu LED.
Untuk memulai membuat sebuah rangkaian sensor pengukurn ketinggian air diperlukan
beberapa komponen sebagai berikut :
1. Arduino Board
2. Sensor Ultrasonic HC-SR04
3. Kabel jumper
4. Lampu LED 3 buah (Merah, Kuning, dan Hijau)
5. 3 buah Resistor 220 ohm
27
Keterangan :
Arduino Uno Sensor Ultrasonic HC SR04
Gnd Gnd
5V vcc
Pin 2 Echo
Pin 3 Trig
Pin 8 LED Merah
Pin 9 LED Kuning
Pin 10 LED Hijau
Pin 11 LED Biru
28
KEGIATAN PEMBELAJARAN 3
Mengidentifikasi sensor DHT11 dan membuat prototype sensor suhu dan
Kelembaban udara menggunakan indikator berupa LED
A. Tujuan Pembelajaran
- Pengenalan Sensor DHT11
- Membaca input dari sensor DHT11 melalui Serial monitor
- Merangkai Sistem IO sederhana dengan sensor DHT11.
C. Uraian Materi
1) Mengidentifikasi Sensor DHT11
DHT11 adalah sensor digital yang dapat mengukur suhu dan kelembaban udara sekitar.
Sensor ini sangat mudah digunakan dengan Arduino. Ini sangat stabil dan memiliki kalibrasi yang
sangat akurat. Koefisien kalibrasi disimpan dalam memori program OTP, sehingga modul ini
masuk ke dalam perhitungan saat sensor mendeteksi sesuatu.
A. Spesifikasi sensor DHT11
DHT11 berisi sensor kualitas tertinggi dalam hal respons, pembacaan data yang cepat, dan
kemampuan anti-interferensi. Ukurannya yang kecil mencapai 20 meter. produk ini cocok
untuk berbagai aplikasi pengukuran suhu dan kelembaban.
Berikut spesifikasi lengkap sensor DHT11
✓ Tegangan suplai:+5v
✓ Kisaran suhu:0 hingga 50 ° C kesalahan ± 2 ° C
✓ Kelembaban:20-90% RH ± 5% RH kesalahan
✓ Antarmuka:Digital
✓ Kabel koneksi 3-pin
29
B. Aplikasi dari sensor DHT11
DHT11 adalah sensor digital yang dapat mengukur suhu dan kelembaban udara sekitar.
Sensor ini sangat mudah digunakan dengan Arduino. Ini sangat stabil dan memiliki kalibrasi
yang sangat akurat. Koefisien kalibrasi disimpan dalam memori program OTP, sehingga
modul ini akan memasukkannya ke dalam perhitungan saat sensor mendeteksi sesuatu.
Sangat mudah untuk membuat termo-higrometer dengan Arduino. Yang Anda butuhkan
hanyalah papan Arduino dan sensor suhu DHT11
Prinsip kerja sensor DHT11 jika ditempatkan langsung di bawah nebulizer (mesin pembuat
uap) mengukur suhu dan kelembaban normal di dalam ruangan seperti green house. Ketika
pembacaan suhu melebihi batas, sensor mengeluarkan perintah ke papan Arduino untuk
mengaktifkan solenoid mesin embun buatan. Jika penyemprot embun berjalan dengan baik
kemudiansensor akan membaca kembali suhu sekitar ruangan (lebih dingin dan kelembaban
lebih tinggi)
30
Keterangan :
Arduino Uno Sensor DHT11
5v Kaki No 1
Pin 2 Kaki No 2
5v + Resistor Kaki No 2
Gnd Kaki No 4
Setelah seluruh komponen terkoneksi dengan baik sesuai dengan sirkuit diatas, maka tulis
dan upload program sebagai berikut :
Untuk memeriksa apakah hasil pengukuran suhu berjalan dengan baik, silahkan buka serial
monitor dengan cara klik menu tools → klik Serial Monitor (Ctrl + Shift + M ).
😊 Selamat Mencoba 😊
31
KEGIATAN PEMBELAJARAN 4
Mengidentifikasi sensor Infra red/ Sensor TCRT-5000 dan membuat
prototype sensor pembaca garis pada robot line follower
A. Tujuan Pembelajaran
- Pengenalan Sensor TCRT-5000
- Membaca input dari sensor TCRT-5000 melalui Serial monitor
- Merangkai Sistem IO sederhana dengan sensor TCRT-5000.
C. Uraian Materi
1) Identifikasi sensor TCRT-5000
Modul Sensor Garis TCRT-5000 Tcrt5000 sendiri merupakan sensor refleksi inframerah
yang digunakan sebagai pemancar dan penerima. Biasanya, sensor ini sering dipakai untuk
membaca suatu objek. Cara melakukannya tentu saja dengan menggunakan pantulan
cahaya yang kemudian ditangkap oleh dioda. Perhatikan gambar berikut :
Jika dilihat dari gambar diatas, kita dapat melihat sebuah potensio dibagian belakang sensor,
fungsi dari pada potensio ini adalah untuk mengatur sensitivitas sensor. TCRT5000
mempunyai 4 pin, yaitu :
- VCC (untuk input tegangan positif).
- GND (untuk input tegangan negatif).
- D0 (Digital Output), pin Output digital dari sensor TCRT5000.
- A0 (Analog Output), pin output analod dari sensor TCRT5000.
Dalam sensor TCRT5000 terdapat 2 sensor infrared yang masing-masing berfungsi sebagai
pemancar dan penerima, bentuknya seperti LED kecil, dari gambar diatas dapat dilihat
Infrared yang berwarna biru berfungsi sebagai pemancar cahaya, dan yang berwarna hitam
berfungsi sebagai penerima cahayanya.
32
Cara kerja dari sensor ini dapat dilihat pada Gambar berikut :
Dari gambar diatas dapat kita pahami bahwa ketika sensor dihadapkan dengan benda yang
dapat merefleksikan cahaya maka cahaya, maka cahaya akan diteruskan kepada sensor
receiver. Jika sensor dihadapkan dengan benda yang tidak dapatr merefleksikan cahaya,
maka cahaya InfraRed tidak akan diteruskan.
Dari hasil percobaan yang dilakukan, keluaran dari sensor akan bernilai high ketika
dihadapkan dengan warna yang tidak dapat merefleksikan cahaya, misalnya dengan warna
hitam. kemudian pada saat dihadapkan dengan benda/warna yang tidak dapat
merefleksikan cahaya keluaran dari sensor bernilai LOW.
Setelah seluruh komponen tersedia, silahkan tempatkan komponen pada breadboard sesuai
dengan contoh gambar dibawah ini!
33
Arduino Uno Sensor TCRT-5000
5v Vcc
Gnd Gnd
Pin7 D0
Pin A0 A0
Setelah seluruh komponen terpasang sesuai dengan desain sirkuit diatas, selanjutnya
silahkan tulis dan upload code program sebagai berikut :
Untuk memeriksa apakah hasil pengukuran suhu berjalan dengan baik, silahkan buka serial
monitor dengan cara klik menu tools → klik Serial Monitor (Ctrl + Shift + M ).
34
Berdasarkan gambar diatas maka algoritma dari line tracker yang digunakan pada prototype
robot line follower adalah sebagai berikut :
a. Jika sensor kiri mendeteksi garis sedangkan sensor kanan tidak mendeteksi garis maka
tampilkan pesan melalui serial monitor “Roda kanan On dan roda kiri Off”.
b. Jika sensor kiri tidak mendeteksi garis sedangkan sensor kanan mendeteksi garis maka
tampilkan pesan melalui serial monitor “Roda kanan Off dan roda kiri ON”.
c. Sedangkan jika kedua sensor mendeteksi garis maka tampilkan pesan “Roda kiri dan
Roda Kanan On”.
😊 Selamat Mencoba 😊
35
KEGIATAN PEMBELAJARAN 5
A. Tujuan Pembelajaran
- Pengenalan Relay dan Buzzer
- Memprogram Relay
- Memprogram Buzzer
- Merangkai sistem IO sederhana menggunakan Sensor DHT11, relay serta buzzer
- Merangkai Sistem IO sederhana menggunakan Sensor Ultrasonic, relay serta buzzer.
36
➢ Prinsip Kerja Relay
Pada dasarnya, Relay terdiri dari 4 komponen dasar yaitu :
a. Electromagnet (Coil)
b. Armature
c. Switch Contact Point (Saklar)
d. Spring
Sesuai skema gambar diatas, sebuah Besi (Iron Core) yang dililit oleh sebuah kumparan
Coil yang berfungsi untuk mengendalikan Besi tersebut. Apabila Kumparan Coil diberikan
arus listrik, maka akan timbul gaya Elektromagnet yang kemudian menarik Armature
untuk berpindah dari Posisi sebelumnya (NC) ke posisi baru (NO) sehingga menjadi
Saklar yang dapat menghantarkan arus listrik di posisi barunya (NO). Posisi dimana
Armature tersebut berada sebelumnya (NC) akan menjadi OPEN atau tidak
terhubung. Pada saat tidak dialiri arus listrik, Armature akan kembali lagi ke posisi Awal
(NC). Coil yang digunakan oleh Relay untuk menarik Contact Poin ke Posisi Close pada
umumnya hanya membutuhkan arus listrik yang relatif kecil.
37
2) Memprogram Relay
Untuk memulai membuat sebuah rangkaian relay diperlukan beberapa komponen sebagai
berikut:
a. Arduino Board
b. 1 buah modul relay 2 channel
c. Kabel jumper
Setelah seluruh komponen tersedia, silahkan tempatkan komponen pada breadboard sesuai
dengan contoh gambar dibawah ini!
Keterangan :
Arduino Uno Relay 2 channel
5v Vcc
Gnd Gnd
Pin 13 In1
Setelah seluruh komponen terpasang sesuai dengan desain sirkuit diatas, selanjutnya
silahkan tulis dan upload code program sebagai berikut:
38
3) Mengidentifikasi Buzzer
➢ Pengertian Buzzer dan Fungsinya
Buzzer adalah sebuah komponen elektronika yang dapat mengubah sinyal listrik menjadi
getaran suara. Buzzer ini biasa dipakai pada sistem alarm. Juga bisa digunakan sebagai
indikasi suara. Buzzer adalah komponen elektronika yang tergolong tranduser.
Sederhananya buzzer mempunyai 2 buah kaki yaitu positive dan negative. Untuk
menggunakannya secara sederhana kita bisa memberi tegangan positive dan negative 3
- 12V.
➢ Cara Kerja Buzzer
Pada saat aliran listrik atau tegangan listrik yang mengalir ke rangkaian yang
menggunakan piezoeletric tersebut. Piezo buzzer dapat bekerja dengan baik dalam
menghasilkan frekwensi di kisaran 1 - 6 kHz hingga 100 kHz.
4) Memprogram Buzzer
Untuk memulai membuat sebuah rangkaian buzzer diperlukan beberapa komponen sebagai
berikut:
d. Arduino Board
e. 1 Buah buzzer
f. Kabel jumper
39
Setelah seluruh komponen tersedia, silahkan tempatkan komponen pada breadboard sesuai
dengan contoh gambar dibawah ini!
Setelah seluruh komponen terpasang sesuai dengan desain sirkuit diatas, selanjutnya
silahkan tulis dan upload code program sebagai berikut:
Menggunakan Tone, untuk menghasilkan suara yang lebih menarik dengan funsi (“tone”).
Berikut contoh program menggunakan fungsi tone.
40
5) Merangkai sistem IO sederhana menggunakan Sensor DHT11, relay serta buzzer
Tugas, buatlah sebuah aplikasi sistem pendingin ruangan dengan algoritma sebagai berikut:
a. Gunakan sensor suhu DHT11 untuk mengukur suhu ruangan
b. Jika suhu ruangan diatas 350c, maka relay 1 aktif sebagai saklar untuk menyalakan
kipas angin dan relay 2 di non-aktifkan, sekaligus buzzer berbunyi dengan cepat yakni
tiap 500ms.
c. Sedangkan Jika kelembaban udara diatas 65%, atau dibawah 45% maka relay 2 aktif
sebagai saklar untuk menyalakan mesin ventilator untuk menetralkan kelembaban
udara dalam ruangan, sekaligus buzzer berbunyi tiap 1 detik.
😊 Selamat Mencoba 😊
41
KEGIATAN PEMBELAJARAN 6
Mengidentifikasi Motor DC dan Driver Motor L298N,
Serta mampu mengontrol motor DC sebagai penggerak roda robot.
A. Tujuan Pembelajaran
- Pengenalan motor DC
- Pengenalan Modul Motor Driver dan Motor DC
- Memproram Motor DC (Maju atau Mundur)
- Merangkai sistem IO sederhana menggunakan IR dan Motor DC
- Merangkai Sistem IO sederhana menggunakan Sensor Ultrasonic dan Motor DC
42
✓ Fungsi motor DC
Adapun fungsi motor DC adalah:
a. Motor yang menggunakan arus DC biasanya sering diaplikasikan pada penggerak
pintu putar.
b. Motor DC ini juga bisa diaplikasikan pada jenis rangkaian robot sederhana.
c. Dapat juga digunakan sebagai penggerak pada berbagai komponen elektronika.
Misalnya saja seperti pada vibrator ponsel, baling- baling kipas, alat bor dan alat
sejenisnya.
2) Driver L298N
✓ Pengenalan Driver motor L298N
Driver motor L298N merupakan suatu modul motor driver yang digunakan untuk
mengontrol kecepatan dan arah putaran motor DC. Modul ini sangat populer dan sering
dihubungkan ke mikrokontroler arduino.
Seperti namanya motor driver ini menggunakan IC L298n, dengan konstruksi rangkaian
H - Bridge. Maka dari itu rangkaian ini dapat mengendalikan beban induktif pada
kumparan. Seperti kita tahu bahwa motor listrik terdiri dari lilitan kumparan sehingga
memiliki beban induktif yang sangat besar. Kemudian dalam rangkaian IC tersebut
terdapat transistor transistor logic (TTL) dengan gerbang NAND yang berfungsi untuk
merubah arah putaran motor.
Pin Out
Merupakan suatu pin yang digunakan untuk menghubungkan driver ke kutub motor.
Karena pin ini dihubungkan ke motor maka tidak ada kutub negatif dan positif sehingga
pemasangan kabel ke kutub motor bisa dibalik - balik.
Pin IN
Suatu pin yang dihubungkan ke pin Digital Arduino. Pin ini digunakan untuk mengatur
arah putaran motor yang dihubungkan ke driver l298n.
43
Contohnya apabila IN1 HIGH dan IN2 LOW, Maka motor berputar searah jarum jam.
Namun apabila IN1 LOW dan IN2 HIGH, Maka motor berputar berlawanan arah jarum
jam. Nilai logika LOW dan HIGH pada pin IN ini akan diatur pada coding arduino.
Pin Enable
Merupakan suatu pin yang digunakan sebagai sumber tegangan tambahan motor DC
agar kecepatan motor meningkat. Misalkan kita menghubungkan tegangan 12 Volt ke
pin Enable tersebut maka kecepatan motor akan meningkat.
Pin enable A digunakan untuk meningkatkan tegangan dan kecepatan motor sebelah
kiri (Output 1 dan 2), sedangkan pin enable B digunakan untuk meningkatkan tegangan
dan kecepatan motor sebelah kanan (Output 3 dan 4).
Pin 12 V
Pin yang digunakan untuk menghubungkan ke sumber tegangan baterai 12 Volt DC.
Pin 5 V
Pin yang digunakan untuk menghubungkan ke sumber tegangan baterai 5 Volt DC.
Pin GND
Digunakan untuk menghubungkan ke ground Arduino.
Pin Jumper
Digunakan untuk menghubungkan ke sumber tegangan tambahan apabila kecepatan
motor kurang
3) Memprogram motor DC
Untuk memulai membuat sebuah rangkaian relay diperlukan beberapa komponen sebagai
berikut:
a. Arduino Board
b. 1 buah motor driver l298n
c. Kabel jumper
d. 2 buat motor DC
Setelah seluruh komponen tersedia, silahkan tempatkan komponen pada breadboard
sesuai dengan contoh gambar dibawah ini!
44
Silahkan tulis code sebagai berikut :
#define IN1 10 // deklarasi pin IN1
#define IN2 9 // deklarasi pin IN2
#define IN3 5 // deklarasi pin IN3
#define IN4 4 // deklarasi pin IN4
#define ENA 11 // deklarasi pin ENA
#define ENB 3 // deklarasi pin ENB
void setup() {
// Konfigurasi pin-pin sebagai Output
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(ENA, OUTPUT);
pinMode(ENB, OUTPUT);
}
void loop() {
// Motor A dan B berputar ke kanan 2000 ms (2 detik) dengan
kecepatan penuh
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(ENA, 255); // Mengatur kecepatan motor A (0-255)
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
digitalWrite(ENB, 255); // Mengatur kecepatan motor B (0-255)
delay(2000); // Jeda 2 detik
// Motor A dan B berputar ke kiri 2000 ms (2 detik) dengan
kecepatan penuh
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(ENA, 255); // Mengatur kecepatan motor A (255 = 100%)
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
digitalWrite(ENB, 255); // Mengatur kecepatan motor B (255 = 100%)
delay(2000); // Jeda 2 detik;
// Motor A ke kiri dan motor B ke kanan 2000 ms (2 detik) dengan
kecepatan 50%
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(ENA, 128); // Mengatur kecepatan motor A (128 = 50%)
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
digitalWrite(ENB, 128); // Mengatur kecepatan motor B (128 = 50%)
45
delay(2000); // Jeda 2 detik;
// Motor A dan motor B berhenti selama 2000 ms (2 detik)
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(ENA, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
digitalWrite(ENB, LOW);
delay(2000);
}
😊 Selamat Bekerja 😊
46
KEGIATAN PEMBELAJARAN 7
Membangun Robot Liner Follower
A. Tujuan Pembelajaran
- Pemahaman tentang Pemrograman: Proyek robot line follower melibatkan pemrograman
mikrokontroler seperti Arduino. Pembelajaran ini membantu siswa atau penggemar teknologi
untuk memahami dasar-dasar pemrograman, struktur kendali, logika algoritma, dan cara
menerapkan instruksi dalam bahasa pemrograman.
- Penerapan Sensor: Robot line follower menggunakan sensor untuk mendeteksi garis atau
jalur yang akan diikuti. Pembelajaran ini membantu pengguna memahami konsep sensor dan
cara mengintegrasikannya dengan perangkat keras dan perangkat lunak.
- Rekayasa Mekanik dan Elektronik: Pembuatan robot line follower melibatkan merakit dan
menghubungkan berbagai komponen mekanik dan elektronik, seperti motor, sensor, dan
kontroler. Ini membantu membangun pemahaman tentang rangkaian elektronik, motor,
transmisi gerakan, dan mekanisme keseluruhan.
- Pemecahan Masalah: Ketika merancang dan mengoperasikan robot line follower, sering kali
akan muncul masalah teknis atau tantangan yang memerlukan pemecahan masalah. Ini
membantu dalam pengembangan keterampilan analitis dan pemecahan masalah yang
penting dalam dunia teknologi.
- Pemahaman Kendali Otomatis: Konsep kendali otomatis sangat penting dalam robot line
follower. Siswa atau pengguna akan belajar tentang jenis kendali (P, PD, PID), umpan balik,
pengendalian sistem, dan bagaimana menerapkannya dalam robot.
- Kreativitas dan Inovasi: Proyek robot line follower mendorong siswa atau penggemar untuk
berpikir kreatif dalam mengatasi tantangan dan merancang solusi inovatif. Ini membantu
dalam mengembangkan keterampilan kreatif dan pemikiran desainRobot mampu bergerak
mengikuti track berupa garis yang telah ditentukan
47
- Kreativitas dan Inovasi: Mengusulkan modifikasi atau peningkatan pada desain robot line
follower untuk meningkatkan kinerja. Menerapkan solusi inovatif untuk situasi atau kondisi
yang tidak biasa.
- Kerja Tim (jika berlaku): Berkontribusi dalam tim untuk merakit robot, mengembangkan
program, dan mengatasi masalah. Berbagi pengetahuan dan keterampilan dengan anggota
tim lainnya.
C. Uraian Materi
Arduino. Robot line follower adalah jenis robot yang dirancang untuk mengikuti jalur yang telah
ditentukan, biasanya menggunakan sensor-sensor untuk mendeteksi jalur tersebut. Berikut langkah-
langkah umum untuk membuat modul robot line follower dengan Arduino:
Bahan-bahan yang Diperlukan:
- Arduino board (misalnya Arduino Uno atau Arduino Nano)
- Motor DC atau motor servo untuk menggerakkan roda robot
- Sensor-sensor inframerah (misalnya sensor TCRT5000) untuk mendeteksi garis
- Motor driver (misalnya L293D atau L298N) untuk mengontrol motor-motor DC
- Breadboard atau PCB untuk merakit komponen
- Kabel jumper untuk menghubungkan komponen
- Baterai atau sumber daya untuk memberi catu daya robot
Langkah-langkah umum:
1. Siapkan perangkat keras seperti motor, sensor, dan driver motor.
2. Hubungkan motor ke motor driver dan pasang sensor inframerah di depan robot.
3. Hubungkan komponen-komponen tersebut ke pin-pin yang sesuai di papan Arduino.
Pastikan Anda merakitnya dengan rapi dan benar.
48
//Robot line follower by AJTekno
#include <AFMotor.h>
const int pinSensorKiri = A0;
const int pinSensorKanan = A1;
char val;
AF_DCMotor motor1(4, MOTOR12_64KHZ); //Jadikan motor kanan, 64KHZ
AF_DCMotor motor2(3, MOTOR12_64KHZ); //Jadikan motor kiri, 642hHZ
void setup() {
// put your setup code here, to run once:
[Link] (9600);
pinMode (pinSensorKiri, INPUT);
pinMode (pinSensorKanan, INPUT);
[Link](180); //Set kecepatan motor 1 240 (range 0-255)
[Link](180); //Set kecepatan motor 2 240 (range 0-255)
}
void loop() {
// put your main code here, to run repeatedly:
int dataAnalog1 = digitalRead (pinSensorKiri);
int dataAnalog2 = digitalRead (pinSensorKanan);
[Link] ("Sensor : ");
[Link] (dataAnalog1);
[Link] (", Sensor : ");
[Link] (dataAnalog2);
49
5. Unggah program tersebut ke Arduino menggunakan kabel USB.
6. Pasang robot pada jalur yang ingin diikuti dan nyalakan robot. Perbaiki dan sesuaikan
program serta pengaturan sensor dan motor jika diperlukan untuk memastikan robot dapat
mengikuti jalur dengan baik.
😊 Selamat Bekerja 😊
50
KEGIATAN PEMBELAJARAN 8
Membangun Robot Fire Fighter
Robot pemadam api adalah alat yang membantu manusia untuk menelusuri, mendeteksi dan
memadamkan api. Pengembangan robot pemadam api memerlukan alat pendeteksi yang memiliki
akurasi tinggi untuk mendeteksi api
A. Tujuan Pembelajaran
- Pemahaman tentang Pemrograman: Proyek robot pemadam api melibatkan pemrograman
mikrokontroler seperti Arduino. Pembelajaran ini membantu siswa atau penggemar teknologi
untuk memahami dasar-dasar pemrograman, struktur kendali, logika algoritma, dan cara
menerapkan instruksi dalam bahasa pemrograman.
- Penerapan Sensor: Robot pemadam api menggunakan sensor untuk mendeteksi api.
Pembelajaran ini membantu pengguna memahami konsep sensor dan cara
mengintegrasikannya dengan perangkat keras dan perangkat lunak.
- Rekayasa Mekanik dan Elektronik: Pembuatan robot pemadam api melibatkan merakit dan
menghubungkan berbagai komponen mekanik dan elektronik, seperti motor, sensor, dan
kontroler. Ini membantu membangun pemahaman tentang rangkaian elektronik, motor,
transmisi gerakan, dan mekanisme keseluruhan.
- Pemecahan Masalah: Ketika merancang dan mengoperasikan robot pemadam api, sering
kali akan muncul masalah teknis atau tantangan yang memerlukan pemecahan masalah. Ini
membantu dalam pengembangan keterampilan analitis dan pemecahan masalah yang
penting dalam dunia teknologi.
- Pemahaman Kendali Otomatis: Konsep kendali otomatis sangat penting dalam robot
pemadam api. Siswa atau pengguna akan belajar tentang jenis kendali (P, PD, PID), umpan
balik, pengendalian sistem, dan bagaimana menerapkannya dalam robot.
- Kreativitas dan Inovasi: Proyek robot pemadam api mendorong siswa atau penggemar
untuk berpikir kreatif dalam mengatasi tantangan dan merancang solusi inovatif. Ini
membantu dalam mengembangkan keterampilan kreatif dan pemikiran desain Robot mampu
bergerak mengikuti track berupa garis yang telah ditentukan
51
- Pemecahan Masalah: Mengidentifikasi dan mengatasi masalah umum dalam operasi robot
pemadam api (misalnya, robot tidak mampu menemukan titik api). Merancang solusi untuk
tantangan teknis yang mungkin muncul selama proses pembuatan dan pengujian.
- Kreativitas dan Inovasi: Mengusulkan modifikasi atau peningkatan pada desain robot
pemadam api untuk meningkatkan kinerja. Menerapkan solusi inovatif untuk situasi atau
kondisi yang tidak biasa.
- Kerja Tim (jika berlaku): Berkontribusi dalam tim untuk merakit robot, mengembangkan
program, dan mengatasi masalah. Berbagi pengetahuan dan keterampilan dengan anggota
tim lainnya.
C. Uraian Materi
Membuat robot pemadam api menggunakan Arduino adalah proyek yang menarik, tetapi perlu
diingat bahwa ini adalah proyek yang rumit dan berpotensi berbahaya jika tidak dilakukan dengan
hati-hati. Berikut adalah langkah-langkah umum untuk membuat robot pemadam api menggunakan
Arduino:
- Bahan-bahan yang Diperlukan:
- Arduino board (misalnya, Arduino Uno atau Arduino Mega)
- Motor DC atau motor servo untuk pergerakan robot
- Sensor api (flame sensor)
- Modul pemadam api atau sistem pemadam api otomatis (Kipas Angin mini)
- Baterai dan pengisi daya
- Roda atau trek roda
Langkah-langkah:
1. Merancang Robot:
Pertama, Anda perlu merencanakan desain robot pemadam api Anda. Pilih tipe pergerakan
(roda atau kaki), ukuran, dan bentuk robot yang sesuai dengan kebutuhan Anda. Sesuaikan
dengan model/ Kit robot yang digunakan.
2. Pemasangan Komponen :
Hubungkan komponen-komponen tersebut ke pin-pin yang sesuai di papan Arduino.
Pastikan Anda merakitnya dengan rapi dan benar. Perhatikan skematik berikut :
52
[Link]:
Tulis kode Arduino yang diperlukan untuk membaca data dari sensor api, mengontrol motor,
dan mengaktifkan sistem pemadam api jika titik api ditemukan.
#include
Servo myservo;
int pos = 0;
boolean fire = false;
/*-------defining Inputs------*/
#define Left_S 9 // left sensor
#define Right_S 10 // right sensor
#define Forward_S 8 //forward sensor
/*-------defining Outputs------*/
#define LM1 2 // left motor
#define LM2 3 // left motor
#define RM1 4 // right motor
#define RM2 5 // right motor
#define pump 6
void setup()
{
pinMode(Left_S, INPUT);
pinMode(Right_S, INPUT);
pinMode(Forward_S, INPUT);
pinMode(LM1, OUTPUT);
pinMode(LM2, OUTPUT);
pinMode(RM1, OUTPUT);
pinMode(RM2, OUTPUT);
pinMode(pump, OUTPUT);
[Link](11);
[Link](90);
}
void put_off_fire()
{
delay (500);
digitalWrite(LM1, HIGH);
digitalWrite(LM2, HIGH);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
53
digitalWrite(pump, HIGH); delay(500);
digitalWrite(pump,LOW);
[Link](90);
fire=false;
}
void loop()
{
[Link](90); //Sweep_Servo();
54
digitalWrite(LM1, HIGH);
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, HIGH);
}
😊 Selamat Bekerja 😊
55