Anda di halaman 1dari 57

RANCANG BANGUN ALAT UKUR VOLUME AIR PADA

WADAH MENGGUNAKAN SENSOR ULTRASONIK HC-SR04


BERBASIS ARDUINO

TUGAS AKHIR

JOSUA ARDIANSYAH
142411080

PROGRAM STUDI D3 METROLOGI DAN INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2018

UNIVERSITAS SUMATERA UTARA


RANCANG BANGUN ALAT UKUR VOLUME AIR PADA
WADAH MENGGUNAKAN SENSOR ULTRASONIK HC-SR04
BERBASIS ARDUINO

TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ahli


Madya

JOSUA ARDIANSYAH

142411080

PROGRAM STUDI D3 METROLOGI DAN INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2018

UNIVERSITAS SUMATERA UTARA


PERSETUJUAN

Judul : Rancang Bangun Alat Ukur Volume Air Pada


Wadah Menggunakan Sensor Ultrasonik HC-SR04
Berbasis Arduino
Kategori : Tugas Akhir
Nama : Josua Ardiansyah
NIM : 142411080
Program Studi : Diploma (D3) Metrologi dan Instrumentasi
Departemen : Fisika
Fakultas : Matematika Dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara

Disetujui di
Medan, Februari 2018

Program Studi D3 Metrologi dan


Instrumentasi FMIPA USU
Ketua, Pembimbing,

Dr. Diana Alemin Barus, M.Sc Dr. Diana Alemin Barus, M.Sc
NIP. 196607291992032002 NIP. 196607291992032002

UNIVERSITAS SUMATERA UTARA


PERNYATAAN

RANCANG BANGUN ALAT UKUR VOLUME AIR PADA


WADAH MENGGUNAKAN SENSOR ULTRASONIK HC-SR04
BERBASIS ARDUINO

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri. Kecuali
beberapa kutipan dan ringkasan yang masing masing di sebutkan sumbernya.

Medan, Februari 2018

Josua Ardiansyah
142411080

UNIVERSITAS SUMATERA UTARA


PENGHARGAAN

Puji dan syukur bagi Tuhan Yang Maha Esa yang telah menganugerahkan

kemudahan serta kelancaran sehingga penulis dapat menyelesaikan penulisan

Tugas Akhir ini sesuai waktu yang telah ditetapkan yang merupakan salah satu

syarat dalam mencapai gelar Ahli Madya pada Program Studi D-III Metrologi

Dan Instrumentasi.

Demi kelancaran dalam penyelasaian laporan Tugas Akhir ini tidak

terlepas dari bantuan berbagai pihak terutama kepada orang tua yang telah

memberikan support dan doa yang begitu besar kepada penulis.

Tugas Akhir ini disusun untuk melengkapi persyaratan dalam mencapai

gelar Ahli Madya pada Program Studi Diploma Tiga (III) Metrologi Dan

Instrumentasi Departemen Fisika Fakultas Matematika dan Ilmu Pengetahuan

Alam Universitas Sumatera Utara. Adapun judul Tugas Akhir ini adalah :

RANCANG BANGUN ALAT UKUR VOLUME AIR PADA WADAH

MENGGUNAKAN SENSOR ULTRASONIK HC-SR04 BERBASIS

ARDUINO

Penulis menyadari bahwa tersusunnya Tugas Akhir ini dari Doa,

perhatian, bimbingan, motivasi dan dukungan berbagai pihak, sehingga dengan

keikhlasan dan kerendahan hati pada kesempatan ini penulis mengucapkan terima

kasih yang sebesar-besarnya kepada :

1. Tuhan Yang Maha Esa atas berkat, kasih dan karunia-Nya kepada penulis
dalam menyelesaikan Tugas Akhir ini.
2. Yth. Bapak Dr. Krista Sebayang, MS selaku Dekan Fakultas Matematika
dan Ilmu Pengetahuan Alam Universitas Sumatera Utara.

UNIVERSITAS SUMATERA UTARA


3. Ibu Dr. Diana Alemin Barus, M.Sc, selaku Ketua Program Studi D-III
Metrologi dan Instrumentasi Fakultas Matematika dan Ilmu Pengetahuan
Alam Universitas Sumatera Utara dan juga selaku Dosen Pembimbing
penulis dalam penyelesaian Tugas Akhir ini.
4. Bapak Junedi Ginting, S.Si, M.Si selaku Dosen Penguji penulis dalam
penyelesaian Tugas Akhir ini.
5. Seluruh Dosen Program Studi Diploma Tiga (III) Metrologi dan
Instrumentasi Departemen Fisika Fakultas Matematika dan Ilmu
Pengetahuan Alam Universitas Sumatera Utara.
6. Seluruh Rekan-rekan Jurusan D3 Metrologi dan Instrumentasi terutama
Stambuk 2014 yang telah mendukung dan membantu penulis dalam
menyelesaikan Tugas Akhir ini.
7. Bang Tommy, kak Juliana dan beserta pengurus anggota UKM Robotik
SIKONEK Universitas Sumatera Utara.
8. Dan semua pihak yang telah membantu penulis namun tidak dapat
disebutkan satu per satu.
Penulis menyadari sepenuhnya bahwa dalam pembuatan Tugas Akhir ini

masih jauh dari kesempurnaan. Untuk itu penulis mengharapkan kritik dan saran

dari pembaca yang bersifat membangun dalam penyempurnaan Tugas Akhir ini.

Semoga laporan Tugas Akhir ini dapat memberikan hal yang bermanfaat
dan menambah wawasan bagi pembaca dan khususnya bagi penulis.

Medan, Februari 2018

Penulis

Josua Ardiansyah

UNIVERSITAS SUMATERA UTARA


RANCANG BANGUN ALAT UKUR VOLUME AIR PADA
WADAH MENGGUNAKAN SENSOR ULTRASONIK HC-SR04
BERBASIS ARDUINO

ABSTRAK

Air adalah kebutuhan yang sangat penting, ketersediaan air tetap harus selalu
ada baik di rumah tangga, perkantoran, tempat-tempat umum ataupun industri. Ini
menyebabkan peran penampung air menjadi penting untuk menjamin ketersediaan
air secara pasti. Mekanisme pengukur ketinggian permukaan air secara otomatis
diperlukan untuk menjaga ketersedian air ini. Salah satunya dengan membuat
sensor pengukur ketinggian air yang diumpanbalikkan dengan pompa pengisi bak
penampung air tersebut. Resistor variable tipe trimer potensiometer (trimpot)
multiturn dapat dipakai sebagai elemen sensor dimana perubahan ketinggian air
akan memutar knob atau trimer resistor variable. Ini akan menghasilkan
perubahan tegangan yang merupakan masukan analog bagi ADC 8 bit tipe 0804.
Keluaran atau output digital dari ADC akan dimasukkan ke port mikrokontroler
AT89S52 yang selanjutnya diolah untuk ditampilkan berupa ketinggian air dan
kondisi pompa air pada display LCD 16 x 2 tipe M1632. Rangkaian ini juga
dilengkapi dengan pompa air yang hidup matinya diatur dari mikrokontroler yaitu
pompa akan mati jika wadah penampung hampir penuh dan hidup kembali saat
wadah penampung hampir kosong. Hasil pengujian peralatan ini menunjukkan
bahwa peralatan ini sudah mampu menunjukkan ketinggian air pada suatu wadah
penampung berupa display LCD yang sama dengan keadaan sebenarnya seperti
yang ditunjukkan pada mistar
Kata Kunci : Sensor HC-SR04, Mikrokontroler, dan LCD

UNIVERSITAS SUMATERA UTARA


THE DESIGN OF WATER VOLUME ON THE CONTAINER
USING HC-SR04 ULTRASONIC SENSOR BASED ARDUINO

ABSTRACT

Water is an important requirement in human living, availability of water


should always be well fixed in households, offices, public facilities or industries.
This led to the role of water storage to be important to ensure the availability of
water every time Mechanisms measuring water levels are automatically required
to keep availability of this water. One of them is by making the water level
sensors are fed back to the water pump filling the water tank. Variable resistor
that is the type trimer potentiometer (trimpot) multiturn can be used as a sensor
element which changes the height of the water will turn a knob or trimer variable
resistor. This will produce a voltage change which is the analog input to the ADC
8 bit 0804 type. Digital output of the ADC will be entered into the port of
AT89S52 microcontroller is further processed to appear as the water levels and
conditions of the water pump on a 16x2 LCD display type M1632. The circuit is
also equipped with a water pump life and death of the microcontroller is set to die
if the pump tank is almost full and alive again when tank is almost empty. The
results of equipment testing demonstrates that this equipment has been able to
show the height of water in a storage tank of LCD displays with the same actual
situation as been shown in the bar.
Keywords : Sensor HC-SR04, Microcontroller, and LCD

UNIVERSITAS SUMATERA UTARA


DAFTAR ISI

