RANCANG BANGUN ALAT UKUR JARAK MENGUNAKAN SENSOR
ULTRASONIK BERBASIS ARDUINO UNO DENGAN TAMPILAN LCD
PROJEK AKHIR 2
TREVOR SHIELDS S
NIM. 142411055
PROGRAM STUDI D-3 METROLOGI DAN INSTRUMENTASI
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2018
UNIVERSITAS SUMATERA UTARA
RANCANG BANGUN ALAT UKUR JARAK MENGUNAKAN SENSOR
ULTRASONIK BERBASIS ARDUINO UNO DENGAN TAMPILAN LCD
PROJEK AKHIR 2
Disusun Sebagai Salah Satu Syarat
Untuk Menyelesaikan Program Pendidikan Diploma 3
PROGRAM STUDI D-3 METROLOGI DAN INSTRUMENTASI
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2018
UNIVERSITAS SUMATERA UTARA
UNIVERSITAS SUMATERA UTARA
PENGHARGAAN
Puji dan syukur saya ucapkan dan sembahkan kehadirat Tuhan Yang Maha
Esa. Karena atas berkat dan rahmat-Nya, saya dapat menyelesaikan laporan tugas
akhir ini. Laporan ini disusun sebagai salah satu persyaratan untuk menyelesaikan
pendidikan Diploma 3 pada program studi Metrologi Dan Instrumentasi, Fakultas
Matematika dan Ilmu Pengetahuan Alam, Universitas Sumatera Utara. Pada tugas
akhir 2 ini, penulis mengambil judul :
“RANCANG BANGUN ALAT UKUR JARAK MENGGUNAKAN
SENSORULTRASONIK BERBASIS ARDUINO UNO DENGAN
TAMPILAN LCD”
Penulis menyadari masih banyak kekurangan dalam penulisan laporan ini,
sehingga memerlukan bantuan berbagai pihak dalam penyusunan laporan ini.
Untuk itu, izinkanlah penulis menyampaikan penghargaan yang sebesar-besarnya
kepada :
1. Tuhan Yang Maha Esa, atas berkah dan rahmat-Nya yang telah Ia
curahkan kepada penulis dalam menyelesaikan laporan ini.
2. Drs. Kerista Sebayang, M.S, sebagai dekan Fakultas Matematika dan Ilmu
Pengetahuan Alam Universitas Sumatera Utara.
3. Ibu Dr. Diana Alemin Barus, M.Sc selaku ketua Program Studi D3
Metrologi dan InstrumentasiFakultas Matematika dan Ilmu Pengetahuan
Alam Universitas Sumatera Utara dan juga selaku Dosen Penguji di
projekakhir 2 ini.
4. Junedi Ginting, S.Si., M.Si selaku dosen pembimbing dalam projek akhir
ini.
5. Ayahanda Tumpak Sitorus dan Ibund tercinta Manna Manik yang telah
memberikan bantuan berupa dukungan moril dan materil yang sangat
membantu dalam menyelesaikan laporan projek akhir 2 ini.
6. Abangda Wira Morrer Sitorus yang memberikan bantuan dan bimbingan
untuk membuat alat untuk menyelesaikan laporan projekakhir 2 ini.
UNIVERSITAS SUMATERA UTARA
7. Seluruh Dosen dan Staf Program Studi D3 Metrologi Dan Instrumentasi
Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera
Utara.
8. Teman-teman Metrologi ’14, terkhusus untuk Metro A 2014 yang telah
memberikan dukungan.
9. Semua pihak yang turut membantu dalam pengerjakan Laporan projek
Akhir 2 ini yang tidak dapat disebutkan satu per satu.
Penulis menyadari, masih banyak kekurangan dalam laporan projekakhir 2
ini.Untuk itu penulis membutuhkan kritik serta saran yang membangun untuk
menyempurnakan laporan ini.Semoga laporan ini berguna baik sebagai referensi
maupun bahan panduan. Amin
Medan, 08 Februari 2018
Hormat saya,
Trevor Shields S
UNIVERSITAS SUMATERA UTARA
ABSTRAK
Pengukuran panjang menggunakan alat ukur panjang manual sering kali menghasilkan hasil ukur yang kurang akurat. Hal ini disebabkan oleh faktor kesalahan parallax pada manusia. Untuk itu dirancanglah sebuah alat ukur panjang yang memanfaatkan gelombang ultrasonic dari sensor HC-SR04 yang akan membantu mengurangi kesalahan nilai akibat parallax error. Hasil pengukuranditampilkan dalam liquid crystal display 16 x 2 untuk memudahkan pembacaan. Perancangan ini dikendalikan melalui kit Arduino Uno R3 berbasis ATMEGA 328 P yang diimplementasikan dalam sebuah plat plastik sebagai tempat rangkaian.
Kata Kunci: HC-SR04, Arduino Uno, Ultrasonic Ruler, LCD
UNIVERSITAS SUMATERA UTARA
ABSTRACT
The manual distance measuring instrument, in fact, having a problem with its data because of parallax error repeatedly. To decrease the error, the ultrasonic distance range (ultrasonic ruler) was designed. Using the HC-SR04, this instrument will help peoples measuring accurately. The data displayed on LCD module (liquid crystal display) sized 16 x 2. This instrument controlled by Arduino Uno R3 Kit based on ATMEGA 328 P, and implemented on the plastic plat as it place and cover.
Keywords: HC-SR04, Arduino Uno, Ultrasonic Ruler, LCD
UNIVERSITAS SUMATERA UTARA
DAFTAR ISI
Halaman
PENGHARGAAN............................................................................................... i
ABSTRAK ........................................................................................................... iii
ABSTRACT......................................................................................................... iv
DAFTAR ISI .......................................................................................................v
DAFTAR GAMBAR...........................................................................................vii
DAFTAR TABEL ..............................................................................................viii
BAB I. PENDAHULUAN................................................................................. 1
1.1. Latar Belakang .............................................................................1
1.2. RumusanMasalah ......................................................................... 2
1.3. TujuanPenulisan ........................................................................... 2
1.4. Batasan Masalah ........................................................................... 3
1.5. Metode Penulisan .......................................................................... 3
1.6. Sistematika Penulisan ................................................................... 3
BAB II. LANDASAN TEORI ........................................................................... 5
2.1. Gelombang Ultrasonik Sebagai Alat Ukur Panjang...................... 8
2.2. Ultrasonic Ranging Module HC-SR04 ......................................... 9
2.2.1. Konfigurasi PIN HC-SR04 .................................................15
2.2.2. PrinsipKerja Sensor Ultrasonik HC-SR04..........................16
2.3. Arduino Uno R3 Kit......................................................................18
2.3.1 SpesifikasiArduino Uno R3 Kit ...........................................21
2.4. LCD (Liquid Crystal Display) ......................................................24
2.4.1. Pengalamatan pada Display LCD .......................................25
2.4.2. Prinsip Kerja Liquid Cystal Display ...................................25
2.5. Potensiometer................................................................................27
2.6. Software Arduino 1.6 ....................................................................30
BAB III. PERANCANGAN SISTEM ...............................................................37
3.1. Diagram Blok Sistem ....................................................................37
3.2. Layout Rangkaian Ultrasonic Ruler..............................................38
3.3. Flowchart Sistem...........................................................................39
UNIVERSITAS SUMATERA UTARA
BAB IV. ANALISIS DAN PENGUJIAN ..........................................................41
4.1. Pengujian Sensor HC-SR04 ..........................................................41
4.1.1. Pengukuran Jarak Objek Secara Langsung.........................41
4.1.2. Pengukuran Jarak Objek dengan Bantuan Mistar baja .......41
4.2. PengujianFungsi LCD...................................................................42
4.3. Analisis Data Hasil Pengukuran ...................................................43
BAB V. KESIMPULAN DAN SARAN .............................................................45
5.1. Kesimpulan ...................................................................................45
5.2. Saran..............................................................................................46
DAFTAR PUSTAKA………………………………………………………….47
LAMPIRAN I.......................................................................................................48
LAMPIRAN II.....................................................................................................52
LAMPIRAN III...................................................................................................55
LAMPIRAN IV...................................................................................................56
UNIVERSITAS SUMATERA UTARA
DAFTAR GAMBAR
Nomor Gambar Nama Gambar Halaman
2.1. Profil Pengukuran 6
2.2. Sensor Ultrasonik HC-SR04 11
2.3. Sistem Pewaktu pada Sensor HC-SR04 11
2.4. Cara Kerja Sensor Ultrasonik 14
2.5. Arduino Uno 18
2.6. Pengalamatan Pada LCD 25
2.7.Struktur Internal Potensiometer beserta bentuk
dan Simbolnya27
2.8. Tampilan Awal Software Arduino 1.6 31
3.1. Diagram Blok Sistem Ultrasonic Ruler 37
3.2. Rangkaian Ultrasonic Ruler 38
3.3. Flowchart Sistem Ultrasonic Ruler 39
UNIVERSITAS SUMATERA UTARA
DAFTAR TABEL
Nomor Tabel Nama Tabel Halaman
2.1 Konfigurasi PIN HC-SR04 15
2.2 Spesifikasi Arduino Uno R3 21
4.1 Data Hasil Pengukuran Jarak Objek Secara Langsung 41
4.2 Data Pengukuran Objek dengan Bantuan Mistar Baja 42
UNIVERSITAS SUMATERA UTARA
BAB I
PENDAHULUAN
10. Latar Belakang
Panjang adalah salah satu besaran pokok, dimana setiap besaran pokok
memiliki alat ukur sendiri. Salah satu satuan dalam panjang adalah meter. Alat
ukur panjang adalah instrument (alat) yang di gunakan untuk menghitung besaran
panjang, dan biasanya dalam satuan meter dan cm. Contoh alat ukur panjang
adalah 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.
Dalam proses pengujian alat ukur, takar, timbang dan perlengkapannya
(UTTP), alat ukur panjang cukup memberikan peranan yang signifikan. Salah
satunya adalah dalam proses industri, khususnya manufaktur tangki ukur mobil.
Pengukuran panjang terstandar merupakan salah satu poin penting utama dalam
menentukan bagaimana kualitas suatu produk tangki ukur mobil. Selain itu, pada
pengujian tangki ukur mobil juga digunakan alat ukur panjang. Namun, seringkali
alat ukur panjang menyebabkan kesalahan.
Jika diinginkan hasil pengukuran yang valid, maka perlu dilakukan
pengukuran berulang ,misalnya dalam penentuan nilai konsentrasi suatu zat dalam
larutan dimana perlu dilakukan pengukuran berulang sebanyak n kali. Dari data
tersebut dapat diperoleh pendekatan harga nilai terukur yaitu melalui perhitungan
rata-rata dari hasil yang diperoleh dan standar deviasi.
UNIVERSITAS SUMATERA UTARA
Salah satu kendala alat ukur manual (khususnya yang menggunakan
penglihatan) untuk mengetahui sebuah nilai adalah potensi kesalahan paralaks.
Kesalahan paralaks sendiri merupakan bentuk kesalahan pembacaan hasil ukur
yang disebabkan oleh keterbatasan fungsi penglihatan. Tentunya, kesalahan
seperti ini akan menimbulkan beberapa dampak, salah satunya adalah nilai terukur
menjadi tidak sah kebenarannya. Dalam kaitan industri, terutama yang
memanfaatkan pengukuran sebagai salah satu indeks kualitas, hal tersebut tidak
dapat ditolerir. Hal tersebut dikarenakan akan berdampak langsung pada kualitas
hasil produksi yang dihasilkan oleh proses produksi massal.
1.2. Rumusan Masalah
Pada laporan projek akhir 2 ini akan mendeskripsikan bagaimana sebuah
ultrasonic ruler dapat melakukan pengukuran panjang. Alat ini dibangun
darisensor ultrasonik HC-SR04 dengan memanfaatkan Arduino Uno R3 Kit
sebagai pengendali lengkap dengan aplikasi pemrogramannya. Hasilnya akan
ditampilkan dalam LCD (liquid crystal display)
1.3 Tujuan Penelitian
1. Untuk membandingkan nilai antara alat ukur panjang manual dengan
ultrasonic ruler, mengetahui besar kesalahan alat dan unjuk kerja
alatdalam melakukan pengukuran
2. Untuk mengetahui prinsip kerja alat ukur jarak/ ultrasonic ruler yang
dirancang
3. Untuk membuat prototype alat ukur jarak digital berbasis mikrokontroler
Arduino Uno R3 menggunakan sensor HC-SR04
UNIVERSITAS SUMATERA UTARA
1.4. Batasan Masalah
Pengukuran panjang menggunakan rancangan alat ukur jarak/ ultrasonic
rulerdibatasi oleh beberapa permasalahan, antara lain ;
1. Sensor yang digunakan adalah sensor ultrasonik tipe HC-SR04, merupakan
salah satu jenis sensor ultrasonik yang umum digunakan dalam perancangan
sederhana alat ukur jarak
2. Setiap diagram blok rangkaian yang membangun sistem dibahas secara
sederhana. bukan pada ketelitian yang akurat
3. Alat pembanding yang digunakan adalah mistar ukur konvensional bukan
standar ukuran panjang. Hal ini disebabkan perancangan alat cukup sederhana
dan belum mengimbangi teknologi standar ukuran panjang dalam sistem
internasional
4. Komponen dan software yang digunakan akan dibahas secara sederhana,
meliputi fungsi dan cara kerjanya yang berhubungan dengan alat yang di buat
1.5. Metode Penelitian
Metode penelitian yang digunakan adalah studi literatur dan juga
pengamatan langsung. Studi literatur digunakan untuk melengkapi kajian teoritis
yang menjadi bahan bahasan dalam sistem perancangan alat.Pengamatan langsung
dilakukan dengan membandingkan nilai hasil pengukuran menggunakan alat ukur
manual dan juga alat ukur yang dirancang.
1.6. Sistematika Penulisan
Dalam penyusunan laporan projek akhir 2 ini, pembahasan mengenai alat
ukur jarak/ ultrasonic ruler dibagi atas beberapa bab, antara lain ;
UNIVERSITAS SUMATERA UTARA
BAB I : PENDAHULUAN
Bab ini berisikan mengenai latar belakang pembuatan alat, rumusan
permasalahan, tujuan penelitian, batasan masalah yang diangkat, metode
penelitian dan juga sistematika penulisan laporan
BAB II : KAJIAN TEORITIS
Bab ini berisikan kajian teoritis yang berhubungan dengan alat yang
dibuat. Mencakup teori komponen-komponen yang digunakan hingga
program pendukung programming pada alat
BAB III : PERANCANGAN ALAT
Bab ini berisi mengenai perencanaan pembuatan alat secara keseluruhan,
mulai dari diagram blok sistem sampaiflowchart pengujian
BAB IV : ANALISA DAN PENGUJIAN
Bab ini berisikan mengenai proses uji coba alat ukur, prosedur
pengoperasian alat, pengolahan data alat dan lain-lain
BAB V : PENUTUP
Bab ini berisikan kesimpulan laporan projek akhir 2 dan saran-saran
terhadap laporan maupun pengembangan alat
DAFTAR PUSTAKA
Pada bagian ini berisi sumber-sumber kepustakaan yang digunakan dalam
penulisan laporan maupun perancangan alat ukur
UNIVERSITAS SUMATERA UTARA
BAB II
LANDASAN TEORI
Setiap aktifitas kehidupan kita sehari-hari, tidak mungkin pernah terlepas
dari kegiatan ukur mengukur, baik untuk skala kecil ataupun besar. Hal ini karena
dari pengukuran dapat ditentukan kuantitas dan kualitas dari sebuah objek. Hasil
pengukuran yang baik dari suatu kuantitas objek, dapat ditentukan berdasarkan
tingkat presisi dan akurasi yang dihasilkan. Akurasi menunjukkan kedekatan nilai
hasil pengukuran dengan nilai sebenarnya. Untuk menentukan tingkat akurasi
perlu diketahui nilai sebenarnya dari besaran yang diukur dan kemudian dapat
diketahui seberapa besar tingkat akurasinya. Presisi menunjukkan tingkat
keandalan dari data pengukuran yang diperoleh. Hal ini dapat dilihat dari standar
deviasi yang diperoleh dari pengukuran, presisi yang baik akan memberikan
standar deviasi yang kecil dan bias yang rendah. Jika diinginkan hasil pengukuran
yang valid, maka perlu dilakukan pengukuran berulang, misalnya dalam
penentuan nilai konsentrasi suatu zat dalam larutan dimana perlu dilakukan
pengukuran berulang sebanyak n kali. Dari data tersebut dapat diperoleh
pendekatan harga nilai terukur yaitu melalui perhitung an rata-rata dari hasil yang
diperoleh dan standar deviasi. Ilustrasi sederhana untuk menjelaskan perbedaan
antara presisi, akurasi dan bias dari suatu hasil pengukuran dapat dinyatakan
sebagaimana pada gambar 2.1.
Gambar 2.1.profil pengukuran
UNIVERSITAS SUMATERA UTARA
Gambar 2.1.memberikan ilustrasi sederhana tentang target hasil dari
olahraga menembak atau memanah yang polanya dapat dianalogikan dengan pola
hasil pengukuran analitik yang ideal. Pada gambar 1 (a) distribusi data cukup baik
dan mendekati data aslinya.Hasil data dikatakan presisi dan akurat atau tidak
menyimpang.Gambar 1 (b) menunjukkan distribusi data yang presisi, tetapi
menyimpang dari target yang sebenarnya berarti data dikatakan tidak
akurat.Gambar 1 (c) menggambarkan distribusi data yang menyebar dan hal ini
menunjukkan bahwa data yang diperoleh tidak presisi.
2.1. Ultrasonic Ranging Module 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 - 4m 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.
Piezoelektrik berfungsi untuk mengubah energi listrik menjadi energi mekanik.
Bahan piezoelektrik adalah material yang memproduksi medan listrik ketika
dikenai regangan atau tekanan 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
UNIVERSITAS SUMATERA UTARA
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.
Gambar 2.1.1. Sensor Ultrasonik 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
UNIVERSITAS SUMATERA UTARA
menentukanjarak benda tersebut.Rumus untuk menghitungnya sudah saya
sampaikan di atas. Berikut adalah visualisasi dari sinyal yang dikirimkan oleh
sensor HC-SR04
Gambar 2.1.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;
1. Memerlukan tegangan 5 V DC untuk melakukan kerja
2. Memerlukan arus sebesar 15 mA untuk melakukan kerja
3. Frekuensi yang dihasilkan sebesar 40 Hz
4. Maximum range yang dapat dijangkau oleh HC-SR04 adalah 400 cm
(4m), O HC-SR04 adalah sebesar 2 cm sehingga range ukurnya adalah 2
cm < range >400 cm
5. Sensor dapat mengukur dalam jangkauan sudut sebesar 15 derajat.
UNIVERSITAS SUMATERA UTARA
Pemanfaatan teknologi saat ini sangat berpengaruh pada kehidupan
manusia sehari-hari. Mulai dari teknologi yang paling kecil sampai pada
yang sangat canggih.
2.2. Prinsip Kerja Sensor Ultrasonik HRC-04
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 .
UNIVERSITAS SUMATERA UTARA
Gambar 2.2.1. Cara Kerja Sensor Ultrasonik
Secara detail, cara kerja sensor ultrasonik adalah sebagai berikut:
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
UNIVERSITAS SUMATERA UTARA
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.
2.3.Konfigurasi PIN HC-SR04
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 ;
Tabel 2.3.. Konfigurasi PIN HC-SR04
No.PIN Nama
Pin
Fungsi dan Konfigurasi
1 VCC Terhubung ke tegangan 5V DC
2 Trig Untuk mengirim gelombang Ultrasonic
3 Echo Untuk menerima pantulan gelombang
ultrasonic
4 GND Terhubung ke ground
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
UNIVERSITAS SUMATERA UTARA
(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
UNIVERSITAS SUMATERA UTARA
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.
2.3. Arduino Uno R3 Kit
Merupakan modul mikrokontroler yang menggunakan ATMEGA 328 P,
yang memiliki fungsi utama sebagai unit pengolah data dan pusat kendali data
yang akan ditampilkan. Arduino Uno sendiri merupakan pengembangan teknologi
mikrokontroler modern yang berbasis pada easy programming, easy to configure
dan user friendly. Dalam paket kit Arduino sendiri terdapat 6 pin yang dapat
dijadikan keluaran/ output PWM, 6 pin sebagai masukan analog, 16 MHz osilator
Kristal, koneksi USB, jack liatrik hingga tombol reset. Gambar fisik Arduino uno
dapat dilihat dibawah;
Gambar 2.5. Arduino Uno
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
UNIVERSITAS SUMATERA UTARA
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, 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
UNIVERSITAS SUMATERA UTARA
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
Sirkuit 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.
2.4. Spesifikasi Arduino Uno R3
Secara umum, spesifikasi kit Arduino Uno R3 dapat dilihat padatabel
berikut ini :
UNIVERSITAS SUMATERA UTARA
Tabel 2.2. Spesifikasi Arduino Uno R3
Mikrokontrorel Atmega 328
Operating voltage 5 V
Input voltage 7 – 12 V (recommended)
Input voltage 6 – 20 V (limit)
Digital I/O pins 14 ( 6 provide PWM output)
Analog input pins 6
DC current/ I/O
pins
40 mA
DC Current fot 3,3 V pin 50 mA
Flash memory 32 KB
SRAM/ EPROM 2 KB/ 1 KB
Clock Speed 16 Mhz
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
UNIVERSITAS SUMATERA UTARA
tidak stabil. Jika menggunakan suplai yang lebih dari besar 12 Volt, voltage
regulator bisa kelebihan panas dan membahayakan board Arduino uno.
2.5. LCD (Liquid Crystal Display)
Liquid Crystal Display adalah suatu jenis media tampil yangmenggunakan
kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang
misalnya alal–alat elektronik seperti televisi, kalkulator, ataupun layar komputer.
Pada bab ini aplikasi LCD yang dugunakan ialah LCD dot matrik dengan jumlah
karakter 2 x 16. LCD sangat berfungsi sebagai penampil yang nantinya akan
digunakan untuk menampilkan status kerja alat. Adapun fitur yang disajikan
dalam LCD ini adalah :
1. Terdiri dari 16 karakter dan 2 baris
2. Mempunyai 192 karakter tersimpan
3. Terdapat karakter generator terprogram
4. Dapat dialamati dengan mode 4-bit dan 8-bit
5. Dilengkapi dengan back light.
6. Tersedia VR untuk mengatur kontras.
7. Pilihan konfigurasi untuk operasi write only atau read/write.
8. Catu daya 5 Volt DC.
9. Kompatibel dengan DT-51 dan DT-AVR Low Cost Series serta sistem
mikrokontroler/mikroprosesor lain.
2.5.1. Pengalamatan Pada Display LCD
Display pada LCD juga memiliki pengalamatan tertentu, sepertihalnya
seven segment. Pengalamatan tersebut digunakan pada saat akanprogramming
UNIVERSITAS SUMATERA UTARA
LCD untuk menampilkan karakter tertentu. Alamat-alamatnya dapat dilihat pada
gambar dibawah ini ;
Gambar 2.5.1.. Pengalamatan pada LCD
2.5.2. Prinsip Kerja Liquid Crystal Display
Pada aplikasi umumnya RW diberi logika rendah “0”.Bus data terdiri dari
4-bit atau 8-bit.Jika jalurdata 4-bit maka yang digunakan ialah DB4 sampai
denganDB7. Sebagaimana terlihat pada table diskripsi, interface LCD merupakan
sebuah parallel bus, dimana 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
4-bit yang digunakan, maka 2 nibble data dikirim untuk membuat sepenuhnya 8-
bit (pertama dikirim 4-bit MSB lalu 4-bit LSB dengan pulsa clock EN setiap
nibblenya). 19 Jalur kontrol EN digunakan untuk memberitahu LCD bahwa
mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD
program harus menset EN ke kondisi high “1” dan kemudian menset dua jalur
kontrol 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
(tergantung pada datasheet LCD), 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
UNIVERSITAS SUMATERA UTARA
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 kontrol 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 (pembacaan) data dari LCD. Instruksi pembacaan hanya satu, yaitu get
LCD status (membaca status LCD), lainnya merupakaninstruksi penulisan. Jadi
hampir setiap aplikasi yang menggunakanLCD,R/W selalu disetke “0”. Jalur data
dapat terdiri 4 atau 8 jalur(tergantung modeyang dipilih pengguna), DB0, DB1,
DB2,DB3, DB4, DB5,DB6 dan DB7. Mengirim data secara parallel baik4-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/O (3 pin untuk
kontrol, 8 pin untuk data).Sedangkan mode 4 bit minimal hanya membutuhkan 7-
bit (3 pin untuk kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih
apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD.
Jika bit ini di set (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. Potensiometer
Dalam Peralatan Elektronik, sering ditemukan Potensiometer yang
berfungsi sebagai pengatur Volume di peralatan Audio / Video seperti Radio,
Walkie Talkie, Tape Mobil, DVD Player dan Amplifier. Potensiometer juga
UNIVERSITAS SUMATERA UTARA
sering digunakan dalam Rangkaian Pengatur terang gelapnya Lampu (Light
Dimmer Circuit) dan Pengatur Tegangan pada Power Supply (DC Generator)
Potensiometer adalah salah satu jenis Resistor yang Nilai Resistansinya
dapat diatur sesuai dengan kebutuhan Rangkaian Elektronika ataupun kebutuhan
pemakainya. Potensiometer merupakan Keluarga Resistor yang tergolong dalam
Kategori Variable Resistor.Secara struktur, Potensiometer terdiri dari 3 kaki
Terminal dengan sebuah shaft atau tuas yang berfungsi sebagai pengaturnya.
Gambar dibawah ini menunjukan Struktur Internal Potensiometer beserta bentuk
dan Simbolnya.
Gambar 2.6.1. Struktur Internal Potensiometer beserta bentuk dan Simbolnya
Potensiometer biasanya di gunakan untuk pengoprasian pengendali elektronik,
seperti penguat sinyal, pengaturan suara, pengaturan intensitas, sebagai tranduser,
pengendali masukan dan keluaran sebuah perangkat elektronik.Contoh yang biasa
di gunakan sebagai tranduser adalah sebagai sensor joystick yang dapat kita
gunakan dari jarak jauh.Potensiometer sangat jarang di gunakan untuk
mengendalikan daya yang besar secara langsung.Untuk pengendali volume yang
menggunakan potensiometer biasanya di lengkapi dengan saklar yang sudah
terintegrasi, sehingga pada saat potensiometer membuka saklar penyapu berada
UNIVERSITAS SUMATERA UTARA
pada posisi terendah.Kebanyakan dari komponen ini di gunakan pada rangkaian
power amplifier sebagai pengatur volume, bass dan treble.Dan juga di gunakan
dalam Control Motor DC yang berfungsi sebagai pengatur kecepatan putaran
motor. Nilai dari potensiometer dapat berubah sesuai dengan perputaran ataupun
pergeseran yang di hasilkan. Range yang di hasilkan juga bervariasi, misalnya
nilai yang tertera pada potensio adalah 100k ohm, maka range resistansi
akandimulai dari tahanan 0 ohm sampai dengan 100k ohm. Jadi dengan begitu,
nilai yang di hasilkan dari sebuah tahanan potensio terbukti berubah-ubah.
Dengan kemampuan yang dapat mengubah resistansi atau hambatan,
potensiometer sering digunakan dalam rangkaian atau peralatan Elektronika
dengan fungsi-fungsi sebagai berikut :
Sebagai pengatur Volume pada berbagai peralatan Audio/Video seperti
Amplifier, Tape Mobil, DVD Player.
Sebagai Pengatur Tegangan pada Rangkaian Power Supply
Sebagai Pembagi Tegangan
Aplikasi Switch TRIAC
Digunakan sebagai Joystick pada Tranduser
Sebagai Pengendali Level Sinyal
Berdasarkan bentuknya, Potensiometer dapat dibagi menjadi 3 macam, yaitu
1. Potensiometer Slider, yaitu Potensiometer yang nilai resistansinya dapat diatur
dengan cara menggeserkan Wiper-nya dari kiri ke kanan atau dari bawah ke
atas sesuai dengan pemasangannya. Biasanya menggunakan Ibu Jari untuk
menggeser wiper-nya.
UNIVERSITAS SUMATERA UTARA
2. Potensiometer Rotary, yaitu Potensiometer yang nilai resistansinya dapat
diatur dengan cara memutarkan Wiper-nya sepanjang lintasan yang melingkar.
Biasanya menggunakan Ibu Jari untuk memutar wiper tersebut. Oleh karena
itu, Potensiometer Rotary sering disebut juga dengan Thumbwheel
Potentiometer.
3. Potensiometer Trimmer, yaitu Potensiometer yang bentuknya kecil dan harus
menggunakan alat khusus seperti Obeng (screwdriver) untuk memutarnya.
Potensiometer Trimmer ini biasanya dipasangkan di PCB dan jarang
dilakukan pengaturannya.
Prinsip Kerja (Cara Kerja) Potensiometer Sebuah Potensiometer (POT)
terdiri dari sebuah elemen resistif yang membentuk jalur (track) dengan terminal
di kedua ujungnya.Sedangkan terminal lainnya (biasanya berada di tengah) adalah
Penyapu (Wiper) yang dipergunakan untuk menentukan pergerakan pada jalur
elemen resistif (Resistive).Pergerakan Penyapu (Wiper) pada Jalur Elemen
Resistif inilah yang mengatur naik-turunnya Nilai Resistansi sebuah
Potensiometer.Elemen Resistif pada Potensiometer umumnya terbuat dari bahan
campuran Metal (logam) dan Keramik ataupun Bahan Karbon
(Carbon).Berdasarkan Track (jalur) elemen resistif-nya, Potensiometer dapat
digolongkan menjadi 2 jenis yaitu Potensiometer Linear (Linear Potentiometer)
dan Potensiometer Logaritmik (Logarithmic Potentiometer).
2.7. Bahasa Pemograman C++
Setiap mikrokontroler yang digunakan dalam perancangan sistem tidak
lepas daripada pemrograman untuk menghasilkan peforma yang kita inginkan.
Pemrograman sendiri memiliki karakteristik bahasa tersendiri, tidak sama antar
satu bahasa dan bahasa yang lain. Macam-macam bahasa pemrograman yang
UNIVERSITAS SUMATERA UTARA
digunakan dalam sistem antara lain bahasa pascal, bahasa c, bahasa assembly dan
lain sebagainya.Peranan bahasa pemrograman juga signifikan. Selain berfungsi
sebagai interfacing antara alat/ komponen dan juga lingkungan luar alat,
bahasapemrograman ini juga memaksimalkan juga membangkitkan fungsi alat
yang akan diprogram. Dalam kaitannya dengan sistem alat ukur yang dibangun,
bahasa pemrograman digunakan untuk membuat mikrokontroler yang digunakan
dalam sistem dapat sejalan dengan tujuan pengukuran tersebut.
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.
UNIVERSITAS SUMATERA UTARA
Gambar 2.7.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.
UNIVERSITAS SUMATERA UTARA
Bahasa C juga mempunyai banyak keuntungan dibanding 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.
Bahas C mempunyai beberapa kelebihan dibandingkan bahasa lain seperti
assembly, diantaranya: Bahasa C tersedia hampir di semua jenis komputer, kode
Bahasa C bersifat portable, berbagai struktur data dan pengendalian proses
disediakan dalam Bahasa C sehingga pembuatan program lebih terstruktur, mudah
dipahami tanpa harus mengetahui mesin secara detail, memungkinkan manipulasi
data dalam bentuk bit maupun byte.
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.
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 fungsi-
fungsi 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++.
UNIVERSITAS SUMATERA UTARA
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 bagian-
bagian 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.
Bahasa C memiliki beberapa elemen dasar seperti ;
- 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
UNIVERSITAS SUMATERA UTARA
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.
Dibawah ini adalah contoh program bahasa C:
#include
<stdio.h> int
main()
{
int a,b,c;
printf("Enter the first
value:”); scanf(“%d”,&a);
printf("Enter the second
value:”); scanf(“%d”,&b);
c = a + b;
printf("%d + %d = %d\n",a,b,c);
return 0
}
Dari contoh diatas dapat disimpulkan bahwa struktur program bahasa C adalah:
UNIVERSITAS SUMATERA UTARA
- 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()
UNIVERSITAS SUMATERA UTARA
BAB III
PERANCANGAN SISTEM
3.1. Diagram Blok Sistem
Rancangan suatu sistem terlebih dahulu dinyatakan dalam diagram blok.
Diagram blok merupakan salah satu bentuk cara merancang alat berdasarkan dasra
teori yang ada. Selain daripada bentu translasi teori ke perancangan, diagram blok
merupakan cara termudah untuk memahami cara kerja suatu sistem.
Penggunaan diagram blok memungkinkan kita untuk menganalisa cara
kerja rangkaian dan merancang hardware yang akan dibuat secara umum.
diagram sendiri adalah pernyataan hubungan yang berurutan dari satu atau lebih
komponen yang memiliki satuan kerja tersendiri, dan setiap blok komponen
mempengaruhi komponen lainnya
Gambar 3.1. Diagram Blok Sistem Ultrasonic Ruler
Fungsi masing-masing blok adalah sebagai berikut :
Blok TX Merupakan sinyal analog yang dipancarkanoleh modul
transceiver sensor ke benda yangakan diukur jaraknya.
Blok RX Merupakan sinyal analog yang terpantul kembali ke receiver
sensor dari benda yang diukur jaraknya
TX RXSENSOR
ULTRASONIKARDUINO
UNODISPLAY
LCD
BATERAI
UNIVERSITAS SUMATERA UTARA
Blok Sensor Ultrasonik Merupakan sinyal analog yang terpantul
kembali ke receiver sensor dari benda yang diukur jaraknya dan RX.
Blok Arduino Uno R3: Sebagai pengolah sinyal, merubah sinyalAnalog
ke digital selanjutnya akan ditampilkan ke LCD
Blok Baterai Sebagai sumber tenaga/ daya utama dalam sistem.
Blok Display LCD Sebagai penampil hasil pengukuran yang dilakukan
oleh sistem
3.2 Rankaian Alat Pengukur Jarak
Sistematika perancangan rangkaian ultrasonic ruler/ alat ukur jarak dibuat
menggunakan Microsoft Visio 2010. Software Visio sendiri dapat didownload
secara gratis maupun berbayar pada official site Microsoft Corp. ataupun
penyedia layanan download software lainnya. Skematik rangkaian dibuat secara
nyata dengan memperhatikan detail rangkaian yang terpasang pada printed
circuitboard. Skematik rangkaian pada alat ukur jarak/ ultrasonic ruler adalah
seperti dibawah ini ;
Gambar 3.2 : Rangkaian Alat Pengukur Jarak
UNIVERSITAS SUMATERA UTARA
3.3. Diagram Alir
\
\
Gambar 3.3. Flowchart Sistem Ultrasonic Ruler
Penjelasan Flowchart ;
1. Analog signal transmission to trigger dan Analog signal Tranmision from
the thing to the echo adalah prosespengiriman sinyal analog sensor kepada
benda yang akan diukur, lalu sinyal dipantulkan kembali. Jadi terjadi dua
kali transmisi sinyal.
2. Analog to Digital Conversion, merupakan proses inti yang dilakukan
olehmikrokontroler untuk pengolahan sinyal dan ditampilkan ke display
LCD
POWER ON
ANALOG SIGNAL TRANSMISSION
TO TRIGGER
ANALOG SIGNAL TRANSMISSION
FROM THE THING TO THE ECHO
ANALOG TO DIGITAL CONVERSION
RANGE DISPLAYED
END
UNIVERSITAS SUMATERA UTARA
3. Inisialisasi jarak, merupakan inisialisasi jarak pengukuran yang akan
mengaktifkan display LCD .
4. Penampilan hasil jarak ukur, adalah proses final dalam pengukuran. Hasil
ukur yang telah diolah mikrokontroler ditampilkan dalam karakter abjad
dan angka melalui LCD.
UNIVERSITAS SUMATERA UTARA
BAB IV
ANALISIS DAN PENGUJIAN
4.1. Pengujian Sensor HC-SR04
4.1.1. Pengukuran Jarak Objek Secara Langsung
Pengujian pertama ini dilakukan untuk mengetahui unjuk kerja alat
sebenarnya. Pengujian ini dilakukan dengan cara mengukur jarak/ panjang objek
tertentu yang telah diukur jaraknya terlebih dahulu. Artinya, objek diletakkan
pada jarak tertentu, sehingga secara otomatis sensor akan menampilkan jarak
benda tersebut. Data yang diperoleh adalah sebagai berikut ;
Tabel 4.1. Data Hasil Pengukuran Jarak Objek Secara Langsung
Pengujian
ke-
Jarak Benda
Menggunakan mistar
Pembacaan Alat Rata-Rata
1
30 cm
30 cm
29,6 cm2 29 cm
3 30 cm
4
60 cm
59 cm
59,3 cm5 60 cm
6 59 cm
7
90 cm
89 cm
89 cm8 88 cm
9 90 cm
Pengujian dilakukan sebanyak 3, seri pertama adalah pengukuran pada
jarak 30 cm, seri kedua 60 cm, ketiga 90 cm.
UNIVERSITAS SUMATERA UTARA
4.2. Pengujian Fungsi LCD
Pengujian ini dilakukan untuk menunjukkan peforma LCD dalam
menampilkan karakter tertentu. Pengujian dilakukan melalui pemrograman setelah
sebelumnya LCD dihubungkan ke Arduino Uno R3. Programnya adalah sebagai
berikut ;
lcd.clear();
lcd.setCursor(1,0);
lcd.print("TREVOR SHIELDS S ");
lcd.setCursor(4,1);
lcd.print("142411055");
delay(1000);//wait for 1 sec
Hasilnya adalah LCD menampilkan karakter Trevor Shields S pada baris pertama
dan juga 142411055 pada baris kedua dengan posisi sesuai alamat yang dituju.
4.3. Analisis Data Hasil Pengukuran
Berdasarkan pengukuran menggunakan alat ukur jarak telah didapatkan
data seperti tabel di atas. Pada masing-masing pengujian didapatkan kesalahan
hasil ukur alat sebagai berikut ;
1. Kesalahan rata-rata(%) pada jarak 30 cm
ℎ = 30 − 29,630 ∗ 100% = 0, 01%
2. Kesalahan rata-rata(%) pada jarak 60 cm
ℎ = 60 − 59,360 ∗ 100% = 0.23%
UNIVERSITAS SUMATERA UTARA
3. Kesalahan rata-rata(%) pada jarak 90 cm
ℎ = 90 − 8990 ∗ 100% = 0, 01%
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 beberapa faktor, antara lain ;
- Menurut datasheet HC-SR04, Luas area pengukuran tidak lebih dari 0.5 meter
persegi. Track uji yang di buat berukuran 0.6 meter persegi
- Sudut pengujian yang mungkin melebihi spesifikasi yang ditujukan kepada HC-
SR04 yakni 15 derajat. Selain itu, permukaan benda pantul yang kurang rata akan
mempengaruhi hasil pengukuran
- Penggunaan timah solder yang kurang baik, baik dari segi manufaktur maupun
kualitas timah. Hal ini akan berpengaruh pada transmisi sinyal listrik yang sangat
penting bagi kemampuan kendali mikrokontroler maupun kemampuan deteksi
sensor
- Kondisi ruangan yang secara nyata accessible, artinya udara dan partikel lain
bebas untuk berkeliaran. Udara dari pendingin maupun udara nafas akan
mempengaruhi hasil ukur dari sensor
- Kondisi lantai ukur yang kurang stabil, artinya masih ada gundukan kecil-kecil
yang mengganggu transmisi sinyal ultrasonik yang dipancarkan ke objek
pengukuran
UNIVERSITAS SUMATERA UTARA
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
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 %
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.
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.1. Saran
1. Pada saat melakukan percobaan disarankan menunggu beberapa detik agar
sensor ultrasonic dapat bekerja lebih maksimal.
2. Pada saat ingin melakukan percobaan supaya kita 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.
UNIVERSITAS SUMATERA UTARA
DAFTAR PUSTAKA
Adrianto, Heri (2013). Pemrograman Mikrokontroler Arduino MenggunakanBahasa C (CodeVisionAVR). Bandung: Penerbit INFORMATIKA
Bejo, Agus. 2005. C & AVR Rahasia Kemudahan Bahasa C dalam Mikrokontroler Arduino uno. Edisi Pertama. Yogyakarta: Gava Media Charles L. Philips, Royce D. Harbor, Sistem Kontrol, Penerbit PT Prenhallindo, Jakarta,
Budiharto, Widodo (2005). Elektronika Digital + Mikroprosesor. Yogyakarta: Penerbit ANDI
Budiharto, Widodo (2011). Aneka Proyek Mikrokontroler. Edisi Pertama. Yogyakarta : Graha Ilmu
http://matrudian.wordpress.com/2010/12/05/analog-to-digital-converter-adc/.Rudy, Analogto Digital Converter (ADC)
http://klinikrobot.com/projects/104-pengukuran-jarak-menggunakan-sensorultrasonik-hc-sr04-dengan-mikrokontroler-arduino-uno-r3-dan-modulserial-lcd-20x4.html
http://blog.famosastudio.com/2011/12/bengkel/menggunakan-ultrasonic-rangesensor-hc-sr04-dan-sdm-io/458
UNIVERSITAS SUMATERA UTARA
Lampiran Program Ultrasonic Ruler
//Libraries#include <Ultrasonic.h>#include <LiquidCrystal.h>
//Setup connection with LCD and HC-SR04LiquidCrystal lcd(11, 9, 5, 4, 3, 2);Ultrasonic ultrasonic(A0,A1);
void setup() { //Lcd initlcd.begin(16, 2); //16 rows, 2 columns}
void loop(){lcd.clear();lcd.print(" Ardumotive ;) "); // You can change this message.lcd.setCursor(0, 1);lcd.print("Distance: ");lcd.print(ultrasonic.Ranging(CM));lcd.print("cm");
delay(1000); // 1sec delay}
UNIVERSITAS SUMATERA UTARA
LAMPIRAN GAMBAR RANGKAIAN ALAT UKUR JARAK BERBASIS
ARDUINO UNO
UNIVERSITAS SUMATERA UTARA
Tech Support: [email protected]
Ultrasonic Ranging Module HC - SR04
� Product features:
Ultrasonic ranging module HC - SR04 provides 2cm - 400cm non-contactmeasurement function, the ranging accuracy can reach to 3mm. The modules includes ultrasonic transmitters, receiver and control circuit. The basic principle of work:(1) Using IO trigger for at least 10us high level signal,(2) The Module automatically sends eight 40 kHz and detect whether there is a pulse signal back.(3) IF the signal back, through high level , time of high output IO duration is the time from sending ultrasonic to returning.Test distance = (high level time×velocity of sound (340M/S) / 2,
� Wire connecting direct as following:
• 5V Supply• Trigger Pulse Input• Echo Pulse Output• 0V Ground
Electric Parameter
Working Voltage DC 5 V
Working Current 15mA
Working Frequency 40Hz
Max Range 4m
Min Range 2cm
MeasuringAngle 15 degree
Trigger Input Signal 10uS TTL pulse
Echo Output Signal Input TTL lever signal and the range in
proportion
Dimension 45*20*15mm
UNIVERSITAS SUMATERA UTARA
Vcc Trig Echo GND
Timing diagram
The Timing diagram is shown below. You only need to supply a short 10uS pulse to the trigger input to start the ranging, and then the module will send out an 8 cycle burst of ultrasound at 40 kHz and raise its echo. The Echo is a distance object that is pulse width and the range in proportion .You cancalculate the range through the time interval between sending trigger signal and receiving echo signal. Formula: uS / 58 = centimeters or uS / 148 =inch; or: the range = high level time * velocity (340M/S) / 2; we suggest to use over 60ms measurement cycle, in order to prevent trigger signal to the echo signal.
UNIVERSITAS SUMATERA UTARA
�Attention:
• � The module is not suggested to connect directly to electric, if connectedelectric, the GND terminal should be connected the module first, otherwise, it will affect the normal work of the module.• � When tested objects, the range of area is not less than 0.5 square metersand the plane requests as smooth as possible, otherwise ,it will affect the results of measuring.
www.Elecfreaks.com
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.
Summary
Microcontroller ATmega328
Operating Voltage 5V
Input Voltage (recommended) 7-12VUNIVERSITAS SUMATERA UTARA
Input Voltage (limits) 6-20VDigital I/O Pins 14 (of which 6 provide PWM output)Analog Input Pins 6
DC Current per I/O Pin 40 mADC Current for 3.3V Pin 50 mA
Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloaderSRAM 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.pdfNote: The Arduino reference design can use an Atmega8, 168, or 328, Current models use anATmega328, 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 ofthe 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 KBof EEPROM (which can be read and written with the EEPROM library).
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 lowvalue, 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.
UNIVERSITAS SUMATERA UTARA
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, theLED 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, somepins 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 includes aWire 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-CircuitSerial Programming) header; see these instructions for details.The ATmega16U2 (or 8U2 in the rev1 and rev2 boards) firmware source code is available . TheATmega16U2/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
UNIVERSITAS SUMATERA UTARA
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 orLinux, 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 theboard 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 secondafter 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 fordetails.
USB Overcurrent Protection
The Arduino Uno has a resettable polyfuse that protects your computer's USB ports from 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 theconnection 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