viii
INTISARI
Informasi data mengenai konsumsi BBM pada kendaraan, ternyata menuai banyak keluhan dari masyarakat ketika konsumsi BBM pada kendaraan mereka tidak sesuai spesifikasi yang diklaim pabrikan. Telah ditelusuri, banyak pabrikan mobil yang mencantumkan informasi data konsumsi BBM yang tidak sesuai dari hasil pengujian dan diterapkan pada seluruh kendaraan yang akan dijual. Meski memiliki mesin yang sama, setiap model yang berbeda pasti memiliki tingkat konsumsi BBM yang berbeda pula. Selain itu, ada kecenderungan data konsumsi BBM pada brosur yang diambil dari hasil pengujian di laboratorium atau lintasan khusus, tidak dibandingkan dengan pemakaian nyata di jalan raya
Konsumen perlu untuk diberi suatu kemudahan tentang informasi secara detail tidak hanya jarak yang ditempuh tetapi juga sekaligus besar konsumsi bahan bakar yang dipakai salah satunya dengan Sistem Akuisisi Data Pemakaian Bahan Bakar dan Jarak Tempuh Berbasis Arduino. Keunggulan menggunakan model sistem ini berupa sistem akuisisi data konsumsi bahan bakar sekaligus menghitung jarak tempuh dan informasi akan dicatat berupa file dengan format ekstensi text document (*.txt) yang akan disimpan pada Sdcard/MicroSD/MemoryCard. Informasi data mencantumkan setiap satuan waktu konsumsi bahan bakar dan jarak yang ditempuh. Rancangan ini diharapkan dapat menjadi bahan pertimbangan pengembangan model informasi data konsumsi BBM
ix
ABSTRACT
Information data on fuel consumption in the vehicle, was reaping a lot of complaints from the public when the fuel consumption of their vehicles do not match the specifications claimed the manufacturer. Has been traced, many automobile manufacturers of fuel consumption data include information that does not match the results of the testing and applied to all vehicles that will be sold. Although it has the same engine, each a different model certainly has a fuel consumption level is different. In addition, there is a trend of fuel consumption data in the brochure are taken from the test results in the laboratory or special track, not compared to actual usage on highways
Consumers need to be given an ease about the information in detail not only the distance but also at a huge consumption of fuel used one of them to the Data Acquisition System Fuel and Mileage-Based Arduino. The advantages of this system using a model form of the data acquisition system fuel consumption and calculate the mileage and the information will be recorded in the form of a file with the extension format text document (* .txt) that will be stored on sdcard / MicroSD / memorycard. Data information lists each unit time fuel consumption and distance traveled. The draft is expected to be taken into consideration the development of the model fuel consumption data information
i
TUGAS AKHIR
SISTEM AKUISISI DATA PENGGUNAAN
BAHAN BAKAR DAN JARAK TEMPUH
BERBASIS ARDUINO
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh:
BRAM ANGGITA PUTRA
NIM : 135114058
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
DATA ACQUISITION SYSTEM OF FUEL
CONSUMPTION AND DISTANCE BASED ON
ARDUINO
Presented as Partial Fullfillment of Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
By:
BRAM ANGGITA PUTRA
NIM : 135114058
ELECTRICAL ENGINEERING STUDY PROGRAM
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO
“Take a decision and don’t look back! Just focus
on your future
”
Dengan ini kupersembahkan karyaku ini untuk..
Tuhanku Yesus Kristus,
Kedua orang tua yang selalu mendukung serta mendoakan ku,
Bapak Djoko Untoro Suwarno,S.Si.,M.T. Selaku Dosen Pembimbing
Teman-temanku seperjuangan,
Dan semua orang yang mengasihiku
viii
INTISARI
Informasi data mengenai konsumsi BBM pada kendaraan, ternyata menuai banyak keluhan dari masyarakat ketika konsumsi BBM pada kendaraan mereka tidak sesuai spesifikasi yang diklaim pabrikan. Telah ditelusuri, banyak pabrikan mobil yang mencantumkan informasi data konsumsi BBM yang tidak sesuai dari hasil pengujian dan diterapkan pada seluruh kendaraan yang akan dijual. Meski memiliki mesin yang sama, setiap model yang berbeda pasti memiliki tingkat konsumsi BBM yang berbeda pula. Selain itu, ada kecenderungan data konsumsi BBM pada brosur yang diambil dari hasil pengujian di laboratorium atau lintasan khusus, tidak dibandingkan dengan pemakaian nyata di jalan raya
Konsumen perlu untuk diberi suatu kemudahan tentang informasi secara detail tidak hanya jarak yang ditempuh tetapi juga sekaligus besar konsumsi bahan bakar yang dipakai salah satunya dengan Sistem Akuisisi Data Pemakaian Bahan Bakar dan Jarak Tempuh Berbasis Arduino. Keunggulan menggunakan model sistem ini berupa sistem akuisisi data konsumsi bahan bakar sekaligus menghitung jarak tempuh dan informasi akan dicatat berupa file dengan format ekstensi text document (*.txt) yang akan disimpan pada Sdcard/MicroSD/MemoryCard. Informasi data mencantumkan setiap satuan waktu konsumsi bahan bakar dan jarak yang ditempuh. Rancangan ini diharapkan dapat menjadi bahan pertimbangan pengembangan model informasi data konsumsi BBM
ix
ABSTRACT
Information data on fuel consumption in the vehicle, was reaping a lot of complaints from the public when the fuel consumption of their vehicles do not match the specifications claimed the manufacturer. Has been traced, many automobile manufacturers of fuel consumption data include information that does not match the results of the testing and applied to all vehicles that will be sold. Although it has the same engine, each a different model certainly has a fuel consumption level is different. In addition, there is a trend of fuel consumption data in the brochure are taken from the test results in the laboratory or special track, not compared to actual usage on highways
Consumers need to be given an ease about the information in detail not only the distance but also at a huge consumption of fuel used one of them to the Data Acquisition System Fuel and Mileage-Based Arduino. The advantages of this system using a model form of the data acquisition system fuel consumption and calculate the mileage and the information will be recorded in the form of a file with the extension format text document (* .txt) that will be stored on sdcard / MicroSD / memorycard. Data information lists each unit time fuel consumption and distance traveled. The draft is expected to be taken into consideration the development of the model fuel consumption data information
xi
DAFTAR ISI
HALAMAN JUDUL ... i
TITLE ... ii
HALAMAN PERSETUJUAN ... iii
HALAMAN PENGESAHAN ... iv
PERNYATAAN KEASLIAN KARYA ... v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ... vi
LEMBAR PERNYATAAN PERSETUJAN KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vii
INTISARI ... viii
ABSTRACT ... ix
KATA PENGANTAR ... x
DAFTAR ISI ... xi
DAFTAR GAMBAR ... xiv
DAFTAR TABEL ... xvi
DAFTAR PERSAMAAN... xvii
DAFTAR LAMPIRAN ... xviii
BAB I PENDAHULUAN 1.1. LatarBelakang ... 1
1.2. TujuanPenelitian ... 2
1.3. Manfaat ... 2
1.4. BatasanMasalah ... 3
1.5. MetodologiPenelitian ... 3
BAB II DASAR TEORI 2.1. Peristaltic Pump ... 4
2.2. Reed Switch... 5
2.3. Rotary Encoder... 5
2.4. Sensor Optocoupler ... 6
xii
2.6. Arduino Mega 2560... 9
2.6.1 Komunikasi serial asinkron... 11
2.6.2 Komunikasi serial sinkron... 12
2.6.3 Komunikasi Serial Sinkron I2C/IIC/TWI... 12
2.7. Data Logger Shield... 12
2.7.1 RTC dan RAM Address Map... 15
2.8. LCD (Liquid Crystal Display) ... 17
2.8.1 Pengiriman data ke LCD... 18
2.8.2 Register – register LCD... 19
BAB III PERANCANGAN PENELITIAN 3.1. Diagram Blok Sistem ... 21
3.2. Perancangan Hardware Mekanik ... 22
3.2.1. Kontruksi tampungan cairan dan peristaltic pump ... 23
3.2.2. Perancangan Pengukuran Jarak yang Ditempuh ... 24
3.3. Perancangan Hardware elektrik ... 27
3.3.1. Rangkaian Skematik pada Motor DC, driver motor, dan sensor Optocoupler... 27
3.3.2. Rangkaian Driver Motor... 28
3.3.3. Rangkaian Tombol... 30
3.3.4. Rangkaian LCD... 31
3.4. Perancangan Software... 32
3.4.1. Diagram Alir Program... 33
3.4.2. Flowchart Sistem Keseluruhan... 34
3.4.3. Flowchart Perhitungan Konsumsi BBM... 35
3.4.4. Flowchart Perhitungan Jarak... 35
xiii BAB IV HASIL DAN PEMBAHASAN
4.1. Hasil Perancangan Mekanik ... 37
4.1.1. Hardware Mekanik Tampungan Cairan dan Peristaltic Pump ... 37
4.1.2. Hardware Mekanik Prototype Pedal Gas dan Rem ... 38
4.2. Hasil Perancangan Elektrik ... 39
4.3. Hasil Pengujian ... 41
4.3.1. Pengujian Peristaltic Pump ... 41
4.3.2. Pengujian Prototype Pedal Gas dan Rem ... 43
4.3.3. Pengujian Seluruh Sistem... 45
4.4. Analisa Perangkat Lunak ... 47
4.4.1. Inisialisasi ... 47
BAB V KESIMPULAN DAN SARAN 5.1. Kesimpulan ... 49
5.2. Saran ... 50
DAFTAR PUSTAKA ... 51
xvii
DAFTAR TABEL
Tabel 2.1. Ukuran dan Jenis Memory pada Arduino ... 10
Tabel 2.2. Alamat bit pada RTC DS1307 ... 16
Tabel 2.3. Register kontrol ... 16
Tabel 2.4. Konfigurasi pin LCD ... 17
Tabel 2.5. Modus operasi LCD ... 19
Tabel 3.1. Hubungan kondisi mesin, sudut pedal gas, potensiometer, nilai ADC, tegangan pada motor DC, dan PWM. ... 26
Tabel 3.2. Konfigurasi pin pada potensiometer dan reed switch. ... 28
Tabel 3.3. Konfigurasi pin pada push button... 30
Tabel 3.4. Konfigurasi pin LCD ke Arduino... 32
Tabel 4.1. Bagian dari Hardware Mekanik tampungan cairan dan peristaltic pump... 38
Tabel 4.2. Bagian dari Hardware Mekanik Prototype pedal gas dan rem... 39
Tabel 4.3. Bagian dari Hardware elektrik... 40
Tabel 4.4. Percobaan Konsumsi Cairan dengan Peristaltic Pump ... 41
Tabel 4.5. Percobaan Prototype Pedal Gas ... 43
Tabel 4.6. Bagian part pada prototype pedal rem... 45
xvii
DAFTAR PERSAMAAN
Persamaan 3.1 ... 29
Persamaan 3.2 ... 30
Persamaan 3.3 ... 31
Persamaan 4.1 ... 42
xviii
DAFTAR LAMPIRAN
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Bahan bakar minyak (BBM) masih menjadi energi yang paling besar dikonsumsi
dibandingkan dengan jenis energi lainnya. Kebutuhan BBM di Indonesia, khususnya
sektor transportasi masih menjadi sektor pengguna BBM terbesar di bandingkan
dengan sektor-sektor lainnya seperti industri, dan pembangkit listrik. Peningkatan
kebutuhan BBM tertinggi terjadi pada sektor transportasi, hal ini diperkirakan disebabkan
karena peningkatan jumlah kendaraan yang cukup tinggi, peningkatan mobilitas perjalanan
karena jarak tempat tinggal yang semakin menjauh dari tempat kerja, kemacetan yang
semakin padat, ditambah harga BBM yang cenderung masih murah.
Konsumsi BBM di sektor transportasi adalah jenis gasoline, termasuk di dalamnya BBM subsidi dan non subsidi. Realisasi volume BBM bersubsidi yang
terus mengalami kelebihan kuota setiap tahunnya menjadi perhatian pemerintah. Pulau
Jawa merupakan wilayah yang mengalami kelebihan kuota terbesar dibandingkan wilayah
lainnya. Diperkirakan kuota yang terjadi disebabkan karena penjualan mobil di atas
perkiraan, disparitas harga yang terlalu tinggi antara BBM subsidi dengan BBM non
subsidi, penyalahgunaan BBM bersubsidi oleh pihak-pihak yang ingin mencari
keuntungan, dan program pengaturan BBM bersubsidi yang tidak dapat dilaksanakan
secara tepat. [1]
Informasi data mengenai konsumsi BBM pada kendaraan, ternyata menuai banyak
keluhan dari masyarakat ketika konsumsi BBM pada kendaraan mereka tidak sesuai
spesifikasi yang diklaim pabrikan. Telah ditelusuri, banyak pabrikan mobil yang
mencantumkan informasi data konsumsi BBM yang tidak sesuai dari hasil pengujian dan
diterapkan pada seluruh kendaraan yang akan dijual. Meski memiliki mesin yang sama,
setiap model yang berbeda pasti memiliki tingkat konsumsi BBM yang berbeda pula.
Selain itu, ada kecenderungan data konsumsi BBM pada brosur yang diambil dari hasil
pengujian di laboratorium atau lintasan khusus, tidak dibandingkan dengan pemakaian
Telah ditemukan suatu suatu jurnal tentang monitoring banyaknya BBM pada generator berbasis mikrokontroler PIC dengan memanfaatkan sensor ultrasound yang
prinsip kerjanya berfungsi sebagai sensor levelmeter. Pengambilan data dilakukan dengan
sistem akuisisi data. Hasil data disimpan pada SDcard dalam bentuk file dengan format
ekstensi text document (*.txt). [3]
Dalam kasus ini, bukan terjadi pada generator melainkan pada kendaraan.
Konsumen perlu untuk diberi suatu kemudahan tentang informasi secara detail tidak hanya
jarak yang ditempuh tetapi juga sekaligus besar konsumsi bahan bakar yang dipakai salah
satunya dengan Sistem Akuisisi Data Pemakaian Bahan Bakar dan Jarak yang Ditempuh
Berbasis Arduino. Keunggulan menggunakan model sistem ini berupa sistem akuisisi data
konsumsi bahan bakar sekaligus menghitung jarak tempuh dan informasi akan dicatat
berupa file dengan format ekstensi text document (*.txt) yang akan disimpan pada Sdcard/MicroSD/MemoryCard. Informasi data mencantumkan setiap satuan waktu konsumsi bahan bakar dan jarak yang ditempuh. Rancangan ini diharapkan dapat menjadi
bahan pertimbangan pengembangan model informasi data konsumsi BBM.[2]
1.2.
Tujuan
Tujuan dari penelitian ini adalah menghasilkan suatu prototype untuk mengukur dan mencatat konsumsi bahan bakar dan jarak yang ditempuh, di dalamnya terdapat
integrasi sistem antara mekanik, elektrik dan program. Bagian mekanik di dalamnya antara
lain adanya integrasi antara pedal gas dengan motor DC dan peristaltic pump. Bagian elektrik menghasilkan rangkaian komunikasi antara mekanik ke Arduino. Di bagian
program terdapat pengolahan data RTC (Real Time Clock) ke Arduino, mengkonversi data
analog ke digital, pembuatan database yang disimpan di Arduino dan diaplikasikan ke
SDcard.
1.3.
Manfaat
Penelitian ini memiliki manfaat kepada masyarakat sebagai acuan data konsumsi
bahan bakar. Penelitian ini juga bermanfaat meminimalisasi kecurangan pada pengisian
bahan bakar khususnya untuk para pengusaha di bidang rental mobil, motor, dan taksi.
Data yang diinformasikan berupa data real konsumsi bahan bakar dan jarak yang telah
1.4.
Batasan Masalah
Penelitian akan dibatasi pada pembuatan sistem akuisisi data berupa model
prototype berbasis Arduino, spesifikasi alat yang digunakan sebagai berikut:
1. Metode pengukuran konsumsi bahan bakar dengan menghitung banyak pulsa reed
switch pada peristaltic pump.
2. Pengaturan kecepatan motor DC dengan menggunakan pedal gas yang melalui
driver motor.
3. Pengukuran panjang lintasan dengan menghitung pulsa yang terjadi pada rotary
encoder.
4. Kecepatan motor pada peristaltic pump di atur melalui pedal gas.
5. Menggunakan mikrokontroler berupa modul Arduino Mega 2560.
6. Menggunakan Data Logger Shield
7. Menggunakan RTC sebagai timing / clock yang sudah terdapat di Data Logger
Shield.
8. Menggunakan tombol push button
9. Menggunakan LCD untuk menampilkan hasil pengukuran.
10.Hasil pengukuran akan dicatat dan disimpan ke SDcard.
1.5
. Metodologi Penelitian
Metode penelitian yang dikerjakan di Lab. digunakan dalam penyusunan tugas akhir ini adalah:
1. Pengumpulan bahan-bahan referensi berupa buku-buku dan jurnal penelitian terkait. Studi pustaka yang mencakup literatur mengenai Arduino, Data Logger Shield , RTC, motor DC, peristaltic pump, reed switch, driver motor, optocoupler, rotary encoder dan LCD.
2. Perancangan kontruksi mekanik: pengukuran bahan bakar dan pengukuran jarak yang ditempuh.
3. Perancangan elektrik: rangkaian skematik pada peristaltic pump, motor DC, driver motor, tombol push button, dan LCD.
4. Perancangan software: penampil LCD, penyimpanan SDcard, dan pemrogaman RTC.
6. Perbaikan dan penyempurnaan alat.
BAB II
DASAR TEORI
Bab ini akan menjelaskan mengenai teori tentang komponen pendukung,
perhitungan, serta teknik pengolahan data yang digunakan pada penelitian ini. Dasar materi
yang digunakan pada penelitian ini antara lain adalah peristaltic pump, rotary encoder, optocoupler, motor servo, motor DC, Arduino Mega 2560, Data Logger Shield, RTC, LCD 16x2, dan rangkaian elektronika lainnya. Rangkaian elektronika yang dibutuhkan adalah
rangkaian driver motor dc, konsep aktif high dan aktif low, dan rangkaian reset.
2.1. Peristaltic Pump
Peristaltic pump adalah jenis pompa perpindahan positif yang digunakan untuk memompa berbagai cairan. Tabung fleksibel yang dipasang melingkar di dalam casing
pompa mengandung fluida. Sebuah baling-baling dengan sejumlah kawat penggulung,
penyeka, atau lekukan melekat pada lingkar luar baling-baling tabung fleksibel. Ketika
baling-baling bergerak, bagian bawah tabung akan tertekan dan terjepit sehingga menjadi
tertutup, dan akhirnya akan memaksa cairan yang akan dipompa untuk bergerak malalui
tabung. Setelah itu, tabung akan terbuka seperti keadaan semula. Setelah meninggalkan
roda, aliran fluida akan diinduksi ke pompa.
Terdapat dua atau lebih kawat penggulung atau lekukan yang menutup tabung,
yang juga akan mengikat tubuh cairan. Tubuh cairan ini kemudian diangkut, pada tekanan
lingkungan menuju outlet pompa. Peristaltic pump dapat terus berjalan, atau dapat diindeks melalui revolusi parsial untuk memberikan jumlah yang lebih kecil dari cairan.
Peristaltic pump bekerja dengan tekanan dan perpindahan. Hal ini digunakan terutama untuk pompa cairan melalui tabung, yang membedakan dari pompa lain yaitu di
mana bagian dari pompa lain benar-benar masuk ke dalam bersentuhan langsung dengan
cairan. Alat ini merupakan salah satu alat yang paling umum digunakan untuk memompa
cairan. Karena mekanisme kerja peristaltic pump tidak pernah bersentuhan langsung
dengan cairan, sehingga alat ini sangat bermanfaat terutama dalam situasi dimana cairan
Gambar 2.1. Mekanisme peristaltic pump
Peristaltic pump beroperasi dengan memungkinkan cairan manuju ke selang. Cairan ini kemudian mengalir ke dalam casing pompa melalui selang. Baling-baling dengan sejumlah kompres pengait tabung memaksa cairan melalui pompa dan
mengarahkannya ke tujuan akhir. Teknik ini dikenal sebagai peristaltik. [4]
2.2. Reed Switch
Gambar 2.2. Reed Switch
Reed Switch adalah saklar yang bekerja berdasarkan ada tidaknya medan magnet. Reed switch didalamnya terdapat 2 buah lempengan logam yang terdiri dari besi dan nikel terlihat seperti gambar 2.2 Secara umum kondisi awal pada reed switch ini adalah normally
open. Saat magnet didekatkan, maka kondisi yang terjadi adalah normally closed, dan
ketika magnet dijauhkan maka akan kembali menjadi normaly open. [5]
2.3. Rotary Encoder
Rotary encoder adalah suatu perangkat elektromekanik yang digunakan untuk mengkonversi perpindahan angular dari suatu poros menjadi kode-kode analog maupu
digital. Terdapat 2 jenis umum rotary encoder yaitu tipe absolute dan tipe incremental. Absolute rotary encoder menghasilkan kode yang unik untuk tiap posisi sudut poros tertentu., sedangkan incremental rotary encoder menghasilkan kode yang bias diterjemahkan sebagai jarak perpindahan sudut relative terhadap posisi awal.
menjadi bentuk pulsa. Sinar cahaya putus-putus dihasilkan dari kontruksi gabungan
sumber cahaya, glass disk, dan photosensor. [6]
Gambar 2.3. Skema kontruksi bagian dalam Incremental rotary encoder
Sinyal tersebut kemudian diubah menggunakan Schmitt Trigger menjadi bentuk pulsa ditunjukan pada gambar 2.4 berikut ini.
Gambar 2.4. Bentuk pulsa pada rotary encoder
Untuk menggunakan arah putaran clockwise maka bentuk pulsa berubah dari kondisi high ke low, sedangkan untuk arah putaran counter clockwise maka bentuk pulsa berubah dari kondisi low ke high. [7]
2.4. Sensor Optocoupler
Gambar 2.5. Sensor Optocoupler
Pada dasarnya sensor Optocoupler adalah suatu komponen penghubung (coupling)
yang bekerja berdasarkan picu cahaya optic. Optocoupler terdiri dari dua bagian yaitu:
1. Pada transmitter dibangun dari sebuah LED inframerah. Jika dibandingkan
dengan menggunakan LED biasa, LED infra merah memiliki ketahanan yang lebih
baik terhadap sinyal tampak. Cahaya yang dipancarkan oleh LED infra merah tidak
terlihat oleh mata telanjang.
2. Pada bagian receiver dibangun dengan dasar komponen phototransistor. Phototransistor merupakan suatu transistor yang peka terhadap tenaga cahaya. Suatu sumber cahaya menghasilkan energi panas, begitu pula dengan spektrum inframerah.
Karena inframerah mempunyai efek panas yang lebih besar dari cahaya tampak, maka
phototransistor lebih peka untuk menangkap radiasi dari sinar inframerah. [8]
Prinsip kerja dari optocoupler ditunjukan pada gambar 2.6 dibawah ini:
Gambar 2.6. Prinsip kerja optocoupler
1. Output1 akan berlogika LOW jika cahaya dari LED infra merah masuk ke
phototransistor, dan sebaliknya akan berlogika HIGH jika cahaya dari LED infra merah
2. Output2 akan berlogika HIGH jika cahaya dari LED infra merah masuk ke
phototransistor, dan sebaliknya akan berlogika LOW jika cahaya dari LED infra merah
terhalang ke phototransistor. [9]
2.5. Motor DC
Motor DC merupakan jenis motor yang menggunakan tegangan searah sebagai
sumber tenaganya. Dengan memberikan beda tegangan pada kedua terminal tersebut,
motor akan berputar pada satu arah, dan bila polaritas dari tegangan tersebut dibalik maka
arah putaran motor akan terbalik pula seperti pada gambar 2.7. Polaritas dari tegangan
yang diberikan pada dua terminal menentukan arah putaran motor sedangkan besar dari
beda tegangan pada kedua terminal menentukan kecepatan motor.
Gambar 2.7. Motor DC
Konstruksi motor DC pada gambar 2.7. memiliki 2 bagian dasar,yaitu:
1. Bagian yang tetap/stasioner yang disebut stator. Stator ini menghasilkan medan
magnet, baik yang dibangkitkan dari sebuah koil (elektro magnet) ataupun magnet
permanen.
2. Bagian yang berputar disebut rotor. Rotor ini berupa sebuah koil dimana arus
listrik mengalir. Gaya elektromagnet pada motor DC timbul saat ada arus yang mengalir
pada penghantar yang berada dalam medan magnet. Medan magnet itu sendiri ditimbulkan
oleh megnet permanen. Garis-garis gaya magnet mengalir diantara dua kutub magnet dari
kutub utara ke kutub selatan. Menurut hukum gaya Lourentz, arus yang mengalir pada
penghantar yang terletak dalam medan magnet akan menimbulkan gaya. Gaya F, timbul
Pengendali arus-searah banyak digunakan dalam industri karena kecepatan
variabel, regulasi kecepatan yang baik, pengereman, dan kemampuan pembalikannya.
Sebagian besar pengendali arus searah menggunakan metode kontrol tegangan jangkar dan
kontrol fluksi medan, untuk mencapai regulasi kecepatan, masing-masing di bawah
kecepatan nominal (rated speed) dan di atas kecepatan nominal. Dalam kedua kasus,
konverter atau penyearah yang setengah terkontrol atau terkontrol sepenuhnya digunakan
untuk mencapai tegangan searah variabel, dari tegangan bolak-balik, untuk mensuplai ke
tegangan jangkar. [10]
2.6. Arduino Mega 2560
Arduino Mega memiliki 54 digital pin input / output (14 diantaranya dapat
digunakan sebagai output PWM), 16 analog input, 4 UART (hardware port serial), osilator
kristal 16 MHz, koneksi USB, jack listrik, header ICSP, dan tombol reset. Seperti pada
gambar 2.8 merupakan contoh board Arduino Mega 2560.
Gambar 2.8. Board Arduino Mega 2560
Berikut ini adalah konfigurasi dari Arduino Mega 2560 :
a. Mikronkontroler ATmega2560
b. Beroperasi pada tegangan 5V
c. Tegangan input yang direkomendasikan 7 - 12V
d. Pin digital input/output 54 , 14 diantaranya mendukung output PWM
e. Pin analog input 16
f. Arus pin per input/output 20 mA
g. Arus untuk pin 3.3V adalah 50 mA
h. Flash Memory 256KB, dimana 8 KB digunakan oleh bootloader
j. EEPROM 4KB
k. Kecepatan clock 16 MHz
l. SRAM 2 KB (ATmega328)
m. EEPROM 1KB (ATmega328)
n. Kecepatan clock 16 MHz
Pada tabel 2.1. merupakan tabel perbedaan ukuran dan jenis memory pada arduino:
Tabel 2.1. Ukuran dan Jenis Memory pada Arduino
Mikrokontroler Memori Flash (byte) SRAM (byte) EEPEROM (byte)
ATmega168 16K 1K 512
ATmega328 32K 2K 1K
ATmega1280 128K 8K 4K
ATmega2560 256K 8K 4K
Memori flash, atau flash ROM (Read Only Memory) adalah tipe memori yang
digunakan untuk menyimpan program. Program atau koding yang dibuat akan disimpan
disini. Oleh karena itu, memori flash juga dikenal sebagai program ROM atau code ROM.
Algoritma-algoritma yang kita buat dalam program, misalnya if..else, for, while, operasi
aritmatika, dan sebagainya akan disimpan di dalam ROM. Memori dalam ROM tidak akan
hilang bila daya ke papan Arduino ditiadakan (nonvolatile).
Memori SRAM (Static Random Access Memory) adalah tipe memori yang
digunakan untuk menyimpan data. Berbeda dengan ROM yang menyimpan program,
memori bertipe RAM ini digunakan untuk menyimpan data. Data dalam memori ini akan
hilang ketika daya ke mikrokontroler ditiadakan (volatile). Data disini misalnya saat
mendeklarasikan variabel tertentu atau array, atau data hasil penjumlahan dan
pengurangan, dan sebagainya.
Memori EEPROM (Electrically Erasable Programmable Read Only Memory),
adalah tipe nonvolatile memori yang digunakan untuk menyimpan data yang sifatnya tidak
penting lainnya. Mikrokontroler Atmel dilengkapi sejumlah kecil ROM, dan dapat diakses
menggunakan EEPROM pada Arduino.
Komunikasi Serial adalah komunikasi dimana pengiriman data dilakukan per bit,
sehingga lebih lambat dibandingkan komunikasi parallel seperti pada port printer yang
mampu mengirim 8 bit sekaligus dalam sekali detak.
Sebuah modul Arduino memiliki jenis komunikasi data serial yaitu serial asinkron
dan serial sinkron (I2C, TWI, dan SPI). Serial asinkron merupakan komunikasi serial yang
tidak memiliki jaluk clock sinkronisasi, sedangkan serial sinkron memiliki jalur clock. [11]
2.6.1 Komunikasi serial asinkron
Sebuah Arduino Mega memiliki 4 hardware serial berbentuk UART. Serial 0
UART pada Arduino Mega berada pada pin digital 0 (RX0) dan 1 (TX0). Serial 1 berada
pada pin digital 19 (RX1) dan 18 (TX1). Serial 2 berada pada pin digital 17 (RX2) dan 16
(RX2). Serta serial 3 berada pada pin digital 15 (RX3) dan 14 (RX3).
Level elektrikal data serial pada UART menggunakan level tegangan digital 0V untuk logika “0” dan 5V untuk logika „„1‟‟ atau sering disebut TTL (Transistor-transistor Logic). Jika pairing device komunikasi serial berada pada level yang sama (sama-sama mikrokontroler) maka antar pin serial dapat dihubungkan langsung secara menyilang.
Sedangkan jika pairing device komunikasi serial berada pada level serial RS232 (misalnya
komputer) harus menggunakan konveter serial TTL ke RS232 untuk menyesuaikan
tegangan kedua device agar dapat berkomunikasi.
Berikut adalah ilustrasi komunikasi serial ditunjukan pada gambar 2.9 dan gambar
[image:30.595.83.530.285.712.2]2.10 dibawah ini:
Gambar 2.9. Ilustrasi wiring komunikasi serial UART
Gambar 2.10. Ilustrasi wiring komunikasi serial
2.6.2 Komunikasi serial sinkron
Komunikasi serial sinkron SPI (Serial Peripheral Interface) adalah komunikasi
data secara serial antara transmitter dan receiver. SPI memiliki 3 jalur kabel yaitu MISO
(Master In Slave Out), MOSI (Master Out Slave In), dan SCLK (Serial Clock). MOSI
merupakan jalur keluaran data dari master ke slave, sedangkan MISO kebalikannya.
Terdapat tambahan pin untuk mengaktifkan atau menonaktifkan perangkat slave SPI yang
dinamakan CS (Chip Select) atau SS (Slave Select). Pada gambar 2.11 dibawah ini
[image:31.595.80.529.187.712.2]menunjukan cara kerjanya SPI.
Gambar 2.11. Ilustrasi cara kerja SPI [13]
2.6.3 Komunikasi Serial Sinkron I2C/IIC/TWI
Komunikasi RTC dengan Arduino Mega2560 menggunkan komunikasi serial
sinkron I2C/IIC/TWI. Pada Arduino Mega2560 menggunakan 2 kabel yaitu SDA(Serial
Data) dan SCL (Serial Clock). Letak pin SDA terletak pada pin digital 20 dan letak pin SCL terletak pada pin digital 21. [14]
2.7. Data Logger Shield
Data Logger Shield adalah modul tambahan yang berfungsi untuk menyimpan data pada SDcard. Interface SDcard bekerja pada format FAT16(File Allowcation Table 16-Bit) dan FAT32(File Allowcation Table 32-16-Bit). Berikut adalah tampilan Data Logger Shield:
Berikut adalah konfigurasi pada Data Logger Shield:
[image:32.595.88.523.80.666.2]
Gambar 2.13. Board Data Logger Shield beserta keterangannya
Keterangan pada gambar 2.13 adalah:
- Top Left - Terdapat RTC yang memiliki chip, kristal, dan baterai cadangan.
- Middle Left – Terdapat regulator 3.3V yang merupakan tegangan referensi untuk menjalankan SDcard.
- Top Middle – Slot adapter SDcard, apabila SDcard berupa MicroSD.
- Top Right – LED yang berfungsi sebagai indikator, dan tombol reset untuk merestart modul Arduino.
- Middle – Sebuah Shifter yang berfungsi melindungi SDcard dari potensi sinyal tegangan 5V pada Arduino.
- 3V – Tegangan referensi sebesar 3,3V pada regulator dan tersedia 50mA di
dalamnya.
- SQ – Square Wave merupakan gelombang keluaran yang berasal dari RTC.
- WP - Pad untuk mendeteksi apakah disk memory pada Sdcard terproteksi atau
tidak.
- CD – Pad digunakan untuk mendeteksi Sdcard dengan cara menghubungkan
- CS - Chip Select, digunakan untuk memotong jejak pada pin 10 dikarena pada
pin ini bertentangan, dengan cara pad ini disolder dan dihubungkan ke pin
digital manapun, kemudian upload ulang software.
- L2 dan L1 - Sebuah optional LED dengan menghubungkan ke pin digital dan
telah dilengkapi resistor 470 ohm dirangkai secara seri.
Data Logger Shield ini dilengkapi dengan RTC DS1307 yang akan terus
menjalankan waktu ketika Arduino dicabut karna dilengkapi dengan baterai. DS1307
adalah IC serial real time clock 8 pin dengan konsumsi daya rendah, menggunakan format full binary coded decimal (BCD) pada pengaturan tanggal dan kalender serta
memiliki nonvolatile SRAM sebesar 56 byte. Alamat dan data dikirim secara serial melalui
2 jalur dan 2 arah. Jam dan tanggal dilengkapi dengan informasi detik, menit, jam, hari,
tanggal, bulan serta tahun. Setiap akhir bulan secara otomatis tanggal akan berubah sesuai
dengan tanggal pada bulan berikutnya, sama halnya dengan akhir tahun maka akan
berubah sesuai tahun yang baru. Jam dapat di set dengan format 24 jam atau 12 jam. DS1307 menggunakan teknologi built-in power sense circuit yang dapat mengetahui adanya kesalahan pada catu daya dan secara otomatis akan berubah menggunakan catu
daya pada baterai. [15]
[image:33.595.85.525.309.712.2]Blok diagram internal DS1307 adalah:
1. X1 dan X2 adalah pembangkit pulsa yang terhubung dengan quart krtstal
32,768Khz sebagai internal circuit oscillator yang didesain dengan CL 12,5pF. X1
adalah osilator input yang terhubung langsung dengan kristal, sedang X2 adalah
keluaran dari osilator kristal internal.
2. Power Control merupakan catu daya yang mensuplay tegangan ke DS1307, Vcc
adalah daya luar sebesar 5V dan VBAT sebagai suplai input dengan 3V lithium Cell.
Tegangan baterei harus berada diantara batasan minimum dan maksimum
pengoperasian. Baterei lithium 48mAh atau lebih dapat mempertahankan fungsi
RTC selama 10 tahun.
3. Serial Bus Interface And Address Register merupakan jalur data serial dan pengalamatan register DS1307 dengan akses pulsa melalui SCL dan SDA. SCL
(Serial Clock) berfungsi sebagai clock input I2C dan digunakan untuk sinkronisasi data serial. SDA (Serial Data) berfungsi sebagai data input/output untuk I2C serial, baik SCL dan SDA masih memerlukan pull up eksternal.
4. Control Logic merupakan pengendali data-data yang dibaca ataupun ditulis melalui SCL dan SDA dengan pewaktu dari osilator kristal.
5. Buffer (7 bytes) adalah penyangga sementara sebelum data diterima atau dikirim,
berkisar 7 bytes (7 x 8 bit) sebagai transit pengalamatan register 8 bit
detik-menit-jam-hari-tanggal-bulan-tahun.
6. Clock, Calender and Control Register atau CR berisi informasi clock dan kalender serta register pengendali untuk mengontrol pengoperasian SQW/OUT.
2.7.1 RTC dan RAM Address Map
Register RTC berada dialamat 00h sampai 07h. Sedangkan register RAM dimulai dari alamat 08h sampai 3Fh. Pada waktu multi byte access dan alamat pointer mencapai
3Fh, alamat pointer akan kembali ke 00h pada putaran kedua.
Informasi waktu dan kalender didapat dari membaca byte register. Inisialisasi
waktu dan tanggal dilakukan dengan write
pada byte register. Isi dari waktu dan tanggal menggunakan format
BCD(Binary Code Decimal). Pada bit 7 register 0 adalah bit clock halt (CH). Jika CH = 1
maka osilator akan disable sebaliknya akan mengaktifkan osilator. Pengalamatan bit dapat
Tabel 2.2. Alamat bit pada RTC DS1307
DS1307 dapat menggunakan 2 mode, 12 jam (AM/PM) atau 24 jam. Bit 6 pada register jam merupakan bit select dari mode 12 atau 24 jam. Jika bit 6 = 1 adalah mode 12 jam sedangkan bit 6 = 0 adalah mode 24 jam. Pada bit 5 merupakan pengaturan
bit AM/PM dengan logika 1 pada saat PM atau sebaliknya. Pada mode 24 jam , bit 5 adalah bit yang menyatakan detik dari jam 10.00 (20.00 – 23.00)
Register Kontrol digunakan untuk mengontrol operasi dari pin SQW/OUT dapat dilihat pada tabel 2.3. berikut ini:
Tabel 2.3. Register kontrol
Keterangan:
1. OUT (Output control) adalah bit ini mengontrol level output dari pin
SQW/OUT ketika output square wave disable. Jika SQWE = 0, logika pada pin
SQW/OUT = 1, OUT = 1 dan jika pin SQW/OUT = 0 maka OUT = 0.
2. SQWE (Square Wave Enable) adalah bit tersebut ketika di set logika 1 maka
akan meng-enable output osilator. Frekuensi pada output square wave
bergantung pada nilai bit RS0 dan RS1. Dengan output square wave 1Hz,
update register-register clock terjadi pada kondisi falling edge pada square
wave.
3. RS (Rate Select) adalah Bit tersebut mengontrol frekuensi output square wave
2.8. Liquid Crystal Displays (LCD) 16x2
LCD (Liquid Crystal Display) adalah suatu jenis media tampilan yang
menggunakan kristal cair sebagai penampil utama. DisplayLCD ini memiliki 16 kolom
[image:36.595.86.513.163.646.2]dan 2 baris karakter seperti pada gambar 2.15 berikut.
Gambar 2.15. LCD 16x2
Berikut adalah konfigurasi pin dari LCD 16x2 ditunjukan pada tabel 2.4. berikut:
Tabel 2.4. Konfigurasi pin LCD
Pin 4 (RS) pada LCD merupakan Register Selector yang berfungsi untuk memilih
Register Kontrol atau Register Data. Register kontrol digunakan untuk mengkonfigurasi
LCD. Register Data digunakan untuk menulis data karakter ke memori display LCD. Pin 5
Karena kebanyakan fungsi hanya untuk membaca data dari LCD dan hanya perlu menulis
data saja ke LCD, maka kaki ini dihubungkan ke GND (WRITE). Pin 6 (ENABLE) pada
LCD digunakan untuk mengaktifkan LCD pada proses penulisan data ke Register Kontrol
dan Register Data LCD.
Menyambungkan LCD dengan Board Arduino:
a. Pin RS (kaki 4) di sambungkan dengan pin arduino digital pin 12
b. Pin E (kaki 6) di sambungkan dengan pin arduino digital pin 11
c. Pin D4 (kaki 11) di sambungkan dengan pin arduino digital pin 5
d. Pin D5 (kaki 12) di sambungkan dengan pin arduino digital pin 4
e. Pin D6 (kaki 13) di sambungkan dengan pin arduino digital pin 3
f. Pin D7 (kaki 14) di sambungkan dengan pin arduino digital pin 2
g. sambungkan potensio 10 KOhm ke +5v dan GND , dan Pin LCD 3 ke potensio
h. Pin 5 (R/W) ke Ground
2.8.1 Pengiriman data ke LCD
Pada modul LCD Terdapat 16 Buah pin yang digunakan untuk melakukan
komunikasi dengan mikrokontroler. Pin-pin tersebut diantaranya adalah pin VSS, VDD,
VO, RS, R/W, E, DB0, DB1, DB2, DB3, DB4, DB5, DB6, DB7, A, K.
Catudaya yang diberikan untuk LCD 16X2 adalah 5V. Kisaran toleransi catudaya
yang diijinkan agar LCD dapat beroperasi dengan baik adalah antara 4.5V hingga 5.5V.
Pemberian catudaya Yang tidak sesuai dengan batas toleransi yang telah ditentukan dapat
menimbulkan masalah pada LCD seperti kerusakan pada komponen LCD atau LCD tidak
dapat bekerja dengan semestinya.
Didalam modul LCD terdapat kontroler, kontroler tsb memiliki 2 buah register 8 bit
yaitu instruction register (IR) dan data register (DR)IR menyimpan kode Kode instruksi ,
Seperti membersihkan tampilan dan pergeseran kursor, dan informasi
alamat untuk Display Data RAM (DD-RAM) dan Character Generator (CG-RAM). DR menyimpan data sementara untuk ditulis atau dibaca dari DD-RAM atau CG-RAM. Ketika
informasi alamat ditulis ke IR, kemudian menyimpan data kedalam DR dari DD-RAM atau
CG-RAM. Dengan Menggunakan sinyal register selector (RS), kedua register dapat
Tabel 2.5. Modus operasi LCD
2.8.2 Register – register LCD
Register-register yang terdapat dalam LCD adalah sebagai berikut:
• IR (Instruction Register), digunakan untuk menentukan fungsi yang harus dikerjakan oleh LCD serta pengalamatan DDRAM atau CGRAM.
• DR (Data Register), digunakan sebagai tempat data DDRAM atau CGRAM yang akan dituliskan ke atau dibaca oleh komputer atau sistem minimum. Saat
dibaca, DR menyimpan data DDRAM Atau CGRAM, Setelah itu data alamat
berikutnya secara otomatis masuk ke DR. Pada Waktu menulis, cukup lakukan
inisialisasi DDRAM atau CGRAM, Kemudian untuk selanjutnya data dituliskan ke
DDRAM Atau CGRAM sejak alamat awal tersebut. BF (Busy Flag), Digunakan untuk memberi tanda bahwa LCD Dalam keadaan siap atau sedang sibuk. Apabila
LCD sedang melakukan operasi internal, BF diset menjadi 1, sehingga tidak akan
menerima perintah dari luar. Jadi, BF Harus dicek apakah telah direset menjadi 0
ketika akan menulis LCD (memberi data Kepada LCD). Cara Untuk menulis LCD
adalah dengan mengeset RS menjadi 0 dan mengeset R/W menjadi 1.
• AC (Address Counter), digunakan untuk menunjuk alamat pada DDRAM atau CGRAM dibaca atau ditulis, maka AC secara otomatis menunjukkan alamat
berikutnya. Alamat yang disimpan AC Dapat dibaca bersamaan dengan BF.
• DDRAM (Display Data Random Access Memory), Digunakan sebagai tempat penyimpanan data (data storage) sebesar 80 byte. AC menunjukkan
alamat karakter yang sedang ditampilkan.
Code for Interchange Instruction), sehingga cukup memasukkan kode ASCII untuk menampilkannya.
• CGRAM (Character Generator Random Access Memory), sebagai data storage untuk merancang karakter yang dikehendaki. Untuk CGRAM terletak pada kode
ASCII Dari 00h sampai 0Fh, tetapi hanya delapan karakter yang disediakan.
Alamay CGRAM Hanya 6 bit, 3 Bit untuk mengatur tinggi karakter dan 3 bit tinggi
menjadi 3 bit rendah DDRAM yang menunjukkan karakter, sedangkan 3 bit rendah
BAB III
RANCANGAN PENELITIAN
Pada bab ini akan dijelaskan mengenai perancangan yang menyangkut pembuatan
prototype sistem akuisisi data pemakaian bahan bakar dan jarak yang ditempuh berbasis
arduino. Perancangan ini dimulai dari diagram alir sistem, perancangan konstruksi
hardware baik dari segi desain mekanik maupun elektrik, dan juga perancangan software.
[image:40.595.84.509.198.627.2]3.1.
Diagram Blok Sistem
Gambar 3.1. Diagram Blok Sistem
Diagram blok sistem penelitian pada gambar 3.1. menunjukkan urutan cara kerja
sistem secara keseluruhan. Sistem ini terdiri dari beberapa bagian diantaranya :
1. Arduino sebagai mikrokontroler berfungsi untuk memproses sistem kerja alat.
2. Potensiometer sebagai pedal gas berfungsi memberikan besaran nilai yang
akan menentukan kecepatan motor DC dan peristaltic pump.
4. Driver Motor sebagai pengatur kecepatan motor.
5. Motor DC sebagai penggerak rotary encoder.
6. Rotary Encoder digunakan untuk mengkonversi perpindahan angular dari suatu poros menjadi kode-kode analag maupu digital.
7. Optocoupler adalah suatu sensor yang akan memberikan masukan data ke mikrokontroler.
8. Push button sebagai tombol untuk memberikan perintah atau instruksi. 9. LCD sebagai penampil.
10.Data logger shield berfungsi sebagai mikrokontroler tambahan. 11.SD Card sebagai media penyimpan file.
Potensiometer sebagai pedal gas, ketika ditekan akan memberikan nilai tegangan
yang akan berpengaruh ke motor pada peristaltic pump. Nilai tegangan semakin besar
maka putaran motor semakin cepat dan aliran air pada selang akan terpompa secara cepat
pula. Terdapat sebuah reed switch pada peristaltic pump sebagai masukan data ke mikrokontroler.
Driver motor dc sebagai pengatur kecepatan motor DC. Motor DC pada prototype ini akan menggerakan rotary encoder sebagai roda sekaligus digunakan untuk mengkonversi perpindahan angular dari suatu poros menjadi kode-kode analag maupun
digital. Kode tersebut sebagai masukan dari sensor optocoupler. Sensor ini terdiri dari 2
bagian yaitu transmitter dan receiver yang memberi masukan data ke arduino.
Tombol dalam rancangan ini menggunakan push button sebagai suatu perintah pada
menu progam yang akan di tampilkan ke LCD (Liquid Crystal Display). Indikator menu
progam akan ditampilkan ke LCD untuk mempermudah penjelasan alir sistem.
Data Logger shield merupakan suatu modul tambahan yang akan saling berkomunikasi dengan arduino. Data logger shield akan mengkonversi data dari arduino untuk diolah ke bentuk file dengan format ekstensi text document (*.txt) dan di dalam data
logger shield terdapat RTC (Real Time Clock) yang digunakan untuk pemberi keterangan waktu. File akan disimpan ke SD Card sebagai media penyimpanan.
3.2. Perancangan Hardware Mekanik
Hardware menjadi salah satu bagian penting untuk membangun suatu prototype agar
3.2.1 Kontruksi tampungan cairan dan peristaltic pump.
Kontruksi tampungan cairan disertai peristaltic pump ditunjukan pada gambar 3.2.
dibawah ini:
[image:42.595.84.528.125.634.2]
Gambar 3.2. Tampungan cairan disertai dengan peristaltic pump
Tampungan cairan berbentuk kubus disertai dengan peristaltic pump untuk memompa cairan dan terdapat sebuah reed switch sebagai sensor untuk menghitung konsumsi cairan. Terdapat pula sebuah gelas ukur untuk mencocokan hasil data yang
diukur melalui peristaltic pump.
Pada perancangan ini terdapat 2 buah kondisi yaitu kondisi stasioner, dan kondisi
dinamis. Mesin pada kondisi dinamis maupun dalam keadaan stasioner, perhitungan nilai
konsumsi cairan akan tetap menghitung banyak konsumsi cairan. Berbeda dengan
perancangan perhitungan jarak, saat kondisi stasioner nilai jarak tempuh tidak terhitung.
Sebuah pedal gas semakin ditekan maka aliran cairan yang keluar akan semakin
banyak. Dalam hal ini reed switch di bagian casing motor pada peristaltic pump digunakan
sebagai inputan data counter ke mikrokontroler.
Banyaknya konsumsi cairan diukur melalui putaran baling-baling pada peristaltic pump. Satu putaran baling-baling mengaktifkan 3 satuan volume. Pengukuran cairan dilakukan dengan mengukur pulsa pada reed switch.
Bentuk dan ukuran dimensi peristaltic pump ditunjukan pada gambar 3.3 dan gambar 3.4:
Gambar 3.4. Peristaltic Pump dilihat dari dimensi berbeda
Bentuk pulsa reed switch dan gambar 1 satuan volume ditunjukan pada gambar 3.3
dibawah ini:
Gambar 3.5. Bentuk pulsa pada reed switch dan 1 satuan volume pada peristaltic pump
3.2.2 Perancangan Pengukuran Jarak yang Ditempuh
Pada perancangan ini ketika mesin pada kondisi stasioner, motor DC tetap berputar
namun optocoupler tidak aktif sehingga tidak menghitung jarak tempuh. Berbeda saat kondisi dinamis, motor DC berputar dan optocoupler aktif sehingga menghitung jarak
tempuh. Terdapat sebuah tombol yang digunakan untuk merubah dari kondisi mesin
stasioner ke kondisi dinamis. Sebelum tombol itu ditekan maka mesin akan dalam kondisi
stasioner.
Pada gambar 3.6 menunjukan sebuah prototype pedal gas yang dilengkapi sebuah
pedal rem. Pedal gas menggunakan sebuah potensiometer untuk menggerakan putaran
motor DC. Motor DC terhubung secara mekanik dengan sebuah rotary encoder yang memiliki jari-jari 15,9cm. Rotary encoder memiliki 10 lubang yang berfungsi inputan data
[image:43.595.81.522.219.605.2]Gambar 3.6. Prototype pedal gas dan rem
Sensor optocoupler saat kondisi stasioner sensor dalam keadaan tidak aktif. Saat
kondisi dinamis sensor optocoupler akan aktif. Aktif dan tidaknya dengan menonaktifkan
digital input pada arduino. Pin yang terhubung adalah PD7/T0 (pin 38) pada arduino,
dengan memprogam pada arduino dengan memberi kondisi LOW.
Pada gambar 3.7 merupakan bentuk rotary encoder dan pola keluaran pulsa pada
rotary encoder.
Gambar 3.7. Bentuk dan pola keluaran pulsa pada rotary encoder
Untuk menghitung panjang 1 lintasan putaran roda digunakan rumus keliling
lingkaran yaitu sebagai berikut:
Lintasan 1 putaran = 2 π r , dimana r=15,9cm = 2 x 3,14 x 15,9cm
= 100 cm
Rotary encoder yang berfungsi mengkonversi perpindahan angular dari suatu poros menjadi kode-kode analag maupun digital. Rotary encoder di sini memiliki 10 lubang. Itu
berarti 10 lubang mewakili 1 putaran roda (1 sampel) jadi menghitung banyaknya lintasan
roda dengan perkalian 1 lintasan putaran (100cm) dikalikan dengan banyak sampel yang
Kecepatan motor DC diatur dengan mengatur lebar PWM. Semakin lebar pulsanya
maka motor DC akan semakin cepat berputar. Lebar PWM dapat diatur menggunakan
sebuah potensiometer sebagai pedal gas.
Saat kondisi stasioner terdapat tegangan referensi pada ADC sebesar 0 - 0,5V. Saat
kondisi itu lebar PWM sebesar 10%. Kondisi dinamis terdapat tegangan pada referensi 0,6
– 5V. Berikut ini merupakan tabel kondisi saat stasioner dan dinamis.
Tabel 3.1. Hubungan kondisi mesin, sudut pedal gas, potensiometer, nilai
ADC, tegangan pada motor DC, dan PWM
No Kondisi Sudut pedal gas Hambatan Potensiometer
Nilai ADC Tegangan motor DC
PWM (% duty cycle)
1. Stasioner 45° 6,3k Ω
(63% x 10k Ω) ( 25,5
0,5V 10%
(
2. Dinamis 23° 2,5k Ω
(25% x 10k Ω) ( 114,75
2,25V 45%
(
3. Dinamis 0° 0kΩ
(0% x 10k Ω) ( 255
4,46V 100%
(
3.3. Perancangan Hardware Elektrik
Perancangan Hardware elektrik dibuat menyesuaikan dengan dimensi hardware mekanik. Komponen penyusun hardware elektrik meliputi rangkaian skematik pada peristaltic pump beserta motor DC, rangkaian driver motor, dan rangkaian LCD. Rangkaian elektronik yang menyusun sistem prototype ini meliputi rangkaian-rangkaian elektronika sebagai berikut :
3.3.1 Rangkaian Skematik pada Motor DC, driver motor, dan sensor optocoupler Pada rangkaian skematik ini bertujuan mengatur kecepatan motor DC dan motor
pada peristaltic pump. Motor diatur melalui potensiometer sebagai pedal gas yang terhubung dengan rangkaian driver motor. Sensor optocoupler yang terdiri dari sebuah infrared dan phototransistor sebagai sensor untuk rotary encoder. Sebuah reed switch berfungsi untuk perhitungan counter pada peristaltic pump. Rangkaian skematik dapat dilihat pada gambar 3.8 dibawah ini:
Gambar 3.8. Rangkaian Skematik pada motor DC, driver motor, reed switch, dan sensor
optocoupler
Perancangan pada gambar 3.8 dapat diketahui konfigurasi pin driver motor dan
sensor pada Arduino. Pada driver motor berfungsi sebagai pengendali kecepatan motor
yang terhubung ke pin 34 dan pin 36. Kecepatan motor di atur dari potensiometer yang
terhubung pada pin 30. Sensor optocoupler yang terdiri dari sebuah infrared dan sebuah photodioda terhubung pada pin 38. Sensor optocoupler aktif saat kondisi dinamis, aktif dan tidaknya dengan memprogam pada mikrokntroler pada pin 38. Sebuah reed switch terhubung ke pin 40 sebagai masukan data ke mikrokontroler. Konfigurasi pin ditunjukan
Tabel 3.2. Konfigurasi pin pada potensiometer dan reed switch
No. Nama Komponen Konfigurasi Pin
1. Potensiometer PC7/A15 (pin 30)
2. Driver Motor DC PC1/A9 (pin 36)
3. Driver Motor
Peristaltic Pump
PC3/A11 (pin 34)
4. Optocoupler PD7/T0 (pin 38)
5. Reed Switch PGI/RD (pin 40)
3.3.2 Rangkaian Driver Motor
Pada rangkaian driver motor bertujuan untuk mengatur kecepatan motor dc.
Rangkaian ini dapat dilihat pada gambar 3.10 berikut ini:
Gambar 3.9. Rangkaian driver motor
Pada gambar 3.9 potensiometer berfungsi untuk mengatur level tegangan basis
transistor BFY51 yang dirangkai secara darlington dengan transistor TIP31. Besar
tegangan bias basis dikontrol dengan potensiometer 10KΩ.
Dari luar transistor Darlington nampak seperti transistor biasa dengan 3 buah
kutub: B (basis), C (Kolektor), dan E (Emitter). Dari segi tegangan listriknya, voltase
base-emitter rangkaian ini juga lebih besar, dan secara umum merupakan jumlah dari kedua
Gambar 3.10. Tegangan bias pada rangkaian darlington
Tegangan Base Emitter dari rangkaian darlington adalah hasil jumlah dari kedua
transistor dapat dirumuskan sebagai berikut:
VBEtotal = VBE1 + VBE2...(3.1)
1.5 Volt = 0.78 Volt + 0.72 Volt
Motor dapat bergerak berdasarkan tegangan bias basis yang dikeluarkan tegangan
tersebut. Dioda 1N4148 berfungsi sebagai pelindung transistor dari tegangan balik efek
induksi dari motor DC. Pada gambar 3.11 merupakan gambar rangkaian driver saat kondisi
stasioner.
Gambar 3.11. Kondisi stasioner pada driver motor
3.3.3 Rangkaian Tombol
Tombol yang digunakan dalam pembuatan prototype ini ada 3 seperti pada gambar
3.12. Tombol yang digunakan adalah 1 push button yang dihubungkan ke arduino dengan
Gambar 3.12. Rangkaian skematik pada push button
Arus yang dapat masuk ke pin arduino adalah arus DC maksimal 40mA. Sehingga
untuk menentukan nilai dari resistor minimal dapat dihitung menggunakan
persamaan:
...(3.2)
Pada rangkaian ini menggunakan resistor sebesar 10KΩ, sehingga arus yang
masuk ke pin arduino tidak terlalu besar yaitu sebesar 0,5mA. Rangkaian push button
[image:49.595.86.528.224.666.2]menggunakan rangkaian pull down ditunjukan pada gambar 3.13 dibawah ini:
Gambar 3.13. Rangkaian Pull Down
Berikut ini adalah tabel konfigurasi pin pada push button ke Arduino Mega:
Tabel 3.3. Konfigurasi pin pada push button
No. Nama Komponen Konfigurasi Pin
1. Push Button 1 PL6 (pin 43) 2. Push Button 2 PL4/OC5B (pin 45)
Pada rangkaian tombol on/off, digunakan indikator LED sebagai penanda bahwa rangkaian telah bekerja. Nilai resistor (R1) dapat diperoleh sebagai berikut :
Dengan nilai tegangan output regulator sebesar 5VDC (VOUT), tegangan minimal
LED sebesar 1,6VDC (VMIN LED) dan arus minimal LED sebesar 10m .
Berdasarkan perhitungan diperoleh nilai resistor (R1) sebesar 340Ω. Pada perancangan
indikator LED digunakan resistor (R1) sebesar 330Ω, sehingga diperoleh nilai arus
yang mengalir pada LED sebesar 10,3mA. LED akan menyala karena arus minimal
yang dibutuhkan LED adalah 10mA.
3.3.4 Rangkaian LCD
LCD yang digunakan pada perancangan gambar 3.14. menggunakan sistem
pengiriman 4-bit dan diperlukan 6 jalur data untuk komunikasi dengan sistem
mikrokontroler Atmega2560. Keenam jalur yang digunakan tersebut adalah :
1. Empat jalur data untuk mengirimkan data instruksi dari data karakter yang
akan ditampilkan. Keempat jalur tersebut adalah pin11 (DB4), pin12 (DB5),
pin13 (DB6), dan pin14 (DB7)
2. Dua jalur lainnya adalah pin4 (RS/Register Select) dan yang terakhir adalah
[image:50.595.83.529.160.611.2]pin6 (Enable)
Gambar 3.14. Rangkaian skematik pada LCD ke Arduino
Maksimal arus LED pada LCD adalah 50mA ( datasheet ), sehingga untuk menentukan nilai resistor dapat dihitung dengan menggunakan persamaan seperti di
bawah ini:
Pada rangkaian ini menggunakan resistor sebesar 1KΩ. Dengan menggunakan
persamaan hukum ohm arus yang masuk ke pin mikrokontroler Atmega 2560 sebesar
5mA. Dengan demikian arus yang mengalir pada LED tidak terlalu besar, sehingga
dapat menghemat pemakaian baterai. Konfigurasi pin LCD ke Arduino Mega
[image:51.595.83.511.226.579.2]ditunjukan pada tabel di bawah ini:
Tabel 3.4. Konfigurasi pin LCD ke Arduino
LCD Arduino
Pin 1 (GND) Ground
Pin 2 (VCC) Tegangan +5V
Pin 3 (Vo) Resistor 1K ke +5V
Pin 4 (RS) PG0/WR (pin 41)
Pin 6 (E) PG2/ALE (pin 39)
Pin 11 (DB4) PC0/A8 (pin 37)
Pin 12 (DB5) PC2/A10 (pin 35)
Pin 13 (DB6) PC4/A12 (pin 33)
Pin 14 (DB7) PC6/A14 (pin 31)
Pin 15 (Anoda) Tegangan +5V
Pin 16 (Katoda) Ground
3.3.
Perancangan Software
Perancangan software dalam prototype ini merupakan perintah yang akan
diproses oleh mikrokontroler untuk mengatur sistem kerja prototype secara keseluruhan.
Software meghasilkan tampilan berbagai menu ke LCD ketika saklar utama dinyalakan.
Saat kondisi seperti ini berarti mesin dalam kondisi stasioner. Perhitungan konsumsi akan
aktif tetapi perhitugan jarak tidak aktif. Terdapat sebuah push button untuk mengganti dari
kondisi stasioner ke kondisi normal, yaitu dengan perhitungan konsumsi cairan dan jarak
tempuh semua berjalan. Terdapat sebuah tampilan pada LCD ditunjukan pada gambar
Gambar 3.15. Tampilan Menu Utama
Terdapat informasi pada LCD berupa time, fuel dan distance. Time berupa informasi waktu dalan satuan detik, fuel merupakan informasi banyaknya konsumsi cairan
dalam satuan liter, dan distance adalah informasi jarak tempuh dalam satuan kilometer.
3.4.1 Diagram Alir Program
Diagram alir program dapat dilihat pada gambar 3.16. Program diawali dengan
menghidupkan saklar utama terlebih dahulu, setelah saklar dalam posisi on maka hal yang
pertama adalah masuk ke kondisi stasioner. Saat kondisi ini, tampilan LCD akan
menampilkan seperti gambar 3.15, tetapi perhitungan jarak tempuh tidak aktif.
Apabila tombol push button ditekan, maka tampilan LCD tetap sama akan tetapi perhitungan jarak tempuh aktif. Data yang diketahui dapat berupa waktu dan seberapa
banyak nilai konsumsi cairan dan jarak tempuh yang sudah dikonversi.
Sistem akan menyimpan data setelah dikonversi dan otomatis akan disimpan di
SDcard. Apabila saklar utama pada kondisi off, sistem pada kondisi off dan data disimpan saat kondisi terakhir. Flowchart diagram alir ditunjukan pada gambar 3.16, gambar 3.17,
3.4.2. Flowchart Sistem Keseluruhan
Gambar 3.16. Flowchart Sistem Keseluruhan
Diagram alir progam sistem secara keseluruhan diawali dengan membaca data
saklar, setelah tombol saklar ditekan, maka motor DC dan motor peristaltic pump aktif
dalam kondisi stasioner. Pada saat kondisi stasioner perhitungan konsumsi BBM aktif,
tetapi perhitungan jarak tempuh belum aktif. Setelah itu, baca data tombol push button, dan
pada saat tombol push button ditekan berarti langsung membaca nilai potensiometer
sebagai pedal gas. Konversi nilai potensiometer, menggunakan ADC 8-bit dengan nilai
maksimal 255 dan tegangan referensi maksimal 5V. Pengaturan PWM dengan 100% duty
cycle berdasarkan tegangan referensi 5V. Sesudah PWM diatur masuk ke perhitungan
jarak tempuh. Saat nilai potensiometer lebih dari set point yang ditentukan maka alur
progam akan kembali berulang untuk membaca nilai potensiometer. Apabila nilai
potensiometer kurang dari set point maka akan mematikan optocoupler. Sensor
3.4.3. Flowchart Perhitungan Konsumsi BBM
Gambar 3.17. Flowchart Sistem Perhitungan Konsumsi Bahan Bakar
Diagram alir progam perhitungan konsumsi bahan bakar diawali dengan
mengaktifkan counter pada peristaltic pump. Selanjutnya, membaca data satuan volume,
apabila sudah 1 satuan volume maka counter reed switch +1. Konversi nilai konsumsi
bahan bakar dengan menghitung banyak pulsa reed switch dikalikan 1 satuan volume.
Setelah data dikonversi, data disimpan ke SDcard dan ditampilkan ke LCD.
[image:54.595.85.526.85.709.2]3.4.4. Flowchart Perhitungan Jarak
Diagram alir progam perhitungan jarak tempuh diawali dengan mengaktifkan
counter sensor optocoupler. Selanjutnya, membaca data counter pada rotary encoder,
apabila sudah 10 counter maka counter rotary encoder +1. Konversi nilai jarak tempuh
dengan menghitung banyak pulsa optocoupler dikalikan keliling lingkaran roda . Setelah
data dikonversi, data disimpan ke SDcard dan ditampilkan ke LCD.
3.4.5. Informasi yang akan disimpan pada SDcard
Informasi yang akan di simpan di SDcard dapat berupa waktu, seberapa besar
konsumsi bahan bakar dan panjang jarak. Informasi pada waktu dapat berupa tanggal,
bulan, tahun, jam, menit, dan detik. Informasi konsumsi bahan bakar yang telah
dikonsumsi isinya adalah total cairan yang keluar dalam satuan mililiter (ml). Informasi
panjang jarak lintasan didalamnya terdapat total panjang yang terjadi dalam satuan
[image:55.595.90.521.224.615.2]milimeter (mm). Contoh tampilan file.txt yang di simpan di SDcard ditunjukan seperti pada
gambar 3.20. di bawah ini:
BAB IV
HASIL DAN PEMBAHASAN
Hasil implementasi alat beserta dengan pembahasan pada bab ini dibagi menjadi dua
bagian yaitu hasil perancangan pada hardware mekanik, hardware elektrik dan software.
Hasil implementasi perancangan Sistem Akuisisi Data Pemakaian Bahan Bakar dan Jarak
yang Ditempuh Berbasis Arduino ini secara keseluruhan sudah sesuai dengan perancangan
pada BAB III.
4.1. Hasil Perancangan Hardware Mekanik
Hasil Perancangan hardware mekanik Sistem Akuisisi Data Pemakaian Bahan Bakar dan Jarak yang Ditempuh Berbasis Arduino ini terdiri atas beberapa bagian, diantaranya
adalah kontruksi tampungan cairan, peristaltic pump, prototype pedal gas dan rem. Gambar 4.1. merupakan hasil dari perancangan kontruksi tampungan cairan dan peristaltic pump. Keterangan dan fungsi dari masing-masing bagian dapat dilihat pada tabel 4.1.
[image:56.595.74.520.332.688.2]4.1.1. Hardware Mekanik Tampungan Cairan dan Peristaltic Pump
Gambar 4.1. Hasil Perancangan Hardware Mekanik tampungan cairan dan peristaltic pump 1
7 3
1 2
6
Tabel 4.1. Bagian dari Hardware Mekanik tampungan cairan dan peristaltic pump
No Nama Fungsi
1 Gelas Ukur Mengukur volume cairan
2 Selang Pengalir cairan
3 Bearing Part untuk mendorong cairan
4 Sprocket Transmisi penggerak
5 Rantai Penghubung kedua sprocket
6 Reed Switch Sensor magnet untuk menghitung satuan cairan 7 Motor DC Penggerak transmisi
Terdapat perubahan pada perancangan desain peristaltic pump yaitu menggunakan rantai dan sprocket. Hal ini terjadi karena untuk mengurangi beban pada motor yang terlalu berat. Terdapat error pada posisi reed switch maka harus diletakan secara tepat agar tidak terjadi dua kali penghitungan dalam sekali satuan volume. Magnet harus diletakan secara
tepat agar terdeteksi oleh reed switch.
[image:57.595.67.536.110.728.2]4.1.2. Hardware Mekanik Prototype Pedal Gas dan Rem
Gambar 4.2. merupakan hasil dari perancangan mekanik Prototype pedal gas dan rem.
Keterangan dan fungsi dari setiap bagian dapat dilihat pada tabel 4.2.
Gambar 4.2. Hasil Perancangan Hardware Mekanik Prototype pedal gas dan rem 1
4
7
6 5 3
Tabel 4.2. Bagian dari Hardware Mekanik Prototype pedal gas dan rem
No Nama Fungsi
1 Piringan Roda Sebagai rotary encoder
2 Sprocket Transmisi penggerak
3 Rantai Penghubung kedua sprocket
4 Motor DC Penggerak transmisi
5 Sensor phototransistor Sensor untuk menghitung jarak tempuh
6 Magnet Part untuk rem rotary encoder
7 Driver Motor Rangkaian elektrik untuk mengendalikan motor DC
Pada bagian konstruksi ini terdapat perubahan sensor yang pada perancangan
menggunakan sensor optocoupler, namun pada kontruksi ini menggunakan sensor phototransistor, yang mempunyai prinsip kerja sama karena roda tidak berputar secara center. Begitupula desain roda ada sedikit perubahan dikarenakan roda ketika berputar tidak secara konstan putarannya.
4.2. Hardware Elektrik
Gambar 4.3. merupakan hasil dari perancangan hardware elektrik. Keterangan dan fungsi dari setiap bagian dapat dilihat pada tabel 4.3.
Gambar 4.3. Penampang Luar Hardware Elektrik
1
4
5
Gambar 4.4. Rangkaian Driver Motor
Gambar 4.5. Data Logger Shield dan Arduino Mega 2560
Tabel 4.3. Bagian dari Hardware elektrik
No Nama Fungsi
1 LCD Sebagai penampil hasil data
2 Tombol Reset Tombol untuk reset data
3 Tombol Pindah Gigi Tombol sebagai syarat perhitungan sensor
phototransistor
4 Tombol Start Tombol untuk memulai sistem
5 Rangkaian Driver Motor Rangkaian pengendali motor DC
6 Data Logger Shield Modul untuk penyimpanan data ke SD Card
Pada rangkaian hardware elektrik sudah berjalan sesuai rencana, hanya saja perlu tata
letak yang tepat agar terlihat lebih rapi. Terdapat 3 inputan tombol yaitu tombol start, tombol
gigi, dan reset. Data akan ditampilkan melalui LCD dan disimpan ke SD Card.
4.3. Hasil Pengujian
4.3.1. Pengujian Peristaltic Pump
Pada pengujian peristaltic pump, pengambilan data pada kondisi stasioner dan kondisi
dinamis. Saat tombol start ditekan perhitungan pada peristaltic pump akan langsung berjalan.
Banyaknya konsumsi cairan diukur melalui putaran baling-baling pada peristaltic pump. Satu putaran baling-baling mengaktifkan 3 satuan volume (1 satuan volume cairan ±1,5ml). Berikut adalah tabel hasil uji 3 kali percobaan pengambilan data dengan waktu yang
[image:60.595.67.539.234.696.2]sama yaitu 60 detik.
Tabel 4.4. Percobaan Konsumsi Cairan dengan Peristaltic Pump
Tegangan Pada Potensio- meter Percobaan ke - Cairan Dalam Perhitungan Teori Cairan Dalam
Perhitungan Real Presentase Error
Tertampil LCD (ml) Rata-rata (ml) Tertampil Gelas Ukur (ml) Rata-rata (ml) Tiap Percobaan Rata-rata 1 V (Stasioner)
I 20
24
20
23
0%
2,62%
II 27 26 3,70%
III 24 25 4,16%
2 V (Dinamis)
I 33
36
32
35
3,03%
2,76%
II 39 38 2,50%
III 36 37 2,77%
3 V (Dinamis)
I 48
48
49
47
2,08%
2,09%
II 46 45 2,17%
III 49 48 2,04%
4 V (Dinamis)
I 60
62
61
61