Persetujuan ........................................................................................................... i
Pernyataan ............................................................................................................ ii
Penghargaan ......................................................................................................... iii
Abstrak ................................................................................................................. v
Abstract ................................................................................................................ vi
Daftar isi ............................................................................................................... vii
Daftar Gambar ...................................................................................................... ix
Daftar Tabel .......................................................................................................... x

BAB I PENDAHULUAN
1.1. Latar Belakang Masalah ....................................................... 1
1.2. Rumusan Masalah ................................................................ 1
1.3. Batasan Masalah .................................................................... 2
1.4. Tujuan Penulisan .................................................................. 2
1.5. Sistematika Penulisan ........................................................... 2

BAB II LANDASAN TEORI


2.1. Pengertian Umum Tentang Air ............................................ 4
2.2. Mikrokontroler .................................................................... 5
2.3. Arduino Uno ......................................................................... 5
2.3.1. Skema dan Refrensi Desain ....................................... 7
2.1.2. Daya ........................................................................... 8
2.1.3. Memori ...................................................................... 9
2.1.4. Input Dan Output ....................................................... 9
2.1.5. Komunikasi ................................................................ 10
2.4. Sensor Ultrasonik HC-SR04 ............................................... 10
2.5. Liquid Crystal Display (LCD) ............................................. 11
2.5.1. Cara Kerja LCD Secara Umum .................................. 13
2.6. Pemrograman Bahasa C ......................................................... 14
2.6.1. Struktur Bahasa C ....................................................... 15

UNIVERSITAS SUMATERA UTARA


2.6.2. Pengenal ..................................................................... 15
2.6.3. Tipe Data .................................................................... 16
2.6.4. Konstanta dan Variable .............................................. 18
2.6.5. Identifikasi .................................................................. 18
2.7. Trimpot ................................................................................. 18
2.8. Buzzer .................................................................................. 19

BAB III PERANCANGAN ALAT DAN PEMBUATAN SISTEM


3.1. Perancangan Sistem ............................................................. 20
3.1.1. Prinsip Kerja Alat ...................................................... 20
3.1.2. Cara Kerja Alat .......................................................... 21
3.2. Perancangan Rangkaian Minimum Sistem .......................... 21
3.2.1. Sensor HC-SR04 ........................................................ 21
3.2.2. Mikrokontroler Arduino Uno ..................................... 21
3.2.3. Rangkaian Liquid Crystal Display (LCD) ................. 22
3.3. Prosedur Percobaan ............................................................. 22
3.4. Perancangan Rangkaian Keseluruhan ................................. 23
3.5. Diagram Alir Program ......................................................... 24

BAB IV HASIL DAN PEMBAHASAN


4.1. Hasil Pengujian Alat ............................................................ 25
4.2. Analisa Data ........................................................................... 26

BAB V PENUTUP
5.1. Kesimpulan .......................................................................... 27
5.2. Saran .................................................................................... 27

DAFTAR PUSTAKA ........................................................................................ 28


LAMPIRAN

UNIVERSITAS SUMATERA UTARA


DAFTAR GAMBAR

Gambar 2.1. Mikrokontroler ............................................................................... 5


Gambar 2.2. Bentuk Mikrokontroler Arduino Uno ............................................. 6
Gambar 2.3. Sensor Ultrasonik HC-SR04 ........................................................... 11
Gambar 2.4. Sistem Pewaktu Pada Sensor HC-SR04 .......................................... 11
Gambar 2.5. Bentuk Fisik LCD ........................................................................... 12
Gambar 2.6. Bentuk Fisik Trimpot ..................................................................... 19
Gambar 2.7. Bentuk Fisik Buzzer ....................................................................... 19
Gambar 3.1. Konsep Dasar Sistem ...................................................................... 20
Gambar 3.2. Rangkaian Sensor HC-SR04 .......................................................... 21
Gambar 3.3. Rangkaian Arduino Uno ................................................................. 22
Gambar 3.4. Rangkaian Skematik Konektor Mikrokontroler ............................. 22
Gambar 3.5. Rangkaian Skematik Keseluruhan .................................................. 23
Gambar 3.6. Rangkaian ARES ............................................................................ 23
Gambar 3.7. Diagram Alir Program .................................................................... 24

UNIVERSITAS SUMATERA UTARA


DAFTAR TABEL

Tabel 2.1. Spesifikasi Arduino Uno .................................................................... 7


Tabel 2.2. Pin-pin Konfigurasi pada Liquid Crystal Display (LCD) .................. 12
Tabel 2.3. Tipe Data Pada Bahasa C ................................................................... 17
Tabel 4.1. Data Pengujian Air Dalam Wadah ..................................................... 25

UNIVERSITAS SUMATERA UTARA


BAB I

PENDAHULUAN

1.1. Latar Belakang


Air Adalah kebutuhan yang penting, sehingga ketersediaan air tetap harus
selalu ada baik di rumah tangga, tempat umum, perkantoran ataupun industri. Ini
menyebabkan peran penampung air menjadi penting dan diperlukan suatu
mekanisme pengukuran untuk mengetahui ketersedian air pada wadah tersebut.
Seringkali mekanisme tersebut masih berupa cara-cara manual, misalnya dengan
mendatangi, melihat atau melakukan pengukuran langsung pada tempat
penampung air tersebut. Cara ini merupakan cara yang gampang dan murah,
tetapi akan sedikit sulit jika misalnya letak penampungan air tersebut jauh dan
sulit dijangkau, misalnya di puncak bangunan atau di tebing sungai. Untuk
mengatasi keadaan ini diperlukan peralatan pengukur ketinggian air secara
otomatis, misalnya dengan membuat semacam peralatan pengukur ketinggian air
memakai pelampung, display digital dan pompa air dengan pengendalian secara
otomatis dari mikrokontroler. Resistor variable tipe trimmer potensiometer
multiturn side adjust dapat dipakai memutar wiper atau trimer resistor variable
ini. Putaran pada wiper ini akan menghasilkan perubahan tegangan yang
merupakan masukan analog bagi ADC 8 bit tipe 0804. Keluaran atau output
digital dari ADC akan dimasukkan ke port mikrokontroler arduino UNO yang
selanjutnya diolah untuk ditampilkan berupa ketinggian air display LCD 16 x 2
tipe M1632. Peralatan yang terealisasi telah bisa membantu mengetahui
ketinggian air atau zat cair lainnya lebih mudah dan cepat berupa tampilan pada
LCD. Dari sini kita bisa mengatur pemanfaatan air sehingga bisa lebih efisien dan
lebih tahu penggunaan yang secukupnya.

1.2. Rumusan Masalah


Berdasarkan uraian diatas, penulis tertarik untuk membuat RANCANG
BANGUN ALAT UKUR VOLUME AIR PADA WADAH MENGGUNAKAN
SENSOR ULTRASONIK HC-SR04 BERBASIS ARDUINO

UNIVERSITAS SUMATERA UTARA


UNO sebagai otak dari sistem yaitu mengkonfersi data analog kedata digital.

1.3. Batasan Masalah


Penulis membuat alat ukur ketinggian air digital dengan menggunakan sensor
HC-SR04 berbasis ARDUINO UNO dengan batasan-batasan sebagai berikut :
1. Mikrokontroler yang digunakan adalah Arduino uno
2. Sensor yang digunakan untuk menghitung volume air pada suatu wadah
yaitu sensor HC-SR04.
3. Pengujian alat hanya menggunakan media air dan zat cair lainnya.

1.4. Tujuan Penulisan


Adapun tujuan penulisan dilakukan dalam tugas akhir ini adalah sebagai
berikut :
1. Merancang alat ukur volume air.
2. Mengembangkan sistem pengukuran jarak menjadi pengukuran volume air
berbasis arduino uno menggunakan sensor HC-SR04.

1.5. Sistematika Penulisan


Untuk mempermudah pembahasan dan pemahaman maka penulis membuat
sistematika pembahasan bagaimana sebenarnya prinsip kerja alat ukur digital
dengan menggunakan sensor HC-SR04 berbasis Arduino uno maka penulis
menulis laporan ini sebagai berikut :

BAB I PENDAHULUAN
Pada bab ini berisikan mengenai latar belakang, rumusan masalah,
Tujuan penulisan, batasan masalah, serta sistematika penulisan.

BAB II LANDASAN TEORI


Bab ini berisi tentang tiori dasar yang digunakan sebagai bahan
acuan proyek tugas akhir, serta komponen yang perlu diketahui
untuk mempermudah dalam memahami sistem kerja alat ini.

UNIVERSITAS SUMATERA UTARA


BAB III PERANCANGAN ALAT DAN PEMBUATAN SISTEM
Pada bagian ini akan dibahas perancangan dari alat, yaitu diagram
blok dari rangkaian, skematik dari masing-masing rangkaian dan
diagram alir dari program yang akan diisikan ke Arduino uno.

BAB IV HASIL DAN PEMBAHASAN


Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem
kerja alat, penjelasan mengenai program-program yang digunakan
untuk mengaktifkan rangkaian, penjelasan mengenai program yang
diisikan ke Arduino uno.

