Disusun Oleh:
i
KATA PENGANTAR
Syukur Alhamdulillah kehadirat Allah SWT yang telah memberikan rahmat dan karunia-Nya, sehingga
penulis dapat menyelesaikan Tugas Akhir mata kuliah Mikrokontroller ini dengan judul “RANCANG
BANGUN ALAT METERAN OTOMATIS BERBASIS ARDUINO UNO R3 KIT”. Tugas Akhir ini
disusun untuk memenuhi syarat untuk menyelesaikan proyek Tugas Akhir mata kuliah Mikrokontroller.
Dalam menyelesaikan Tugas Akhir ini penulis banyak mendapat bantuan dari berbagai pihak. Untuk itu
penulis mengucapkan terima kasih kepada yang terhormat:
1. Bapak Syahid S.T.,M.T. selaku Dosen Pembimbing mata kuliah Mikrokontroller.
2. Seluruh bapak dan ibu dosen serta staf pegawai Jurusan Teknik Elektro khususnya Program Studi
Teknik Listrik Politeknik Negeri Semarang.
3. Orang tua penulis tercinta yang senantiasa mendukung dan memberikan doa bagi penulis hingga
terselesaikannya tugas akhir ini.
4. Segenap teman – teman mahasiswa Jurusan Teknik Elektro, khususnya kelas LT 2D yang kurang
lebih 1 semester bersama dalam proses pembelajaran praktek mikrokontroler di Politeknik Negeri
Semarang.
5. Semua pihak yang telah berperan serta dalam hingga terselesaikannya tugas akhirini yang tidak
dapat penulis sebutkan satu – persatu.
Penulis menyadari bahwa di dalam penyusunan Tugas Akhir ini masih banyak terdapat kelemahan dan
kekurangan dan penulis mengharapkan saran demi kesempurnaan penulisan Tugas Akhir ini. Semoga
Tugas Akhir ini dapat bermanfaat bagi kita semua. Amin.
Penulis
ii
DAFTAR ISI
JUDUL……………………………………………………………………………………………………..i
KATA PENGANTAR…………………………………………………………………………………….ii
DAFTAR ISI……………………………………………………………………………………………...iii
DAFTAR PUSTAKA
LAMPIRAN
iii
BAB 1
PENDAHULUAN
Panjang adalah salah satu besaran pokok, dimana setiap besaran pokok memiliki alat ukur
sendiri. Salah satu satuan dalam panjang adalah meter. Alat ukur meteran adalah instrument (alat) yang
di gunakan untuk menghitung besaran panjang, dan biasanya dalam satuan meter dan cm. Contoh alat
ukur panjangadalah Mistar / penggaris dan jangka sorong .Alat ukur panjang konvensional biasanya
berupa batangan berskala maupun pita panjang yang telah diberikan skala. Skala-skala tersebut
dibandingkan dengan standar panjang yang ada, yang telah diturunkan sedemikian rupa.
Panjang merupakan salah satu besaran fisis yang sering diukur dalam berbagai keperluan yang
membutuhkan data dalam sentimeter. Alat pengukur jarak manual yang beredar di pasaran kurang
memungkinkan mendapatkan data yang akurat, karena sebagian besar alat pengukur jarak yang beredar
tersebut masih bersifat manual. Artinya, untuk mendapatkan data panjang maupun lebar masih
memiliki banyak kelemahan, antara lain :
1. Tidak dapat dilakukan sendiri atau dibutuhkan orang lain untuk melihat membacaskalapada
pita meteran tersebut.
2. Diperlukan pengetahuan untuk membaca skala meteran.
3. Memungkinkan terjadinya kesalahan pembacaan skala ketika dilihat dari posisi yang tidak tegak-
lurus terhadap meteran (kesalahan paralaks).
4. Memerlukan waktu pengukuran yang relatif lebih lama dibandingkan dengan alat ukur digital.
(Misnawati, 2011)
Melihat masalah tersebut, maka pada proyek akhir ini akan membahas perencanaan dan
pembuatan alat pengukur jarak/Penggaris Otomatis berbasis Arduino Uno R3 KIT dengan
meminimalisasi kerja manusia dan digantikan oleh kerja otomatis mesin.
1.2 Tujuan
Agar penyusunan Tugas Akhir ini dapat dilaksanakan dengan baik serta mengingat luasnya
ruang permasalahan maka perancangan alat ini dibatasi pada:
1. Pembacaan jarak sensor ultrasonik HC-SR04 di batasi pada jarak 400cm.
2. Alat ini hanya melayani pengukuran jarak.
3. Kelebihan alat ini adalah berupa output suara dan output tulisan hasil pengukuran.
Untuk memberi gambaran yang jelas tentang susunan materi yang dibahas dalam Laporan
Tugas Akhir ini, sistematika yang digunakan adalah sebagai berikut:
BAB I. PENDAHULUAN
1
Bab ini membahas mengenai Latar Belakang, Tujuan, Pembatasan Masalah dan Sistematika
Penulisan.
BAB V. PENUTUP
Berisi kesimpulan dan saran yang berkaitan dengan seluruh proses perancangan dan
pembuatan tugas akhir ini serta penyelesaian laporannya.
DAFTAR PUSTAKA
LAMPIRAN-LAMPIRAN
2
BAB II
LANDASAN TEORI
Arduino uno R3 ini termasuk keluaran baru dan merupakan revisi dari versi arduino
sebelumnya, dan memiliki beberapa fitur unggul dibandingkan jenis arduino lainnya. Dari pada
mengharuskan sebuah penekanan fisik dari tombol reset sebelum sebuah penguploadan, Arduino Uno
didesain pada sebuah cara yang memungkinkannya untuk direset dengan software yang sedang
berjalan pada pada komputer yang sedang terhubung. Salah satu garis kontrol aliran hardware (DTR)
dari ATmega8U2/16U2 sihubungkan ke garis reset dari ATmega328 melalui sebuah kapasitor 100
nanofarad. Ketika saluran ini dipaksakan (diambil rendah), garis reset jatuh cukup panjang untuk
mereset chip. Software Arduino menggunakan kemampuan ini untuk memungkinkan kita untuk
mengupload kode dengan mudah menekan tombol upload di software Arduino.Ini berarti bahwa
bootloader dapat mempunyai sebuah batas waktu yang lebih singkat, sebagai penurunan dari DTR
yang dapat menjadi koordinasi yang baik dengan memulai penguploadan.
Pengaturan ini mempunyai implikasi. Ketika Arduino Uno dihubungkan ke sebuah komputer
lain yang sedang running menggunakan OS Mac X atau Linux, Arduino Uno mereset setiap kali sebuah
koneksi dibuat dari software (melalui USB). Untuk berikutnya, setengah-detik atau lebih, bootloader
sedang berjalan pada Arduino uno. Ketika Arduino uno diprogram untuk mengabaikan data yang
cacat/salah (contohnya apa saja selain sebuah penguploadan kode baru) untuk menahan beberapa bit
pertama dari data yang dikirim ke board setelah sebuah koneksi dibuka. Jika sebuah sketch sedang
berjalan pada board menerima satu kali konfigurasi atau data lain ketika sketch pertama mulai,
3
memastikan bahwa software yang berkomunikasi menunggu satu detik setelah membuka koneksi dan
sebelum mengirim data ini.
Arduino Uno berbeda dari semua board Arduino sebelumnya, Arduino uno tidak menggunakan
chip driver FTDI USB-to-serial. Sebaliknya, fitur-fitur Atmega16U2 (Atmega8U2 sampai ke versi R2)
diprogram sebagai sebuah pengubah USB ke serial. Revisi 2 dari board Arduino Uno mempunyai
sebuah resistor yang menarik garis 8U2 HWB ke ground, yang membuatnya lebih mudah untuk
diletakkan ke dalam DFU mode. Revisi 3 dari board Arduino Uno memiliki fitur-fitur baru sebagai
berikut:
Pinout 1.0: ditambah pin SDA dan SCL yang dekat dengan pin AREF dan dua pin baru
lainnya yang diletakkan dekat dengan pin RESET, IOREF yang memungkinkan shield-shield untuk
menyesuaikan tegangan yang disediakan dari board. Untuk ke depannya, shield akan dijadikan
kompatibel/cocok dengan board yang menggunakan AVR yang
beroperasi dengan tegangan 5V dan dengan Arduino Due yang beroperasi dengan tegangan
3.3V. Yang ke-dua ini merupakan sebuah pin yang tak terhubung, yang disediakan untuk tujuan
kedepannya.
“Uno” berarti satu dalam bahasa Italia dan dinamai untuk menandakan keluaran (produk)
Arduino 1.0 selanjutnya. Arduino UNO dan versi 1.0 akan menjadi referensi untuk versi-versi
Arduino selanjutnya. Arduino UNO adalah sebuah seri terakhir dari board Arduino USB dan model
referensi untuk papan Arduino, untuk suatu perbandingan dengan versi sebelumnya.Secara umum,
spesifikasi kit Arduino Uno R3 dapat dilihat padatabel berikut ini :
4
Tabel 2.1. Spesifikasi Arduino Uno R3 Kit
NO Description
1 POWER USB
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat
koneksi USB. sebagai supply listrik ke papan atau untuk pemrograman
mikrokontroller.
2 POWER JACK
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
3 Voltage Regulator
IC ini digunakan untuk menstabilkan tegangan Eksternal dari Jack
No.2 menuju 5 V, tegangan aman Papan Arduino.
4 Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino.
Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
Ini digunakan sebagai timer atau penghitung.
5 dan 17 Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
Cara pertama dengan menekan tombol reset ( 17 ) di papan.
Cara kedua dengan menggubungkan pin reset dengan GND secara singkat.
6, 7, 8, dan 9 Pin ( 3.3, 5, GND, Vin )
5
15 Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan
nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width
Modulation ) yang dapat digunakan untuk menghasilkan PWM. Digital Pin I /
O dapat digunakan seperti saklar.
16 AREF
AREF singkatan Analog Reference. Dapat digunakan untuk mendapatkan
sumber tegangan yang dapat diatur lewat IC. Tegangannya antara 0 sampai 5
Volt.
Data Atmega328
Digital I/O Pins 14 ( 6 PWM )
Analog Pins 6 ( DIP ) atau
8 ( SMD )
DC Current per I/O Pin 40 mA
Digital
Flash Memory 32 kB
SRAM 2 kB
EEPROM 1 kB
Datasheet Link datasheet 328
Arduino uno dapat disuplai melalui koneksi USB atau dengan sebuah power suplai
eksternal.Sumber daya dipilih secara otomatis.Suplai eksternal (non-USB) dapat diperoleh dari
sebuah adaptor AC ke DC atau battery. Adaptor dapat dihubungkan dengan mencolokkan sebuah
center-positive plug yang panjangnya 2,1 mm ke power jack dari board. Kabel lead dari sebuah
baterai dapat dimasukkan dalam header /kepala pin Ground (Gnd) dan pin Vin dari konektor power.
Board Arduino dapat beroperasi pada sebuah suplai eksternal 6 sampai 20 Volt. Jika disuplai dengan
yang lebih kecil dari 7 V, kiranya pin 5
Volt mungkin mensuplai kecil dari 5 Volt dan board Arduino uno bisa menjadi tidak stabil. Jika
menggunakan suplai yang lebih dari besar 12 Volt, voltage regulator bisa kelebihan panas dan
membahayakan board Arduino uno.
2.2. Buzzer
Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik
menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loud speaker, jadi
buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut
dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar,
tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka
setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara
bergetar yang akan menghasilkan suara. Buzzer biasa digunakan sebagai indikator bahwa proses telah
selesai atau terjadi suatu kesalahan pada sebuah alat (alarm).
6
Gambar 2.2. Buzzer
Buzzer pada alat pengukur jarak/ penggaris otomatis ini merupakan sebuah modul yang
digunakan untuk mengahsilkan suara dari data panjang atau lebar yang terukur. Modul suara ini dapat
dipasang parallel.
7
Gambar 2.3.1. Pengalamatan pada LCD
Piezoelektrik berfungsi untuk mengubah energi listrik menjadi energi mekanik. Bahan
piezoelektrik adalah material yang memproduksi medan listrik ketika dikenai regangan atau tekanan
8
mekanis. Sebaliknya, jika medan listrik diterapkan, maka material tersebut akan mengalami regangan
atau tekanan mekanis. Jika rangkaian pengukur beroperasi pada mode pulsa elemen piezoelektrik yang
sama, maka dapat digunakan sebagai transmitter dan reiceiver.
Transmitter adalah sebuah alat yang berfungsi sebagai pemancar gelombang ultrasonik dengan
frekuensi tertentu (misal, sebesar 40 kHz) yang dibangkitkan dari sebuah osilator.Untuk menghasilkan
frekuensi 40 KHz, harus di buat sebuah rangk aian osilator dan keluaran dari osilator dil anjutkan
menuju penguat sinyal. Besarnya frekuensi ditentukan oleh komponen RLC / kristal tergantung dari
disain osilator yang digunakan. Penguat sinyal akan memberikan sebuah sinyal listrik yang diumpankan
ke piezoelektrik dan terjadi reaksi mekanik sehingga bergetar dan memancarkan gelombang yang sesuai
dengan besar frekuensi pada osilator.
Receiver terdiri dari transduser ultrasonik meng gunakan bahan piezoelektrik, yang berfungsi
sebagai penerima gelombang pantulan yang berasal dari transmitter yang dikenakan pada permukaan
suatu benda atau gelombang langsung LOS (Line of Sight) dari transmitter. Oleh karena bahan
piezoelektrik memiliki reaksi yang reversible, elemen keramik akan membang kitkan tegangan listrik
pada saat gelombang datang dengan frekuensi yang resonan dan akan menggetarkan bahan
piezoelektrik tersebut.
Cara menggunakan alat ini yaitu: ketika kita memberikan tegangan positif pada pin Trigger
selama 10uS, maka sensor akan mengirimkan 8 step sinyal ultrasonik dengan frekuensi 40kHz.
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
menentukanjarak benda tersebut.Rumus untuk menghitungnya sudah saya sampaikan di atas. Berikut
adalah visualisasi dari sinyal yang dikirimkan oleh sensor HC-SR04
9
Gambar 2.4.2. Sistem Pewaktu pada Sensor HC-SR04
Merupakan salah satu sensor ultrasonik yang dapat melakukan pengukuran jarak. Pengukuran
jarak yang dilakukan oleh sensor ini termasuk mutakhir, yaitu tidak menggunakan sistem kontak
langsung terhadap benda yang akan diukur jaraknya. Artinya modul HC-SR04 tidak secara langsung
menyentuh benda yang diukur, melainkan menggunakan gelombang ultrasonik untuk mengetahui jarak
benda yang akan diukur. Sensor ini sendiri memiliki spesifikasi pengukuran electric parameter sebagai
berikut;
Pemanfaatan teknologi saat ini sangat berpengaruh pada kehidupan manusia sehari-hari.
Mulai dari teknologi yang paling kecil sampai pada yang sangat canggih.
Prinsip kerja sensor ini adalah menggunakan pantulan gelombang ultrasonik untuk mengetahui
jarak yang akan diukur. Pada sensor ini, terdiri atas dua buah bagian, yaitu trigger dan echo. Trigger
berfungsi sebagai pemancar gelombang ultrasonik. Sinyal dipancarkan oleh pemancar ultrasonik
dengan frekuensi tertentu dan dengan waktu tertentu pula. Frekuensi yang digunakan oleh sensor ini
umumnya adalah 40 Hz. Sensor tersebut akan merambat pada kecepatan suara yakni 340 m/s hingga
mengenai benda yang akan diukur jaraknya. Apabila telah mengenai permukaan benda, maka sinyal
akan kembali dipatulkan dan diterima oleh echo. Echo sendiri adalah receiver pada sensor ini. Apabila
sinyal telah diterima oleh echo, maka sinyal selanjutnya diproses untuk menghitung jarak benda
tersebut.
Dalam sistem modul sensor ultrasonik, terdapat dua buah modul yakni transceiver dan receiver.
Transceiver berfungsi sebagai pengendali dan pemancar gelombang, ultrasonik terhadap benda yang
akan diukur jaraknya sedangkan receiver merupakan penerima sinyal pantul dari benda yang diukur
jaraknya. Keduanya menciptakan sitem pengukuran yang terstruktur, sehingga dapat aplikasikan dalam
sistem perancangan sebuah alat ukur jarak .
10
Gambar 2.4.3. Cara Kerja Sensor Ultrasonik
• Sinyal dipancarkan oleh pemancar ultrasonik dengan frekuensi tertentu dan dengan durasi
waktu tertentu. Sinyal tersebut berfrekuensi diatas 20kHz. Untuk mengukur jarak benda (sensor
jarak), frekuensi yang umum digunakan adalah 40kHz.
• Sinyal yang dipancarkan akan merambat sebagai gelombang bunyi dengan kecepatan sekitar
340 m/s. Ketika menumbuk suatu benda, maka sinyal tersebut akan dipantulkan oleh benda
tersebut.
• Setelah gelombang pantulan sampai di alat penerima, maka sinyal tersebut akan diproses untuk
menghitung jarak benda tersebut. Jarak benda dihitung berdasarkan rumus :
S = 340.t/2
Dimana S merupakan jarak antara sensor ultrasonik dengan benda (bidang pantul), dan
t adalah selisih antara waktu pemancaran gelombang oleh transmitter dan waktu ketika
gelombang pantul diterima receiver.
Untuk melakukan sebuah unjuk kerja, sensor ultrasonik tipe HC-SR04 harus dikonfigurasikan
menggunakan pin-pinnya.Dimana konfigurasi pinnya ditunjukkan pada tabel 2.1.di bawah ini
11
No.PIN Nama Fungsi dan Konfigurasi
Pin
Sensor ultrasonik adalah sensor yang bekerja berdasarkan prinsip pantulan gelombang suara
dan digunakan untuk mendeteksi keberadaan suatu objek tertentu di depannya, frekuensi kerjanya pada
daerah diatas gelombang suara dari 40 KHz hingga 400 KHz. Sensor ultrasonik terdiri dari dari dua
unit, yaitu unit pemancar dan unit penerima. Di dalam robotika, sensor sonar mempunyai tiga tujuan
yang berbeda, tetapi berhubungan,yaitu : Penghindaran rintangan (Obstacleavoidance), Pemetaan sonar
(Sonar Mapping) dan Pengenalan objek (Object recognition). Prinsip Kerja dari sensor ultrasonik yaitu,
sinyal dipancarkan oleh pemancar ultrasonik. Sinyal yang dipancarkan tersebut kemudian akan
merambat sebagai sinyal / gelombang bunyi dengan kecepatan bunyi yang berkisar 340 m/s. Setelah
sinyal tersebut sampai di penerima ultrasonik, kemudian sinyal tersebut akan diproses untuk
menghitung jaraknya. Sensor jarak ultrasonik ping adalah sensor 40 khz produksi parallax yang banyak
digunakan untuk aplikasi atau kontes robot cerdas. Sensor HC-SR04 adalah sensor ultrasonik yang
diproduksi oleh Devantech.Sensor ini merupakan sensor jarak yang presisi. Dapat melakukan
pengukuran jarak 2 cm sampai 4 meter dan sangat mudah untuk dihubungkan ke mikrokontroler
menggunakan sebuah pin input dan pin output. Banyak hal yang dapat kita lakukan untuk mengetahui
suatu besaran dalam listrik.salah satunya adalah melakukan pengukuran. Listrik merupakan elemen
elektron yang senantiasa bergerak dari satu potensial ke potensial lainnya (pada satu sumber arus
listrik).Pengukuran listrik ditujukan sebagai sarana analisis bagi sebagian orang serta sebagai acuan
ilmu pengetahuan bagi awam.Analisis tersebut berkaitan dengan tujuan bagi ilmu pengetahuan dan
teknologi, sehingga kebanyakan pengukuran dilakukan di bidang keteknikan dan ilmu pengetahuan
alam.Pengukuran yang baik biasanya dilakukan secara terstruktur, baik dari segi metodologi maupun
penerapan berbagai standar-standar yang berlaku. Pengukuran dalam bidang keilmuan biasanya
dilakukan di tempat tertentu, misalkan laboratorium. Percobaan kali ini akan membahas mengenai
mekanisme kerja dari multimeter. Selain itu, kita juga akan membahas lebih lanjut mengenai
sistematika pemasangan multimeter di berbagai sistem pengukuran besaran utama listrik. Fungsi listrik
disini adalah sebagai pembangkit sinyal pada sensor ultrasonik HC-SR04. Seperti spesifikasi sensor
yang telah tertera dalam datasheet sensor. Listrik yang digunakan adalah listrik searah atau direct
current.
12
2.5 SD Card
Secure Digital (SD) adalah sebuah format kartu memori flash. Kartu Secure Digital digunakan
dalam alat portabel, seperti PDA, kamera digital dan telepon genggam. Selain memiliki sistem
pengaman yang lebih bagus daripada MMC, SD Card juga bisa dengan mudah dibedakan dari MMC
karena memiliki ukuran yang lebih tebal dibanding kartu MMC standar.
Kartu SD standar memiliki ukuran 32 mm x 24 mm x 2,1 mm, tetapi ada beberapa kartu SD
yg setipis MMC (1.4 mm). Dalam perkembangannya, kartu SD diproduksi juga dalam dua variasi
ukuran yg lebih kecil, kedua varian tersebut dikenal dengan
nama MiniSDdan MicroSD atau TransFlash (T-Flash). Secara umum, kartu SD dibedakan dari
kecepatan transfer data yang tersedia, yaitu kecepatan biasa (150 KB/s) dan kecepatan tinggi. Beberapa
kamera digital memerlukan kartu yg berkecepatan-tinggi untuk merekam video secara lancar atau
menangkap gambar berturut-turut.
Alat yang dilengkapi dengan slot SD dapat menggunakan kartu MMC yang lebih tipis, tetapi
kartu SD standar tidak dapat digunakan ke slot kartu MMC yang lebih tipis. Kartu SD dapat digunakan
dalam slot CompactFlash atau kartu PC dengan sebuah adapter.
13
Gambar 2.6. Baterai 9 Volt.
Baterai sembilan volt, adalah ukuran umum baterai yang diperkenalkan untuk radio transistor
awal. Ini memiliki bentuk prisma persegi panjang dengan tepi bulat dan konektor jepret terpolarisasi di
bagian atas.
2.7 MP 3 Shield
Modul mp3 atau mp3 shield untuk arduino ini adalah sebuah modul yang mampu membuat
arduino kamu memutar file mp3 dengan perintah dari koding yang telah kita buat pada arduino. File
mp3 akan diputar sesuai dengan kondisi koding yang ada. ini berarti kamu dapat membuat banyak
project mikrokontroller yang outputnya menggunakan file mp3 sebagai reaksi dari fungsi yang telah
dilakukan. Beberapa project yang bisa dibuat diantaranya : jam berbicara, alarm jadwal sholat, bel
sekolah otomatis, mesin antrian sederhana dan masih banyak lagi.
2.8 Laser
Laser adalah singkatan dariLight Amplification by Stimulated Emission of Radiation atau
cahaya yang dikuatkan dari stimulus emisi/pancaran radiasi.Laser adalah sebuah alat yang
menghasilkan pancaran cahaya radiasi elektromagnetik yang koheren, intensitas tinggi, mudah
diarahkan, dan mempunyai lintasan lurus. Cahaya yang koheren berarti sinar-sinarnya menghasilkan
bukit dan lembah secara bersamaan setiap waktu (sama fasa). Pembentukan laser terjadi jika
14
suatu atom yang berada pada tingkat eksitasi disinari dengan foton tertentu yang sesuai sehingga
terangsang dan turun ke tingkat energi yang lebih rendah dengan memancarkan foton cahaya tertentu
pula. Cahaya radiasi ini bisa berasal dari sinar inframerah, cahaya tampak, atau ultraviolet.
Software Arduino sendiri merupakan tempat untuk memrogram kit Arduino sesuai dengan
kehendak yang kita mau. Bahasa pemrograman yang digunakan adalah bahasa pemrograman berbasis
C, artinya fungsi-fungsi dan karakteristik yang didekla rasikan didalam proses pemrograman Arduino
menggunakan metode yang sama dengan pendeklarasian bahasa C. Salah satu kemudahan yang
ditawarkan oleh kit Arduino Uno R3 adalah efisiensi dalam pem rograman, artinya kita tidak perlu
merasa susah dalam melakukan pemograman terhadap kit mikrokontroler tersebut. pada mikrokontroler
biasa (menggunakan chip tunggal) kita harus mengetahui pengalamatan masi ng-masing pin. Misalkan
kita akan memrogram chip ATMEGA tipe 32xx , maka secara harfiah kita juga harus tau fungsi masing-
masing pin dan juga pengalamatannya. Software arduino
1.6 adalah salah satu aplikasi compiler yang digunakan untuk pemrograman.
15
Gambar 2.9.Tampilan Awal Software Arduino 1. 6
Bahasa C adalah evolusi dari bahasa B yang dikembangkan oleh Dennis Ritchie, merupakan
general-purpose language, yaitu bahasa pe mrograman yang dapat digunakan unt uk tujuan apa saja.
Bahasa C mempunyai kemampuan lebih dari bahasa pemrograman lain. Banyak sekali aplikasi-aplikasi
yang dibangun dengan bahasa C, mulai dari pemrograman sistem, aplikasi cerdas ( artifical
intelligence), sistem, pakar, utility, driver, database, browser, network programming, sistem operasi,
game, virus, dan lainnya, bahkan Software Development Kit untuk Windows juga ditulis dalam bahasa
C.
Karena sifat bahasa pemrogramannya yang portable, yaitu dengan sedikit atau tanpa perubaha
n, suatu program yang ditulis dengan baha sa C pada suatu komputer dapat dijal ankan pada komputer
lain. Sebagai bahasa yang digolongkan dalam middle level language, perangkat keras, juga kecepatan
prosesnya yang mendekati low level language seperti Assembly, tetapi memberikan kemudahan yang
tidak ditawarkan Assembly. Disamping itu, bahasa C jauh lebih mudah untuk dipelajari jika
dibandingkan dengan bahasa low level karena mendekati frase-frase dalam bahasa manusia, yaitu
bahasa Inggris.
Namun ada pula beberapa kelemahan Bahasa C khususnya bagi pemula, kebanyakan
dikarenakan banyaknya operator dan fleksibilitas penulisan program kadang-kadang membingkungkan,
dan umumnya pemrogram Bahasa C tingkat pemula belum pernah mengenal pointer dan tidak terbiasa
menggunakannya. Pada pemrograman sistem pengukur jarak di Arduino, bahasa pemrograman yang
digunakan adalah bahasa C. sepertihalnya bahasa pemrograman lainnya, bahasa C memiliki struktur
bahasa tertentu, yang pasti ada dalam setiap tampilannya.
16
Struktur umum bahasa C adalah sebagai berikut. Terdapat #include<stdio.h>. Bagian ini
disebut preprocessor Directive, yang artinya bagian yang digunakan untuk mengikut-sertakan berkas-
berkas file header/library yang berisi fungsifungsi yang ada pada program yang akan dibuat pada baris-
baris bawahnya. File yang diikutsertkan bernama stdio.h yang terletak di suatu direktori pada instalasi
DevC++.
Pada baris selanjutnya int main ().merupakan judur fungsi utama program yang bernama fungsi
main () yang mengambilkan nilai berupa integer (bilangan bulat negatif ataupun positif ) mengenai data
integer akan dibahas di bagianbagian berikutnya. Fungsi main () adalah fungsi yang wajib ada di setiap
kode program yang ditulis menggunakan bahasa C. tanda { merupakan tanda awal program. Terdapat
printf("selamat datang di DevC++");. Hal ini merupakan perintah untuk menampilkan output di layar
monitor berupa tulisan" Selamat datang di DevC++" (tanpa tanda kutip).
Perintah untuk menampilkan tulisan ke layar disebut fungsi Printf () yagn menerimakan masuk
berupa kalimat yang ingin ditampilkan.Tanda titik koma harus selalu dituliskan untuk memberi.akhr
dari suatu baris perintah. pada baris berikutnya terdapat getch ();, digunakan untuk menghentikan layar
tampilan sejenak samapi pengguna menekan tombol yang ada pada keyboard. Jadi fungsinya adalah
menunggu penekanan tombol tertentu dan kemudian program akan mati (terminated) baris terakhir
berisi } yang merupakan akhir dari program.
- Karakter, Mengacu dari system standar kode internasional ANSI karakter yang dikenal didalam bahasa
C adalah karakter abjad/huruf, angka, dan simbol-simbol khusus.
- Keyword, Keyword adalah suatu kata yang memiliki makna dan fungsi tertentu, karena itu ia disebut
juga reserved word.
- Identifier, Identifier dapat dikatakan sebagai suatu tempat untuk menyimpan nilai. Identifier dapat
diberi nama unik dan bisa memiliki tipe data. Ia dibagi menjadi dua: Konstanta: nilainya tetap selama
program berjalan (dieksekusi),cara untuk mengubahnya hanya melalui source code saja. Variabel:
nilainya dapat berubah atau diubah selama program berjalan(dieksekusi).
- Tipe data, Merupakan pengelompokan data yang digunakan untuk merepresentasikan jenis sebuah
nilai yang terdapat pada program.
- Operator, Operator berkaitan erat dengan kata operasi. Operator ditandai dengan sebuah atau beberapa
simbol dan kata.
- Punctuator, Punctuator adalah simbol-simbol yang berkenaan sebagai tanda baca pada struktur
penulisan bahasa C.
#include
<stdio.h> int
Dari contoh diatas dapat disimpulkan bahwa struktur program bahasa C adalah:
17
- Adanya fungsi main. Suatu program C minimal harus memiliki function main(), tanpa function itu
maka program C tidak dapat dieksekusi tapi bisa dikompilasi.
- Lalu statement, Statement adalah suatu baris instruksi/perintah tertentu. Statement menyebabkan suatu
tindakan akan dilakukan oleh komputer.
- Preprosessor Directive adalah bagian yang berisi pengikutsertaan file atauberkas-berkas fungsi
maupun pendefinisian konstanta atau fungsi makro tertentu.
- Deklarasi variabel menyebabkan komputer menyediakan tempat yang diberi nama (identifier) a, bdan
cdengan ukuran integer (2 byte = 16 bit).
- printf akan membuat komputer mengirim teks yang berada dalam fungsi tersebut ke layar monitor,
sedangkan scanf membuat komputer menanti masukan dari pemakai melalui keyboard.
- Adanya proses. Pada program ini akan dikerjakan proses aritmatika, yaitu proses memberi nilai
(assignmentyang dipakai tanda “=”) variabel “c”dengan nilai yang ada dalam variabel “a”ditambah
nilai yang ada dalam variabel “b”.
- Yang terakhir adalah proses mencetak ke layar monitor dengan format yang sesuai.
- Selain function main(), dapat ditambahkan function lain.
- Jika function akan diletakkan disembarang tempat dari function main(), maka function tersebut harus
dideklarasikan terlebih dahulu sebelum function main()
18
BAB III
PRINSIP KERJA RANGKAIAN
Bab ini membahas prinsip kerja rangkaian yang disusun untuk merealisasikan sistem alat. Pada
rancang bangun ini sensor ultrasonik berfungsi sebagai pendeteksi jarak benda terhadap pengukur untuk
menentukan kapan speaker, LCD, harus bekerja dengan pusat perintah dari Arduino Uno. Adapun sistem
alat yang dibuat dan dirancang sesuai blok diagram yang dibuat berdasarkan pemikiran penulis mengacu
pada sumber acuan yang berhubungan dengan alat, khususnya pada meteran berbasiskan Arduino Uno R3
Kit.
BATERAI
DISPLAY
LCD
SENSOR ARDUINOUNO
TX RX
ULTRASONIK
OUTPUT
SUARA
19
3.1 Prinsip Kerja
Prinsip kerja pada diagram blok diatas menggambarkan cara kerja dari sensor ultrasonik
sebagai alat kendali Pengukur jarak pada, LCD, speaker, catu daya, dan program Arduino genuine
yang digunakan dalam pembuatan software.
3.1.1 Cara Kerja Sensor Ultrasonik Pengukur Jarak, LCD, dan Buzzer
Fungsi dari sensor ultrasonik tersebut adalah sebagai pengontrol alat, dimana dengan
sensor ultrasonicinilah meteran otomatis dapat bekerja. Prinsipnya cukup mudah dimana ketika
sensor ultrasonik mendeteksi jarak secara bersamaan LCD akan menampilkan jarak yang
terbaca, dan Speaker berbunyi. Berikut adalah logika listing softwarenya,
//==========Library Arduino==========
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <SPI.h>
#include <Adafruit_VS1053.h>
#include <SD.h>
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2); //Definisi alamat I2C LCD
//==========Definisi PIN==========
#define trig A0
#define echo A1
#define pin_sw1 A2
#define sw1 !digitalRead(pin_sw1)
//==========Variabel Data==========
int a = 40;
char buf [16];
long durasi, jarak;
Adafruit_VS1053_FilePlayer musicPlayer =
// create breakout-example object!
Adafruit_VS1053_FilePlayer(BREAKOUT_RESET, BREAKOUT_CS,
BREAKOUT_DCS, DREQ, CARDCS);
// create shield-example object!
//Adafruit_VS1053_FilePlayer(SHIELD_CS, SHIELD_DCS, DREQ, CARDCS);
//==========Inisialisasi==========
20
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("Adafruit VS1053 Simple Test");
// Set volume for left, right channels. lower numbers == louder volume!
musicPlayer.setVolume(50, 50);
void loop() {
// put your main code here, to run repeatedly:
cek(); //SUb Program Ultrasonic
if (jarak >= 380) {
jarak = 380;
}
lcd.setCursor(0, 0);
lcd.print(" PENGUKURAN ");
// lcd.setCursor(5, 1);
// lcd.print(jarak);
// lcd.setCursor(10, 1);
21
// lcd.print("Cm");
sprintf(buf, " %03d cm ", jarak);
lcd.setCursor(3, 1); lcd.print(buf);
if (sw1) {
Serial.println("hampir");
while (1) {
Serial.println("Bunyi");
lcd.setCursor(0, 0);
lcd.print(" PENGUKURAN ");
//lcd.setCursor(5, 1);
if (jarak >= 380) {
jarak = 380;
}
//lcd.print(jarak);
//lcd.setCursor(5, 1);
sprintf(buf, " %03d cm ", jarak);
lcd.setCursor(3, 1); lcd.print(buf);
//lcd.print("Cm");
suara(jarak);
delay(40);
musicPlayer.playFullFile("cm.mp3");
delay(80);
lcd.clear();
break;
}
}
}
void cek() { //Cek
// pinMode(trig, OUTPUT); //Memberi Triger semala 8 Microsecond
digitalWrite(trig, LOW);
delayMicroseconds(8);
digitalWrite(trig, HIGH);
delayMicroseconds(8);
digitalWrite(trig, LOW);
delayMicroseconds(8);
22
void puluhan(int angka) {
int temp1, temp2;
temp1 = angka / 10; temp2 = angka % 10;
switch (temp1) {
case 1: {
if (temp2 == 0) {
musicPlayer.playFullFile("10.mp3"); delay(a); break;
}
else if (temp2 == 1) {
musicPlayer.playFullFile("11.mp3"); delay(a); break;
}
else if (temp2 == 2) {
musicPlayer.playFullFile("12.mp3"); delay(a); break;
}
else if (temp2 == 3) {
musicPlayer.playFullFile("13.mp3"); delay(a); break;
}
else if (temp2 == 4) {
musicPlayer.playFullFile("14.mp3"); delay(a); break;
}
else if (temp2 == 5) {
musicPlayer.playFullFile("15.mp3"); delay(a); break;
}
else if (temp2 == 6) {
musicPlayer.playFullFile("16.mp3"); delay(a); break;
}
else if (temp2 == 7) {
musicPlayer.playFullFile("17.mp3"); delay(a); break;
}
else if (temp2 == 8) {
musicPlayer.playFullFile("18.mp3"); delay(a); break;
}
else if (temp2 == 9) {
musicPlayer.playFullFile("19.mp3"); delay(a); break;
}
}
case 2: musicPlayer.playFullFile("20.mp3"); delay(a); break;
case 3: musicPlayer.playFullFile("30.mp3"); delay(a); break;
case 4: musicPlayer.playFullFile("40.mp3"); delay(a); break;
case 5: musicPlayer.playFullFile("50.mp3"); delay(a); break;
case 6: musicPlayer.playFullFile("60.mp3"); delay(a); break;
case 7: musicPlayer.playFullFile("70.mp3"); delay(a); break;
case 8: musicPlayer.playFullFile("80.mp3"); delay(a); break;
case 9: musicPlayer.playFullFile("90.mp3"); delay(a); break;
}
if (temp2 > 0 && angka > 19)satuan(temp2);
}
23
case 9: musicPlayer.playFullFile("9.mp3"); delay(a); break;
case 8: musicPlayer.playFullFile("8.mp3"); delay(a); break;
case 7: musicPlayer.playFullFile("7.mp3"); delay(a); break;
case 6: musicPlayer.playFullFile("6.mp3"); delay(a); break;
case 5: musicPlayer.playFullFile("5.mp3"); delay(a); break;
case 4: musicPlayer.playFullFile("4.mp3"); delay(a); break;
case 3: musicPlayer.playFullFile("3.mp3"); delay(a); break;
case 2: musicPlayer.playFullFile("2.mp3"); delay(a); break;
case 1: musicPlayer.playFullFile("1.mp3"); delay(a); break;
}
}
24
17 Terbaca Nyala bekerja
70 Terbaca Nyala bekerja
200 Terbaca Nyala bekerja
400 Menampilan Nyala bekerja
batas maks
380
Proses yang terjadi pada arduino uno adalah jika sensor mendeteksi jarak maka secara
bersamaan LCD menampilkan jarak yang terbaca, dan Speaker berbunyi.
25
FLOWCHART
I
ya
T
idak
I
ya
T I
idak ya
I
ya
I
ya
T I
idak ya
I
ya
I
ya
26
Program diawali dengan start yang berarti sistem akan mulai bekerja dengan menekan tombol
ON/OFF, kemudian alat akan menentukan titik yang akan diukur jaraknya dengan bantuan laser
penunujuk, Setelah itu sensor ultrasonik bekerja untuk mengukur jarak yang diinginkan sesuai titik
yang telah ditentukan, pada tampilan layar lcd terdapat pengukuran yang belum pasti, lalu setelah
semua siap dan sensor ultrasonik telah mengukur jaraknya dengan tepat maka tekan tombol lock merah
agar hasil muncul di layar lcd dengan pasti dan mengeluarkan output suara berupa hasil pengukuran
tersebut. Bila hasil tidak pasti atau terjadi kesalahan, langkah selanjutnya sistem akan mengulang proses
pengukuran dengan menekan ulang tombol lock kembali pada alat tersebut agar hasil yang telah
terkunci bisa tereset kembali. Setelah itu, jarak yang telah terukur dan pembacaan oleh sistem berhasil
akan menghasilkan output nilai angka pada lcd dengan angka yang pasti dan juga ouput suara dan akhiri
program.
Jika saklar ON/OFF ditekan, sistem pada alat pengukur sensor ultrasonik akan mulai bekerja
dengan mendeteksi adanya benda dan mengukur jarak yang ada di depan sensor ultrasonik dengan batas
maksimal pengukuran 480 cm, yang berarti terjadi proses deteksi pengukuran jarak oleh sensor
ultrasonik, pengukuran jarak kemudian akan dikirimkan menuju arduino uno yang akan mengolah data
lebih lanjut.
Adruino uno mengolah data yang diterima dari rangkaian sensor ultrasonik untuk dilakukan
konversi dari satuan meteryang didapatkan oleh sensor ultrasonik menjadi satuan centimeter. Pada
adruino uno satuan centimeter yang diperoleh akan dikonversi menjadi data biner yang memiliki
address berbeda-beda yang akan menjadi keluaran berupa suara yang mengindikasikan jarak yang
diukur. Bila tidak terdeteksi adanya benda sistem kembali ke kondisi awal.
27
BAB IV
PEMBUATAN BENDA KERJA
Hasil rancangan telah dibuat, selanjutnya direalisasikan dalam bentuk benda kerja yang siap
dioperasikan. Proses pembautan benda kerja dari proyek akhir ini meliputi tiga bagian, yaitu:
Dalam pembuatan benda kerja pada tugas akhir ini secara keseluruhan digunakan alat-alat dan bahan
sebagai berikut:
Daftar Komponen
a. Arduino Uno R3 Kit
b. MP3 Shield
c. Sensor ultrasonik
d. Speaker
e. Laser
f. Protoboard
g. Bateraib 9v
h. Kabel jumper
i. SD Card
j. LCD
k. Push Button
l. Saklar
m. Minimum system
28
4.2 Bagian Elektronik
a. Perancangan rangkaian
b. Pemasangan komponen
Perancangan rangkaian digunakan untuk mendapatkan hasil yang optimal sesuai dengan yang
diinginkan. Dalam perancangan ini langkah-langkah yang dilakukan meliputi jalur rangkaian
yang akan dibuat, skema rangkaian dan komponen yang akan digunakan.
29
4.3 Bagian Mekanik
Proses pembuatan mekanik meliputi proses pembuatan bentuk benda kerja yang berupa suatu
alat teknologi. Alat tersebut dibuat dari box (plastic) ukuran 15 x 9.5 x 5 cm. Lalu memberi lubang
pada box sesuai ukuran komponen yang harus ada diluar box seperti sensor ultrasonic, push button,
dan saklar.Setelah itu dirangkai semua komponen yang berada di dalam box, seperti kabel, arduino,
mp3 shield, dan baterai.Kemudian bagian badan disatukan dengan tutup menggukakan mur. Desain
yang dibuat adalah berupa suatu alat yang berbentuk balok yang semua bagian nya terbuat dari
plastic.
Perangkat lunak yang digunakan pada rancang bangun ini adalah Arduino Genuino Setelah
program selesai dibuat, akan dilakukan compling dari bahasa pemograman yang mirip dengan bahasa
pemrograman C++ yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino.
Dalam pembuatan tugas akhir ini penggunaan perangkat lunak sangat penting mengingat
perangkat lunak digunakan sebagai pengatur keseluruhan kerja sistem baik perangkat keras maupun
perangkat lunak itu sendiri. Langkah-langkah pembuatan program adalah sebagai berikut:
a. Membuat diagram alir (flowchart) dari program yang akan dibuat.
b. Membuat program dengan referensi diagram alir.
c. Mengkompilasi program yang telah dibuat hingga tidak terjadi kesalahan.
d. Pengisian progam pada hardware yang telah dibuat
BAB V
30
PENUTUP
5.1 Kesimpulan
5.1.1 Melalui data yang didapatkan, hasil pengujian pada masing-masing jarak pengukuran adalah
sebagai berikut ;
- Jarak 30 cm kesalahannya adalah 0,13 %
- Jarak 60 cm kesalahannya adalah 0,23 %
- Jarak 90 cm kesalahannya adalah 0.01 %
5.1.2 Dari data di atas dapat dianalisis bahwasannya kesalahan hasil ukur akan semakin tinggi
apabila jarak benda yang diukur semakin jauh. Hal ini dapat dimungkinkan karena luas area
pengukuran tidak lebih dari 0.5 meter persegi.
5.1.3 Pada prinsip kerja sensor ultrasonic HRC-04, Analog signal transmission to trigger dan
Analog signal Tranmision from the thing to the echo adalah proses pengiriman sinyal analog
sensor kepada benda yang akan diukur, lalu sinyal dipantulkan kembal, sehingga sensor akan
memerlukan waktu yang cukup lama agar dapat bekerja dengan baik.
5.2 Saran
1. Pada saat melakukan percobaan disarankan menunggu beberapa detik agar sensor ultrasonic dapat
bekerja lebih maksimal.
2. Pada saat ingin melakukan percobaan kita harus memperhatikan baterai yang kita gunakan supaya
alat tersebut dapat bekerja secara optimal.
3. Pada saat melakuan percobaan agar mistar yang dipakai adalah mistar yang memenuhi syarat
teknis untuk melakukan suatu pengukuran.
31