BAB V PENUTUP
Bab ini merupakan penutup yang meliputi tentang kesimpulan dari
pembahasan yang dilakukan dari tugas akhir ini serta saran apakah
rangkaian ini dapat dibuat lebih efisien dan dikembangkan
perakitannya pada suatu metode lain yang mempunyai sistem kerja
yang sama.

UNIVERSITAS SUMATERA UTARA


BAB II

LANDASAN TEORI

2.1. Pengertian Umum Tentang Air


Air sangat erat hubungannya dengan kehidupan manusia, air merupakan
suatu sarana utama untuk meningkatkan derajat kesehatan masyarakat, karena air
merupakan salah satu media dari berbagai macam penularan penyakit, terutama
penyakit perut.
Peningkatan kuantitas air adalah syarat kedua setelah kualitas, karena
semakin maju tingkat hidup seseorang, maka akan semakin tinggi pula tingkat
kebutuhan air dari masyarakat tersebut. Untuk keperluan minum maka
dibutuhkan air rata-rata sebesar 5 liter/hari, sedangkan secara keseluruhan
kebutuhan air di suatu rumah tangga untuk masyarakat Indonesia diperlukan
sekitar 60 liter/hari. Jadi untuk negara-negara yang sudah maju kebutuhan air
pasti lebih besar dari kebutuhan untuk negara-negara yang sedang berkembang.
Dengan pertumbuhan penduduk yang pesat, sumber-sumber air telah
menjadi salah satu kekayaan yang sangat penting. Air tidak hanya menjadi hal
pokok bagi konsumsi dan sanitasi umat manusia, tapi juga untuk produksi
barang industri. Air tersebar tidak merata diatas bumi, sehingga ketersediaannya
disuatu tempat akan sangat bervariasi.
Perencanaan yang didasarkan keahlian serta pengolahan yang seksama
merupakan hal yang penting untuk mencapai tingkat efisiensi pemanfaatan air
yang akan dibutuhkan di masa yang akan datang. Walaupun demikian, usaha-
usaha ini haruslah mempunyai lingkup yang lebih luas. Investasi dalam
pengembangan sumber daya air dipengaruhi oleh pertimbangan-pertimbangan
ekonomi, sosial dan politis serta kenyataan-kenyataan teknik dasar.
Air merupakan salah satu sumber daya alam yang memiliki fungsi yang
sangat vital bagi kehidupan makhluk hidup yang ada di muka bumi. Untuk itu
air perlu dilindungi agar dapat tetap bermanfaat bagi kehidupan manusia serta
makhluk hidup lainnya. Pengertian tersebut menunjukkan bahwa air memiliki
peran yang sangat strategis dan harus tetap tersedia dan lestari, sehingga

UNIVERSITAS SUMATERA UTARA


mampu mendukung kehidupan dan pelaksanaan pembangunan di masa kini
maupun di masa mendatang.

2.2. Mikrokontroler
Mikrokontroler adalah sebuah sistem komputer fungsional dalam sebuah
chip, didalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM,
memori program atau keduanya), dan perlengkapan input output.
Dengan kata lain mikrokontroler adalah suatu alat elektronika digital yang
mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis
atau dihapus dengan khusus, cara kerja mikrokontroler sebenarnya membaca dan
menulis data. Mikrokontroler merupakan computer didalam chip yang digunakan
mengontrol peralatan elektronika, yang menekan effisiensi dan efektifitas biaya,
secara harfiahnya bisa disebut pengendali kecil dimana sebuah sistem elektronika
yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti
IC, TTL, dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta
dikendalikan oleh mikrokontroler.

Gambar 2.1. Mikrokontroler

2.3. Arduino Uno


Arduino Uno adalah sebuah board mikrokontroler yang didasarkan pada
ATmega328 (datasheet). Arduino UNO mempunyai 14 pin digital input/output (6
diantaranya dapat digunakan sebagai output Pulse-Width Modulation), 6 input
analog, sebuah osilator Kristal 16 MHz, sebuah koneksi USB, sebuah power jack,
sebuah ICSP header, dan sebuat tombol reset. Arduino UNO memuat semua yang
dibutuhkan untuk menunjang mikrokontroler, mudah menghubungkannya ke
sebuah komputer dengan sebuah kabel USB atau mensuplainya dengan sebuah
adaptor AC ke DC atau menggunakan baterai untuk memulainya.

UNIVERSITAS SUMATERA UTARA


Gambar 2.2 . Bentuk Mikrokontroler Arduino Uno

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 kedua ini merupakan sebuah pin yang tak terhubung,
yang disediakan untuk tujuan kedepannya.
 Sirkit RESET yang lebih kuat.
 Atmega 16U2 menggantikan 8U2.

“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, lihat indeks dari
board Arduino.

UNIVERSITAS SUMATERA UTARA


Tabel 2.1. Spesifikasi Arduino Uno
Mikrokontroler ATmega328
Tegangan pengoperasian 5V
Tegangan input yang
7-12V
disarankan
Batas tegangan input 6-20V

Jumlah pin I/O digital 14 (6 diantaranya menyediakan keluaran PWM)

Jumlah pin input analog 6


Arus DC tiap pin I/O 40 Ma
Arus DC untuk pin 3.3V 50 Ma
32 KB (ATmega328), sekitar 0.5 KB digunakan oleh
Memori Flash
bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz

Length 68,6 mm
Width 53,4 mm
Weight 25 g

2.3.1. Skema dan Referensi Desain


Files EAGLE : arduino-uno-Rev3-design.zip (catatan : bekerja pada Eagle
6.0 dan versi yang lebih baru)
Skema : arduino-uno-Rev3-schematic.pdf
Catatan : Referensi desain Arduino dapat menggunakan sebuah Atmega8, 168,
atau 328, model saat ini menggunakan Atmega328, tetapi Atmega8 ditampilkan
pada skema sebagai referensi. Konfigurasi pin identik pada semua ketiga prosesor
tersebut.

UNIVERSITAS SUMATERA UTARA


2.3.2. Daya (Power)
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 battery
dapat dimasukkan dalam header/kepala pin Ground (Gnd) dan pin Vin dari
konektor POWER.
Board Arduino UNO 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. Range yang
direkomendasikan adalah 7 sampai 12 Volt.
Pin-pin dayanya adalah sebagai berikut :

• VIN. Tegangan input ke Arduino board ketika board sedang menggunakan


sumber suplai eksternal (seperti 5 Volt dari koneksi USB atau sumber
tenaga lainnya yang diatur). Kita dapat menyuplai tegangan melalui pin
ini, atau jika penyuplaian tegangan melalui power jack, aksesnya melalui
pin ini.
• 5V. Pin output ini merupakan tegangan 5 Volt yang diatur dari regulator
pada board. Board dapat disuplai dengan salah satu suplai dari DC power
jack (7-12V), USB connector (5V), atau pin VIN dari board (7-12).
Penyuplaian tegangan melalui pin 5V atau 3,3V membypass regulator, dan
dapat membahayakan board. Hal itu tidak dianjurkan.
• 3V3. Sebuah suplai 3,3 Volt dihasilkan oleh regulator pada board. Arus
maksimum yang dapat dilalui adalah 50 mA.
• GND. Pin ground.

UNIVERSITAS SUMATERA UTARA


2.3.3. Memori
ATmega328 mempunyai 32 KB (dengan 0,5 KB digunakan untuk
bootloader). ATmega 328 juga mempunyai 2 KB SRAM dan 1 KB EEPROM
(yang dapat dibaca dan ditulis (RW/read and written) dengan EEPROM library).

2.3.4. Input dan Output


Setiap 14 pin digital pada Arduino Uno dapat digunakan sebagai input dan
output, menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Fungsi-
fungsi tersebut beroperasi di tegangan 5 Volt. Setiap pin dapat memberikan atau
menerima suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up
(terputus secara default) 20-50 kOhm. Selain itu, beberapa pin mempunyai fungsi
spesial :

• Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan


memancarkan (TX) serial data TTL (Transistor-Transistor Logic). Kedua
pin ini dihubungkan ke pin-pin yang sesuai dari chip Serial Atmega8U2
USB-ke-TTL.
• External Interrupts: 2 dan 3. Pin-pin ini dapat dikonfigurasikan untuk
dipicu sebuah interrupt (gangguan) pada sebuah nilai rendah, suatu
kenaikan atau penurunan yang besar, atau suatu perubahan nilai. Lihat
fungsi attachInterrupt() untuk lebih jelasnya.
• PWM : 3, 5, 6, 9, 10, dan 11. Memberikan 8-bit PWM output dengan
fungsi analogWrite().
• SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin-pin ini mensupport
komunikasi SPI menggunakan SPI library.
• LED : 13. Ada sebuah LED yang, terhubung ke pin digital 13. Ketika pin
bernilai HIGH LED menyala, ketika pin bernilai LOW LED mati.

Arduino UNO mempunyai 6 input analog, diberi label A0 sampai A5,


setiapnya memberikan 10 bit resolusi (contohnya 1024 nilai yang berbeda).
Secara default, 6 input analog tersebut mengukur dari ground sampai tegangan 5
Volt, dengan itu mungkin untuk mengganti batas atas dari rangenya dengan

UNIVERSITAS SUMATERA UTARA


menggunakan pin AREF dan fungsi analogReference(). Di sisi lain, beberapa pin
mempunyai fungsi spesial :

• TWI : pin A4 atau SDA dan pin A5 atau SCL. Mensupport komunikasi
TWI dengan menggunakan Wire library
Ada sepasang pin lainnya pada board:
• AREF. Referensi tegangan untuk input analog. Digunakan
dengan analogReference().
• Reset. Membawa saluran ini LOW untuk mereset mikrokontroler. Secara
khusus, digunakan untuk menambahkan sebuah tombol reset untuk
melindungi yang memblock sesuatu pada board.

2.3.5. Komunikasi
Arduino UNO mempunyai sejumlah fasilitas untuk komunikasi dengan
sebuah komputer, Arduino lainnya atau mikrokontroler lainnya. Atmega 328
menyediakan serial komunikasi UART TTL (5V), yang tersedia pada pin digital 0
(RX) dan 1 (TX). Sebuah Atmega 16U2 pada channel board serial komunikasinya
melalui USB dan muncul sebagai sebuah port virtual ke software pada komputer.
Firmware 16U2 menggunakan driver USB COM standar, dan tidak ada driver
eksternal yang dibutuhkan. Bagaimanapun, pada Windows, sebuah file ini pasti
dibutuhkan. Software Arduino mencakup sebuah serial monitor yang
memungkinkan data tekstual terkirim ke dan dari board Arduino. LED RX dan
TX pada board akan menyala ketika data sedang ditransmit melalui chip USB-to-
serial dan koneksi USB pada komputer (tapi tidak untuk komunikasi serial pada
pin 0 dan 1).

2.4. Sensor Ultrasonik HC-SR04


Sensor ini merupakan sensor ultrasonik siap pakai, satu alat yang berfungsi
sebagai pengirim, penerima, dan pengontrol gelombang ultrasonik. Alat ini bisa
digunakan untuk mengukur jarak benda dari 2cm - 4cm dengan akurasi 3mm.
Alat ini memiliki 4 pin, pin Vcc, Gnd, Trigger, dan Echo. Pin Vcc untuk listrik
positif dan Gnd untuk ground-nya. Pin Trigger untuk trigger keluarnya sinyal dari
sensor dan pin Echo untuk menangkap sinyal pantul dari benda.

UNIVERSITAS SUMATERA UTARA


Gambar 2.3. Sensor Ultrasonic HC-SR04

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 menentukan
jarak benda tersebut. Rumus untuk menghitungnya sudah saya sampaikan diatas.
Berikut adalah visualisasi dari sinyal yang dikirimkan oleh Sensor HC-SR04.

Gambar 2.4. Sistem Pewaktu pada Sensor HC-SR04

2.5. Liquid Crystal Display (LCD)


Display elektronik adalah salah satu komponen elektronika yang berfungsi
sebagai tampilan suatu data, baik karakter, huruf ataupun grafik. LCD (Liquid
Crystal Display) adalah suatu jenis display elektronik. LCD merupakan media
tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah
digunakan diberbagai bidang misalnya alal-alat elektronik seperti televisi,
kalkulator dan layar komputer. Salah satu jenis Liquid Crystal Display (LCD)
yang sering digunakan ialah LCD dot matrik dengan jumlah karakter 16x2.
Adapun karakteristik yang dimiliki LCD adalah sebagai berikut :
1. Terdiri dari 16 karakter dan 2 baris.
2. Mempunyai 192 karakter tersimpan.
3. Terdapat karakter generator terprogram.

UNIVERSITAS SUMATERA UTARA


4. Dapat diamati dengan mode 4-bit dan 8 bit.
5. Dilengkapi dengan back-light.

Gambar 2.5. Bentuk Fisik LCD 16x2

LCD (Liquid Cristal Display) berfungsi sebagai penampil data baik dalam
bentuk karakter, huruf, angka ataupun grafik. Material LCD (Liquid Cristal
Display) LCD adalah lapisan dari campuran organik antara lapisan kaca bening
dengan elektroda transparan indium oksida dalam bentuk tampilan seven-segment
dan lapisan elektroda pada kaca belakang.

Tabel 2.2 Pin-pin Konfigurasi pada Liquid Crystal Display (LCD)


Pin Symbols and functions

1 GND
2 VCC (+5)
3 Contrast Adjust
4 (RS)  0 = instruction input / 1 = Data input
5 (R/W)  0 = Write to LCD Module / 1 = Read from LCD module
6 (E)  Enable Signal
7 (DB0)  Data Pin 0
8 (DB1)  Data Pin 1
9 (DB2)  Data Pin 2
10 (DB3)  Data Pin 3
11 (DB4)  Data Pin 4
12 (DB5)  Data Pin 5
13 (DB6)  Data Pin 6
14 (DB7)  Data Pin 7
15 (VB+)  Back Light (+5V)
16 (VB-)  Back Light (GND)

UNIVERSITAS SUMATERA UTARA


2.5.1. Cara Kerja LCD Secara Umum
Pada aplikasi umumnya RW diberi logika rendah “0”.Bus data terdiri dari 4
bit atau 8 bit. Jika jalur data 4 bit maka yang digunakan ialah DB4 sampai dengan
DB7. Sebagaimana terlihat pada table deskripsi, interface LCD merupakan sebuah
parallel bus, dalam hal ini sangat memudahkan dan sangat cepat dalam
pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan
sepanjang 8 bit dikirim ke LCD secara 4 bit atau 8 bit pada satu waktu.
Jika mode 4bit yang digunakan, maka 2 nibble data dikirim untuk membuat
sepenuhnya 8 bit (pertama dikirim 4bit MSB lalu 4bit LSB dengan pulsa clock
EN setiap nibblenya). Jalur control EN digunakan untuk memberitahu LCD
bahwa mikrokontroler mengirimkan data ke LCD. Untuk mengirim data ke LCD
program harus menset EN ke kondisi high “1” dan kemudian menset dua jalur
control lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus. Saat
jalur lainnya sudah siap, EN harus diset ke “0” dan tunggu beberapa saat, dan set
EN kembali ke high “1”. Ketika jalur RS berada dalam kondisi low “0”, data yang
dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi khusus
(seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high atau
“1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar.
Misal, untuk menampilkan huruf “A” pada layar maka RS harus diset ke “1”.
Jalur control R/W harus berada dalam kondisi low (0) saat informasi pada data
bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high “1”, maka
program akan melakukan query data dari LCD.
Instruksi pembacaan hanya satu, yaitu Get LCD status, lainnya merupakan
instruksi penulisan, Jadi hampir setiap aplikasi yang menggunakan LCD, R/W
selalu di set ke “0”. Jalur data dapat terdiri 4 atau 8 jalur. Mengirimkan data
secara parallel baik 4 bit atau 8 bit merupakan 2 mode operasi primer. Untuk
membuat sebuah aplikasi interface LCD, menentukan mode operasi merupakan
hal yang paling penting.
Mode 8 bit sangat baik digunakan ketika kecepatan menjadi keutamaan
dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/0 (3pin untuk
control, 8pin untuk data). Sedangkan mode 4 bit minimal hanya membutuhkan 7
bit (3pin untuk control, 4 pin untuk data). Bit RS digunakan untuk memilih

UNIVERSITAS SUMATERA UTARA


apakah data atau instruksi yang akan ditransfer antara mikrokontroler dan LCD.
Jika bit ini diset (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca
atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke
LCD atau status eksekusi dari instruksi terakhir yang dibaca.

2.6. Pemrograman Bahasa C


Bahasa C dikembangkan pada Lab Bell pada tahun 1978, oleh Dennis Ritchi
dan Brian W. Kernighan. Pada tahun 1983 dibuat standar C yaitu stanadar ANSI
(American National Standards Institute) yang digunakan sebagai referensi dari
berbagai versi C yang beredar dewasa ini termasuk Turbo C.
Dalam beberapa literature, bahasa C digolongkan bahasa level menengah
karena bahasa C mengkombinasikan elemen bahasa tinggi dan elemen bahasa
rendah. Kemudahan dalam level rendah merupakan tujuan diwujudkanya bahasa
C. Pada tahun 1985 lahirlah pengembangan ANSI C yang dikenal dengan C++
(diciptakan oleh Bjarne Struostrup dari AT % TLab). Bahasa C++ adalah
pengembangan dari bahasa C. Bahasa C++ mendukung konsep pemrograman
berorientasi objek dan pemrograman berbasis windows.
Sampai sekarang bahasa C++ terus berkembang dan hasil perkembangannya
muncul bahasa baru pada tahun 1995 (merupakan keluarga C dan C++ yang
dinamakan java). Istilah prosedur dan fungsi dianggap sama dan disebut dengan
fungsi saja. Hal ini karena di C++ sebuah prosedur pada dasarnya adalah sebuah
fungsi yang tidak memiliki tipe data kembalian (void). Hingga kini bahasa ini
masih popular dan penggunaannya tersebar di berbagai platform dari windows
sampai linux dan dari PC hingga main frame.
Adapun Kekurangan dan Kelebihan Bahasa C sebagai berikut :
• Kelebihan Bahasa C :
· Bahasa C tersedia hampir di semua jenis komputer.
· Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis
komputer.
· Bahasa C hanya menyediakan sedikit kata-kata kunci. hanya terdapat 32
kata kunci.
· Proses executable program bahasa C lebih cepat.

UNIVERSITAS SUMATERA UTARA


· Dukungan pustaka yang banyak.
· C adalah bahasa yang terstruktur
· Bahasa C termasuk bahasa tingkat menengah

• Kekurangan Bahasa C :
· Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.
· Bagi pemula pada umumnya akan kesulitan menggunakan pointer.
Sebagai bahasa yang digolongkan dalam middle level gauge, bahasa C
mempunyai kemudahan dalam mengakses perangkat keras, juga kecepatan
prosesnya yang mendekati low level language seperti assembly, tetapi
memberikan kemudahan yang tidak ditawarkan assembly. Disamping itu, bahasa
C juga mempunyai banyak keuntungan disbanding bahasa pemrograman lain.
Dikarenakan kokoh dan memberikan keleluasaan kepada penggunanya, pada
tahun 80-an, penggunaan bahasa C di dunia industri semakin luas, sehingga
distandarisasi oleh ANSI dan kemudian diadopsi oleh ISO, lalu diadopsi ulang
oleh ANSI. Official name bahasa C adalah ISO/IEC 9899-1990.

2.6.1. Struktur Bahasa C


a. Program bahasa C tersusun atas sejumlah blok fungsi.
b. Setiap fungsi terdiri dari satu atau beberapa pernyataan untuk melakukan
suatu proses tertentu.
c. Tidak ada perbedaan antara prosedur dan fungsi.
d. Setiap program bahasa C mempunyai suatu fungsi dengan nama “main”
(Program Utama).
e. Fungsi bisa diletakkan diatas atau dibawah fungsi “main”.
f. Setiap statemen diakhiri dengan semicolon (titik koma).

2.6.2. Pengenal
Pengenal (identifier) merupakan sebuah nama yang didefenisikan oleh
pemrograman untuk menunjukkan identitas dari sebuah konstanta, variable,
fungsi, label atau tipe data khusus. Pemberian nama sebuah pengenal dapat

UNIVERSITAS SUMATERA UTARA


ditentukan bebas sesuai keinginan pemrogram tetapi harus memenuhi aturan
berikut :
• Karakter pertama tidak boleh menggunakan angka.
• Karakter kedua dapat berupa huruf, angka, atau garis bawah.
• Tidak boleh menggunakan spasi.
• Bersifat Case Sensitive, yaitu huruf capital dan huruf kecil dianggap berbeda.
• Tidak boleh mengunakan kata – kata yang merupakan sitaks maupun operator
dalam pemrograman C, misalnya : Void, short, const, if, static, bit, long, case,
do, switch dll.

2.6.3. Tipe Data


Tipe data merupakan suatu hal yang penting untuk kita ketahui pada saat
belajar bahasa pemrograman. Kita harus dapat menentukan tipe data yang tepat
untuk menampung sebuah data, baik itu data berupa bilangan numerik ataupun
karakter. Hal ini bertujuan agar program yang kita buat tidak membutuhkan
pemesanan kapling memori yang berlebihan. Seorang programmer yang handal
harus dapat memilih dan menentukan tipe data apa yang seharusnya digunakan
dalam pembuatan sebuah program. Secara garis besar tipe data pada bahasa C
dibagi menjadi beberapa bagian antara lain sebagai berikut
Macam-Macam Tipe Data Pada Bahasa C :
1. Tipe Data Karakter
Sebuah karakter, baik itu berupa huruf atau angka dapat disimpan
pada sebuah variabel yang memiliki tipe data char dan unsigned char.
Besarnya data yang dapat disimpan pada variabel yang bertipe data char
adalah -127 - 127. Sedangkan untuk tipe data unsigned char adalah dari 0 -
255. Pada dasarnya setiap karakter memiliki nilai ASCII, nilai inilah yang
sebetulnya disimpan pada variabel yang bertipe data karakter ini.

2. Tipe Data Bilangan Bulat


Tipe data bilangan bulat atau dapat disebut juga bilangan desimal
merupakan sebuah bilangan yang tidak berkoma. Pada bahasa C terdapat
bermacam-macam tipe data yang dapat kita gunakan untuk menampung

UNIVERSITAS SUMATERA UTARA


bilangan bulat. Kita dapat menyesuaikan penggunaan tipe data dengan
terlebih dahulu memperhitungkan seberapa besar nilai yang akan kita simpan.
Contohnya seperti berikut, kita akan melakukan operasi penjumlahan
nilai 300 dan 100 dan hasilnya akan disimpan pada variabel c.
Jika dilihat, hasil dari penjumlahan tersebut nilainya akan lebih besar
dari 255 dan nilainya pasti positif, oleh karena itu sebaiknya kita
menggunakan tipe data unsigned int. Namun berbeda halnya jika saya ingin
melakukan operasi pengurangan -5 - 300, jika dilihat hasilnya akan negatif
maka selayaknya digunakan variabel dengan tipe data int.

3. Tipe Data Bilangan Berkoma


Pada bahasa C terdapat dua buah tipe data yang berfungsi untuk
menampung data yang berkoma. Tipe data tersebut adalah float dan double.
Double lebih memiliki panjang data yang lebih banyak dibandingkan float.
Tipe data double dapat digunakan jika kita membutuhkan variabel yang dapat
menampung tipe data berkoma yang bernilai besar.

Tabel 2.3. Tipe Data pada Bahasa C


Tipe Data Ukuran Jangkauan Nilai
Bit 1 byte 0 atau 1
Char 1 byte -128 s/d 127
Unsigned Char 1 byte 0 s/d 255
Signed Char 1 byte -128 s/d 127
Int 2 byte -32.768 s/d 32.767
Short Int 2 byte -32.768 s/d 32.767
Unsigned Int 2 byte 0 s/d 65.535
Signed Int 2 byte -32.768 s/d 32.767
Long Int 4 byte -2.147.483.648 s/d 2.147.483.647
Unsigned Long Int 4 byte 0 s/d 4.294.967.295
Signed Long Int 4 byte -2.147.483.648 s/d 2.147.483.647
Float 4 byte 1.2*10-38 s/d 3.4*10+38
Double 4 byte 1.2*10-38 s/d 3.4*10+38

UNIVERSITAS SUMATERA UTARA


2.6.4. Konstanta Dan Variabel
Konstanta dan variable merupakan sebuah tempat untuk menyimpan data
yang berada di dalam memori. Konstanta berisi data yang nilainya tetap dan tidak
dapat diubah selama program dijalankan, sedangkan variable berisi data yang bisa
berubah nilainya pada saat program dijalankan.

2.6.5. Identifikasi
Identifier atau nama pengenal adalah nama yang ditentukan sendiri oleh
pemrogram yang digunakan untuk menyimpan nilai, misalnya nama variable,
nama konstanta, nama suatu elemen (misalnya : nama fungsi, nama tipe data, dll).
Identifier punya ketentuan sebagai berikut :
1. Maksimum 32 karakter (bila lebih dari 32 karakter maka yang diperhatikan
hanya 32 karakter pertama saja).
2. Case sensitive : membedakan huruf besar dan huruf kecilnya.
3. Karakter pertama harus karakter atau underscore (__). Selebihnya boleh
angka.
4. Tidak boleh mengandung spasi atau blank.
5. Tidak boleh menggunakan kata yang sama dengan kata kunci dan fungsi.

2.7. Trimpot
Trimpot adalah sebuah resistor variabel kecil yang biasanya digunakan pada
rangkaian elektronika sebagai alat tuning atau bisa juga sebagai re-kalibrasi.
Seperti potensio juga, Trimpot juga mempunyai 3 kaki selain kesamaan tersebut
sistem kerja/cara kerjanya juga menyerupai potensio hanya saja kalau potensio
mempunyai gagang atau handle untuk memutar atau menggeser sedangkan
Trimpot tidak.
Fungsi dan kegunaan variable resistor jenis trimpot adalah untuk
mendapatkan nilai yang paling mendekati nilai yang ingin didapatkan agar
rangkaian berfungsi maksimal. Sebuah trimpot memiliki nilai resistor yang dapat
diubah hanya dengan memutar poros trimpot. Setelah didapatkan nilai yang
sesuai, biasanya trimpot tidak lagi diputar-putar. Untuk menggerakkan trimpot,

UNIVERSITAS SUMATERA UTARA


dapat dilakukan dengan menggunakan obeng. Besarnya nilai resistor berubah
searah dengan arah jarum jam.

Gambar 2.6. Bentuk Fisik Trimpot

2.8. 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.
Pada umumnya, buzzer yang merupakan sebuah perangkat audio ini sering
digunakan pada rangkaian anti maling, alarm pada jam tangan, bel rumah,
peringatan mundur pada truk dan perangkat peringatan bahaya lainnya. Jenis
buzzer yang sering ditemukan dan dan digunakan adalah buzzer yang berjenis
Piezoelectric, hal ini dikarenakan buzzer Piezoelectric memiliki berbagai
kelebihan seperti lebih murah, relative lebih ringan dan lebih mudah dalam
menggabungkan ke rangkaian elektronika lainnya. Buzzer yang termasuk dalam
keluarga transducer ini juga sering disebut Beeper.

Gambar 2.7. Bentuk Fisik Buzzer

UNIVERSITAS SUMATERA UTARA


BAB III

PERANCANGAN ALAT DAN PEMBUATAN SISTEM

3.1. Perancangan Sistem


Dalam bab ini akan dibahas mengenai pembuatan rangkaian dan program.
Seperti pengambilan data pada pengujian Volume Air yang digunakan sensor HC-
SR04 untuk mengukur volume sebuah tabung, kemudian mikrokontroler
mengolah data. Perangkat keras yang digunakan terdiri dari sensor HC-SR04,
Mikrokontroler Arduino UNO, dan LCD. Sedangkan perangkat lunak yang
digunakan adalah software program Arduino.

3.1.1. Prinsip Kerja Alat


Sistem ini dibangun untuk mengukur Volume air pada sebuah wadah atau
tabung sehingga sehingga output-nya menghasilkan nilai melalui sensor HC-
SR04, yang nilai tersebut akan diolah dalam program Arduino. Parameter yang
digunakan adalah zat cair yang dideteksi dari sensor yang telah diolah
sebelumnya ke dalam program Arduino. Kemudian hasil itu akan ditampilkan
melalui LCD 16x2. Adapun konsep dasar sistem adalah sebagai berikut :

Masukan Pengolahan Keluaran

INPUT PROSES OUTPUT

Yang Dikumpulkan (Processing) Yang disajikan

Gambar 3.1. Konsep Dasar Sistem

Penjelasannya sebagai berikut :


1. Input data berupa hasil pembacaan dari sensor HC-SR04 dengan
mendeteksi Volume air.

UNIVERSITAS SUMATERA UTARA


2. Proses pengolahan data Volume air dari sensor diolah kedalam program
pada mikrokontroler kemudian ditampilkan ke LCD 16x2 ketika dalam
kondisi Volume air dalam bentuk digital.
3. Output adalah hasil data yang sudah diolah mikrokontroler akan
ditampilkan pada layar LCD.

3.1.2. Cara Kerja Alat


Cara Kerja Alat dijelaskan sebagai berikut :
1. Sensor HC-SR04 pembacaan sebelum Volume zat cair pada wadah.
2. Alat mendeteksi zat cair pada wadah menggunakan sensor HC-SR04.
3. Volume air pada wadah yang telah dibaca oleh sensor HC-SR04 diolah
menggunakan mikrokontroler dan data yang sudah diolah akan di
tampilkan pada LCD.

3.2. Perancangan Rangkaian Minimum Sistem


3.2.1. Sensor HC-SR04
Ukuran sensor ini tergolong sedang, sehingga mudah dalam pengaturan
tata letak sensor. Sensor ini merupakan sensor ultrasonik siap pakai, suatu alat
yang berfungsi sebagai pengirim, penerima dan pengontrol gelombang ultrasonik.
Dibawah ini adalah gambar dimensi dan struktur sensor HC-SR04 :

Gambar 3.2. Rangkaian Sensor HC-SR04

3.2.2. Mikrokontroler Arduino Uno


Minimum sistem merupakan bagian utama dari pembuatan alat ini,
pada bagian ini terdiri dari mikrokontroller gambar rangkaian dapat dilihat :

UNIVERSITAS SUMATERA UTARA


Gambar 3.3 Rangkaian Arduino UNO

3.2.3. Rangkaian Liquid Crystal Display (LCD)


Rangkaian skematik konektor yang dihubungkan dari LCD (liquid crystal
display) ke mikrokontroler dapat dilihat pada gambar dibawah ini :

Gambar 3.4. Rangkaian Skematik Konektor dari Mikrokontroler ke LCD

Liquid crystal display (LCD) merupakan sejenis crystal yang akan berpendar jika
diberi tegangan tertentu, sehingga perpendaran tersebut dapat diatur untuk
membentuk karakter, angka, huruf dan lain sebagainya. Liquid Crystal Display
(LCD) yang digunakan dalam penelitian tugas akhir ini adalah menggunakan
Liquid Crystal Display (LCD) dengan banyak baris dan karakter adalah 16x2
seperti pada gambar 3.4.

3.3. Prosedur Percobaan


1. Pastikan alat dalam keadaan bersih dan siap pakai
2. Hidupkan alat dengan memberikan daya pada alat tersebut
3. Pastikan pembacaan sensor 0
4. Jika belom 0 maka di 0 terlebih dahulu dengan membagusi alat
5. Setelah 0 maka sample dapat dimasukkan pada wadah

UNIVERSITAS SUMATERA UTARA


6. Lihat pembacaan sensor pada LCD
7. Lakukan pengujian berulangkali
8. Catat hasil yang ditampilkan LCD
9. Lakukan pengujian juga secara manual
10. Catat hasilnya

3.4. Perancangan Rangkaian Keseluruhan


Pada rangkaian ini menggambarkan keseluruhan program yang dirancang
dari sensor HC-SR04, mikrokontroler dan LCD.
Dari gambar dibawah menjelaskan bahwa rangkaian yang dibuat
menggunakan mikrokontroler, sensor HC-SR04 dan LCD. Mikrokontroler sebagai
papan board yang merupakan pemrograman dari alat ini, HC-SR04 sebagai sensor
yang dapat menjadi pengirim sinyal dan penerima sinyal, Liquid Crystal Display
(LCD) berfungsi menampilkan data yang dikirim oleh mikrokontroler.

Gambar 3.5. Rangkaian Skematik Keseluruhan

Gambar 3.6. Rangkaian ARES

UNIVERSITAS SUMATERA UTARA


3.5. Diagram Alir Program

Mulai

Masukkan daya

Inisialisasi LCD

Tidak

Masukkan sample,
Pembacaan Sensor

Ya

LCD
Menampilkan tinggi
dari sampel yg di
masukkan

SELESAI

Gambar 3.7. Diagram Alir Program

UNIVERSITAS SUMATERA UTARA


BAB IV

HASIL DAN PEMBAHASAN

Pada bab ini dilakukan pengujian alat dengan membandingkan antara


pembacaan Sensor dan pembacaan Mistar dengan maksud untuk mengetahui
Volume Air pada wadah. Dilakukan pengujian :
Tempat : Pusdiklat LPPM USU
Tanggal : 24 Juni 2017
Pukul : 16.00-16.40 WIB
Zat cair : Air

4.1. Data Pengujian


Pengujian dilakukan dengan dua cara untuk mengambil data pengukuran
yaitu sebagai berikut :
1. Dilakukan secara manual mengukur Volume Air menggunakan Mistar
2. Dilakukan pengujian menggunakan sensor
Untuk mencari Volume tabung atau wadah, langkah pertama yang kita
lakukan adalah mencari ketinggian wadah.
Pada tabel dibawah ini menunjukkan pengujian air dalam wadah.

Tabel 4.1. Data Pengujian Air Dalam Wadah


Sensor(V Uji ) T D V Standar

1416 cm3 5 cm 16,5 cm 1068,581 cm

2267 cm3 8 cm 17,2 cm 1857,875 cm

3117 cm3 11 cm 18 cm 2797,94 cm

4050 cm3 15,5 cm 18,5 cm 4164,326 cm

Keterangan;

UNIVERSITAS SUMATERA UTARA


Pengujian yang dilakukan dengan Volume air yang berbeda-beda.

4.2. Analisa Data


• Mencari Volume Standar

V 1 = 3,14 x 8,252 x 5 = 1068,581 cm


V 2 = 3,14 x 8,62 x 8 = 1857,875 cm
V 3 = 3,14 x 92 x 11 = 2797,74 cm
V 4 = 3,14 x 9,252 x 15,5 = 4164,326 cm

= 2712,5 cm3

• % Error = x 100%

% Error1 = (1416-1068,581)/2712,5x100% = 1,376%


% Error2 = (2267-1857,875)/2712,5x100% = 1,508%
% Error3 = (3117-2797,94)/2712,5x100% = 1,176%
% Error4 = (4050-4164,326)/2712,5x100% = 4,214%

UNIVERSITAS SUMATERA UTARA


BAB V

PENUTUP

5.1. Kesimpulan
Setelah dilakukan pengujian hasil pengukuran, dapat diambil beberapa
kesimpulan :
1. Berdasarkan hasil pengujian sensor dan pengujian alat ukur ketinggian air
pada wadah yang dibuat, pengukuran ketinggian air dapat bekerja baik
dengan persentase Error = 4,214% dari range 4-100% maka sensor
SENSITIF.
2. Beberapa pengujian yang dilakukan dengan air yang Volume berbeda-
beda, maka hasil pembacaan sensor HC-SR04 juga berbeda, sensor
bekerja dengan baik.
3. Buzzer akan bunyi ketika volume air sama dengan 3L.

5.2. Saran
Beberapa tambahan yang diperlukan dalam meningkatkan kemampuan alat
ini adalah :
1. Dalam segi peletakan sensor terhadap Volume wadah tabung harus
dilindungi. Sehingga saat memasukan cairan tidak merusak sensor.
2. Dengan beberapa pengembangan aplikasi dan penyempurnaan sistem dari
alat ini akan mendapatkan hasil yang lebih baik lagi.
3. Dengan menambahkan komponen-komponen lain agar kualitas
pembacaan alat semakin akurat lagi.

UNIVERSITAS SUMATERA UTARA


DAFTAR PUSTAKA

[1] Anugrah, Rizki. 2010. Mikrokontroler-atmega8535.


http://robotbego.blogspot.com/2010/02/mikrokontroler-atmega8535.html.
(Diakses 17 Juni 2017)
[2] Darmawan, Dawam. 2011. Pengenalan Bahasa C++.
http://www.academia.edu/9923046/Dasar_teori_pengenalan_Bahasa_C+
(Diakses 18 Juni 2017)
[3] Santoso, Hari. 2015. Sensor Ultrasonik.
http://www.elangsakti.com/2015/05/sensor-ultrasonik.html
(Diakses 18 Januari 2017)
[4] Zal, Fahmi. 2010. Aplikasi LCD 2x16 dengan Mikrokontroler.
http://fahmizaleeits.wordpress.com/tag/cara-kerja-lcd-secara-umum
(Diakses 20 Januari 2018)

UNIVERSITAS SUMATERA UTARA


LAMPIRAN

UNIVERSITAS SUMATERA UTARA


LAMPIRAN I
(PROGRAM ALAT)

UNIVERSITAS SUMATERA UTARA


LAMPIRAN I

Program Alat
// ---------------------------------------------------------------------------
// Example NewPing library sketch that does a ping about 20 times per second.
// ---------------------------------------------------------------------------

#include <NewPing.h>
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins


LiquidCrystal lcd(13,12,11,10,9,8,7);
#define TRIGGER_PIN A0 // Arduino pin tied to trigger pin on the ultrasonic
sensor.
#define ECHO_PIN A1 // Arduino pin tied to echo pin on the ultrasonic
sensor.
#define MAX_DISTANCE 200 // Maximum distance we want to ping for (in
centimeters). Maximum sensor distance is rated at 400-500cm.

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing


setup of pins and maximum distance.
float a[3];
void setup() {
Serial.begin(9600); // Open serial monitor at 115200 baud to see ping results.
// set up the LCD's number of columns and rows:
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("PROJEK AKHIR 2");
lcd.setCursor(0, 1);
lcd.print("METROLOGI 2014");
delay(3000);
lcd.clear();
lcd.print("JOSUA ARDIANSYAH");
lcd.setCursor(0, 1);
lcd.print("142411080");
delay(3000);
lcd.clear();
}

void loop() {
delay(50); // Wait 50ms between pings (about 20 pings/sec). 29ms
should be the shortest delay between pings.
unsigned int uS = sonar.ping(); // Send ping, get ping time in microseconds (uS).
int jarak=uS / US_ROUNDTRIP_CM; // Convert ping time to distance in cm
and print result (0 = outside set distance range)
unsigned volume=3.14*90.25*(18-jarak);
unsigned liter=volume*0.001;
lcd.setCursor(0, 0);
lcd.print(liter);
lcd.print(" L");
lcd.setCursor(0, 1);

UNIVERSITAS SUMATERA UTARA


lcd.print(volume);
lcd.print(" cm3");
delay(300);
lcd.clear();
if(jarak<8)
{
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
}
else
{
digitalWrite(6,LOW);
digitalWrite(7,LOW);
}
}

UNIVERSITAS SUMATERA UTARA


LAMPIRAN II
(GAMBAR ALAT)

UNIVERSITAS SUMATERA UTARA


LAMPIRAN II

Gambar Alat
• Alat dari tampak atas

• Gambar Rangkaian Alat

UNIVERSITAS SUMATERA UTARA


LAMPIRAN III
(DATA SHEET ARDUINO
UNO)

UNIVERSITAS SUMATERA UTARA


Arduino Uno

Arduino Uno R3 Front Arduino Uno R3 Back

Arduino Uno R2 Front Arduino Uno SMD Arduino Uno Front Arduino Uno Back

Overview

The Arduino Uno is a microcontroller board based on the ATmega328


(datasheet). It has 14 digital input/output pins (of which 6 can be used as
PWM outputs), 6 analog inputs, a 16 MHz ceramic resonator, a USB
connection, a power jack, an ICSP header, and a reset button. It contains
everything needed to support the microcontroller; simply connect it to a
computer with a USB cable or power it with a AC-to-DC adapter or battery to
get started.
The Uno differs from all preceding boards in that it does not use the FTDI
USB-to-serial driver chip. Instead, it features the Atmega16U2
(Atmega8U2 up to version R2) programmed as a USB-to-serial converter.
Revision 2 of the Uno board has a resistor pulling the 8U2 HWB line to
ground, making it easier to put into DFU mode.
Revision 3 of the board has the following new features:

• 1.0 pinout: added SDA and SCL pins that are near to the AREF pin
and two other new pins placed near to the RESET pin, the IOREF that allow
the shields to adapt to the voltage provided from the board. In future, shields
will be compatible both with the board that use the AVR, which operate with
5V and with the Arduino Due that operate with 3.3V. The second one is a not
connected pin, that is reserved for future purposes.
• Stronger RESET circuit.
• Atmega 16U2 replace the 8U2.

"Uno" means one in Italian and is named to mark the upcoming release of
Arduino 1.0. The Uno and version 1.0 will be the reference versions of
Arduino, moving forward. The Uno is the latest in a series of USB Arduino
boards, and the reference model for the Arduino platform; for a comparison
with previous versions, see the index of Arduino boards.

UNIVERSITAS SUMATERA UTARA


Summary

Microcontroller ATmega328
Operating
Voltage 5V Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 14 (of which 6
provide PWM output) Analog Input Pins 6
DC Current per I/O Pin 40 mA DC Current for 3.3V Pin 50 mA
Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloader
SRAM 2 KB
(ATmega328) EEPROM 1 KB
(ATmega328) Clock Speed 16
MHz

Schematic & Reference Design

EAGLE files: arduino-uno-Rev3-reference-design.zip (NOTE: works with Eagle


6.0 and newer) Schematic: arduino-uno-Rev3-schematic.pdf
Note: The Arduino reference design can use an Atmega8, 168, or 328, Current models
use an
ATmega328, but an Atmega8 is shown in the schematic for reference. The pin
configuration is identical on all three processors.

Power

The Arduino Uno can be powered via the USB connection or with an external power
supply. The power source is selected automatically.
External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or
battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the
board's power jack. Leads from a battery can be inserted in the Gnd and Vin pin headers
of the POWER connector.
The board can operate on an external supply of 6 to 20 volts. If supplied with less than
7V, however,
the 5V pin may supply less than five volts and the board may be unstable. If using more
than 12V, the voltage regulator may overheat and damage the board. The
recommended range is 7 to 12 volts.
The power pins are as follows:

• VIN. The input voltage to the Arduino board when it's using an external power
source (as opposed to 5 volts from the USB connection or other regulated power
source). You can supply voltage through this pin, or, if supplying voltage via the
power jack, access it through this pin.
• 5V.This pin outputs a regulated 5V from the regulator on the board. The board
can be supplied with power either from the DC power jack (7 - 12V), the USB
connector (5V), or the VIN pin of
the board (7-12V). Supplying voltage via the 5V or 3.3V pins bypasses the
regulator, and can damage your board. We don't advise it.
• 3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current
draw is 50 mA.
• GND. Ground pins.

Memory

The ATmega328 has 32 KB (with 0.5 KB used for the bootloader). It also has 2 KB of
SRAM and 1 KB
of EEPROM (which can be read and written with the EEPROM library).

UNIVERSITAS SUMATERA UTARA


Input and Output

Each of the 14 digital pins on the Uno can be used as an input or output, using
pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin
can provide or receive a maximum of 40 mA and has an internal pull-up resistor
(disconnected by default) of 20-50 kOhms. In addition, some pins have specialized
functions:

• Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial
data. These pins are connected to the corresponding pins of the ATmega8U2
USB-to-TTL Serial chip.
• External Interrupts: 2 and 3. These pins can be configured to trigger an
interrupt on a low
value, a rising or falling edge, or a change in value. See the
attachInterrupt() function for details.
• PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite()
function.
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI
communication using the SPI library.
• LED: 13. There is a built-in LED connected to digital pin 13. When the pin is HIGH
value, the
LED is on, when the pin is LOW, it's off.

The Uno has 6 analog inputs, labeled A0 through A5, each of which provide 10 bits of
resolution (i.e.
1024 different values). By default they measure from ground to 5 volts, though is it
possible to change the upper end of their range using the AREF pin and the
analogReference() function. Additionally, some
pins have specialized functionality:

• TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication using

the Wire library. There are a couple of other pins on the board:

• AREF. Reference voltage for the analog inputs. Used with analogReference().
• Reset. Bring this line LOW to reset the microcontroller. Typically used to add a
reset button to shields which block the one on the board.

See also the mapping between Arduino pins and ATmega328 ports. The mapping for the
Atmega8,
168, and 328 is identical.

Communication

The Arduino Uno has a number of facilities for communicating with a computer, another
Arduino, or other microcontrollers. The ATmega328 provides UART TTL (5V) serial
communication, which is available on digital pins 0 (RX) and 1 (TX). An ATmega16U2 on
the board channels this serial communication over USB and appears as a virtual com port
to software on the computer. The '16U2 firmware uses the standard USB COM drivers,
and no external driver is needed. However, on Windows, a .inf file is required. The
Arduino software includes a serial monitor which allows simple textual data to be sent to
and from the Arduino board. The RX and TX LEDs on the board will flash when data is
being transmitted via the USB-to-serial chip and USB connection to the computer (but
not for serial communication on pins 0 and 1).
A SoftwareSerial library allows for serial communication on any of the Uno's digital pins.
The ATmega328 also supports I2C (TWI) and SPI communication. The Arduino software

UNIVERSITAS SUMATERA UTARA


includes a
Wire library to simplify use of the I2C bus; see the documentation for details. For SPI
communication, use the SPI library.

Programming

The Arduino Uno can be programmed with the Arduino software (download). Select
"Arduino Uno from the Tools > Board menu (according to the microcontroller on your
board). For details, see the reference and tutorials.
The ATmega328 on the Arduino Uno comes preburned with a bootloader that allows you
to upload new code to it without the use of an external hardware programmer. It
communicates using the original STK500 protocol (reference, C header files).
You can also bypass the bootloader and program the microcontroller through the ICSP
(In-Circuit
Serial Programming) header; see these instructions for details.
The ATmega16U2 (or 8U2 in the rev1 and rev2 boards) firmware source code is available
. The
ATmega16U2/8U2 is loaded with a DFU bootloader, which can be activated by:

• On Rev1 boards: connecting the solder jumper on the back of the board (near the
map of Italy)
and then resetting the 8U2.
• On Rev2 or later boards: there is a resistor that pulling the 8U2/16U2 HWB
line to ground, making it easier to put into DFU mode.

You can then use Atmel's FLIP software (Windows) or the DFU programmer (Mac OS X
and Linux) to load a new firmware. Or you can use the ISP header with an external
programmer (overwriting the DFU bootloader). See this user-contributed tutorial for
more information.

Automatic (Software) Reset


Rather than requiring a physical press of the reset button before an upload, the Arduino
Uno is designed in a way that allows it to be reset by software running on a connected
computer. One of the hardware flow control lines (DTR) of the ATmega8U2/16U2 is
connected to the reset line of the ATmega328 via a 100 nanofarad capacitor. When this
line is asserted (taken low), the reset line drops long enough to reset the chip. The
Arduino software uses this capability to allow you to upload code by simply pressing the
upload button in the Arduino environment. This means that the bootloader can have a
shorter timeout, as the lowering of DTR can be well-coordinated with the start of the
upload. This setup has other implications. When the Uno is connected to either a
computer running Mac OS X or Linux, it resets each time a connection is made to it from
software (via USB). For the following half- second or so, the bootloader is running on
the Uno. While it is programmed to ignore malformed data (i.e. anything besides an
upload of new code), it will intercept the first few bytes of data sent to the
board after a connection is opened. If a sketch running on the board receives one-time
configuration or other data when it first starts, make sure that the software with which it
communicates waits a second
after opening the connection and before sending this data.
The Uno contains a trace that can be cut to disable the auto-reset. The pads on either
side of the trace can be soldered together to re-enable it. It's labeled "RESET-EN". You
may also be able to disable the auto-reset by connecting a 110 ohm resistor from 5V to
the reset line; see this forum thread for
details.

USB Overcurrent Protection

The Arduino Uno has a resettable polyfuse that protects your computer's USB ports from

UNIVERSITAS SUMATERA UTARA


shorts and overcurrent. Although most computers provide their own internal protection,
the fuse provides an extra layer of protection. If more than 500 mA is applied to the USB
port, the fuse will automatically break the connection until the short or overload is
removed.

Physical Characteristics

The maximum length and width of the Uno PCB are 2.7 and 2.1 inches respectively, with
the USB connector and power jack extending beyond the former dimension. Four screw
holes allow the board to be attached to a surface or case. Note that the distance
between digital pins 7 and 8 is 160 mil
(0.16"), not an even multiple of the 100 mil spacing of the other pins.

UNIVERSITAS SUMATERA UTARA


LAMPIRAN IV
(DATA SHEET HC-SR04)

UNIVERSITAS SUMATERA UTARA


HC-SR04 User Guide

1. Ultrasonic Distance Measurement Principles

The transmitter emits a 8 bursts of an directional 40KHz ultrasonic wave when


triggered and starts a timer. Ultrasonic pulses travel outward until they encounter an

object, The object causes the the wave to be reflected back towards the unit. The
ultrasonic receiver would detect the reflected wave and stop the stop timer. The

velocity of the ultrasonic burst is 340m/sec. in air. Based on the number of counts by

the timer, the distance can be calculated between the object and transmitter The
TRD Measurement formula is expressed as: D = C X T which is know as the

time/rate/distance measurement formula where D is the measured distance, and R


is the propagation velocity (Rate) in air (speed of sound) and T represents time. In

this application T is devided by 2 as T is double the time

value from transmitter to object back to receiver.

2. Product Features

Features
� Stable performance (Xtal.)
� Accurate distance measurement
� High-density SMD Board
� Close Range (2cm)

Uses
� Robotics barrier
� Object distance measurement
� Level detection
� Security systems
� Vehicle detection/avoidance

UNIVERSITAS SUMATERA UTARA


3. Product Views

FRONT BACK

1 4 4 1

4. Module Pin Asignments

Pin Symbol Pin Function Description


1 VCC 5V power supply
2 Trig Trigger Input pin
3 Echo Receiver Output pin
4 GND Power ground

5. Electrical Specifications

WARNING
Do Not connect Module with Power Applied! Always apply power after connecting
Connect "GND" Terminal first

Electrical Parameters HC-SR04 Ultrasonic Module


Operating Voltage 5VDC
Operating Current 15mA
Operating Frequency 40KHz
Max. Range 4m
Nearest Range 2cm
Measuring Angle 15 Degrees
Input Trigger Signal 10us min. TTL pulse
TTL level signal, proportional to
Output Echo Signal
distance
Board Dimensions 1-13/16" X 13/16" X 5/8"
Board Connections 4 X 0.1" Pitch Right Angle Header Pins

UNIVERSITAS SUMATERA UTARA


6. Module Operation

Set Trig and Echo Low to initalize module. Place a minimum 10us High

level pulse to "Trigger" (module will automatically send eight 40KHz acoustic
bursts). At the same time, Gate the microcontroller timer to start timing.
Wait to capture the rising edge output of ECHO port to stop the timer. Now

read the time of the counter, which is the ultrasonic propagation time in the air.

According to the formula: Distance = (ECHO high level time X ultrasonic

velocity (Speed of Sound in air 340m/sec) / 2, you can calculate the distance to
the obstacle.

For best results and maximum range, the Object should be larger than 0.5M2

the nearer the target object, the smaller it may b

UNIVERSITAS SUMATERA UTARA


7. Module Timing

HC-SR04 ULTRASONIC MODULE

>50us

--10us--

Trigger

40KHz
Acoustic
Burst 8x40KHz

40KHz
Reflected
Signal

Output of
ECHO Pin
Propagation Delay
Dependent on Distance

Trigger 10us min. start measurement from microcontroller.


Max Rep. Rate: 50us
ECHO Output pulse to microcontroller, width is the time from last of 8 40KHz
bursts to detected reflected signal (microcontroller Timer gate signal)
Distance in cm = echo pulse width in uS/58
Distance in inch = echo pulse width in uS/148

Information obtained from or supplied by Mpja.com or Marlin P. Jones and Associates


inc. is supplied as a service to our customers and accuracy is not guaranteed nor is it
definitive of any particular part or manufacturer. Use of information and suitability for
any application is at users own discretion and user assumes all risk.

UNIVERSITAS SUMATERA UTARA

Anda mungkin juga menyukai