13
16 BAB III PERANCANGAN Pada bab ini akan dijelaskan tentang perancangan perangkat keras dan perangkat lunak yang ada pada alat ini. Bahasan perancangan akan dimulai dari penjelasan singkat cara kerja alat secara keseluruhan 3.1. Gambaran Alat Cara kerja dari alat ini pertama yang dilakukan adalah pengambilan data dari sensor apung yang terdapat pada tangki bensin sepeda motor, yang nantinya akan digunakan untuk menentukan jumlah sisa bahan bakar yang terdapat di tangki sepeda motor. Setelah mesin motor dihidupkan maka ECU yang terdapat pada sepeda motor akan mengirimkan masukan berupa pulsa ke injector motor dengan frekuensi tertentu sesuai dengan kondisi motor. Sehingga injector akan menyemprotkan bahan bakar ke mesin sesuai dengan jumlah pulsa yang dikirimkan ECU. Dengan menggunakan Arduino akan didapatkan jumlah total pulsa yang dikirimkan ECU ke injector, dan akan didapat jumlah bahan bakar yang disemprotkan injector ke mesin. Jumlah bahan bakar yang dikeluarkan oleh injector ini digunakan untuk mengurangi jumlah bahan bakar yang terbaca oleh sensor apung pada tangki sebelum motor dihidupkan. Sehingga didapat jumlah bahan bakar aktual pada tangki. Selain itu jumlah bahan bakar yang dikeluarkan oleh injector ini juga untuk menghitung sisa jarak yang dapat ditempuh oleh motor. Dengan menghitung jumlah jarak yang ditempuh sepeda motor dibagi dengan jumlah bahan bakar yang dikeluarkan oleh injector sehingga didapat data jarak tempuh/liter. Data ini digunakan untuk menghitung perkiraan sisa jarak tempuh sepeda motor dengan cara mengalikannya dengan sisa bahan bakar pada tangki motor. Jarak yang ditempuh oleh sepeda motor dapat dihitung dengan cara menghitung jumlah pulsa yang dihasilkan oleh sensor Vehicles Speed dikalikan diameter roda kendaraan.

BAB III PERANCANGAN

Embed Size (px)

Citation preview

16

BAB III

PERANCANGAN

Pada bab ini akan dijelaskan tentang perancangan perangkat keras dan

perangkat lunak yang ada pada alat ini. Bahasan perancangan akan dimulai dari

penjelasan singkat cara kerja alat secara keseluruhan

3.1. Gambaran Alat

Cara kerja dari alat ini pertama yang dilakukan adalah pengambilan data dari

sensor apung yang terdapat pada tangki bensin sepeda motor, yang nantinya akan

digunakan untuk menentukan jumlah sisa bahan bakar yang terdapat di tangki sepeda

motor.

Setelah mesin motor dihidupkan maka ECU yang terdapat pada sepeda motor

akan mengirimkan masukan berupa pulsa ke injector motor dengan frekuensi tertentu

sesuai dengan kondisi motor. Sehingga injector akan menyemprotkan bahan bakar ke

mesin sesuai dengan jumlah pulsa yang dikirimkan ECU. Dengan menggunakan

Arduino akan didapatkan jumlah total pulsa yang dikirimkan ECU ke injector, dan

akan didapat jumlah bahan bakar yang disemprotkan injector ke mesin. Jumlah bahan

bakar yang dikeluarkan oleh injector ini digunakan untuk mengurangi jumlah bahan

bakar yang terbaca oleh sensor apung pada tangki sebelum motor dihidupkan.

Sehingga didapat jumlah bahan bakar aktual pada tangki.

Selain itu jumlah bahan bakar yang dikeluarkan oleh injector ini juga untuk

menghitung sisa jarak yang dapat ditempuh oleh motor. Dengan menghitung jumlah

jarak yang ditempuh sepeda motor dibagi dengan jumlah bahan bakar yang

dikeluarkan oleh injector sehingga didapat data jarak tempuh/liter. Data ini digunakan

untuk menghitung perkiraan sisa jarak tempuh sepeda motor dengan cara

mengalikannya dengan sisa bahan bakar pada tangki motor.

Jarak yang ditempuh oleh sepeda motor dapat dihitung dengan cara

menghitung jumlah pulsa yang dihasilkan oleh sensor Vehicles Speed dikalikan

diameter roda kendaraan.

17

Selanjutnya data-data hasil perhitungan Arduino di atas ditampilkan pada

LCD, yaitu berupa sisa bahan bakar pada tangki berupa digit angka. Dan perkiraan

sisa jarak tempuh yang dapat ditempuh sepeda motor.

Pada Arduino terdapat tombol push button yang digunakan untuk mengatur

tampilan LCD. Yaitu berupa sisa jarak tempuh perkiraan atau sisa bahan bakar yang

terdapat pada tangki sepeda motor.

Gambar 3.1. Blok Diagram Sistem

3.2. Perancangan Perangkat Keras

Perangkat keras yang dirancang adalah sebuah user interface yang berbentuk

kotak dengan dimensi 11,5cm×5,5cm×4cm (p×l×t). Pada kotak ini terdapat LCD

16×2 sebagai media penampil data dan juga sebuah tombol push button yang berfungsi

untuk mengganti informasi yang ditampilkan oleh LCD, yaitu berupa sisa bahan bakar

yang tersedia pada tangki bensin atau sisa jarak tempuh yang bisa ditempuh oleh

motor. Selain itu pada kotak ini terdapat Arduino UNO Atmega 328 yang berfungsi

untuk mengumpulkan dan menghitung data yang didapat dari sensor Vehicles Speed,

apung bensin, dan sinyal masukan dari ECU ke injector motor.

Sedangkan untuk sensor-sensor yang dipakai seperti sensor Vehicles Speed,

Apung bensin, dan injector memakai sensor bawaan yang terdapat pada sepeda motor.

18

Gambar 3.2. Gambar sketsa tampilan alat

Gambar 3.3. Realisasi perangkat keras alat

3.3. Perancangan Elektronika

Pada bagian ini akan dijelaskan mengenai perancangan elektronika yang

dipakai dalam sistem yang akan dibuat. Perancangan elektronika dalam pembuatan

tugas akhir ini terdiri dari bagian-bagian utama sebagai berikut:

1. Mikrokontroler jenis Arduino UNO ATmega328 sebagai pengendali utama.

2. Sensor Vehicles Speed

3. Sensor Apung bensin

4. Injector

5. LCD 16×2

LCD

PUSH BUTTON

19

3.3.1. Pengendali Utama

Sebagai pengendali utama dalam tugas rancang ini digunakan

mikrokontroler jenis Arduino UNO ATmega328. Fungsi dari Arduino pada alat

ini antara lain:

1. Melakukan pembacaan data dari sensor apung bensin, Vehicles Speed, dan

data keluaran dari ECU yang dikirimkan ke injector

2. Melakukan perhitungan jumlah sinyal yang dikirimkan ECU ke injector,

dan mengkonversikan kejumlah bahan bakar yang digunakan oleh

kendaraan.

3. Melakukan perhitungan jumlah sinyal yang dihasilkan oleh sensor

Vehicles Speed, dan mengkonversikan ketotal jarak yang ditempuh oleh

kendaraan.

4. Melakukan perhitungan sisa bahan bakar pada tangki kendaraan.

5. Melakukan perhitungan jumlah konsumsi bahan bakar untuk tiap jarak

yang ditempuh oleh kendaraan dalam satuan km/l. Kemudian menghitung

perkiraan sisa jarak tempuh yang dapat dilalui oleh kendaraan.

6. Menyimpan hasil perhitungan data ke EEPROM yang terdapat pada

Arduino UNO

7. Menampilkan hasil pengolahan data melalui LCD 16×2, hasil yang

ditampilkan adalah sisa bahan bakar dalam tangki kendaraan dan sisa jarak

tempuh yang dapat dicapai oleh kendaraan. Pemilihan jenis tampilan yang

ditampilkan dapat diatur dengan menggunakan tombol push button,

sehingga user dapat memilih menampilkan sisa jarak tempuh atau

menampilkan sisa bahan bakar pada tangki kendaraan.

20

Tabel 3.1. Konfigurasi pin mikrokontroler Arduino UNO ATmega328 yang

digunakan

Nama Port Fungsi

PORT SDA Terhubung dengan pin SDA LCD 16×2

PORT SCL Terhubung dengan pin SCL LCD 16×2

PORT A0 Terhubung dengan pin data pada sensor apung bensin

PORT D7 Terhubung push button

PORT D2 Terhubung dengan keluaran ECU yang terhubung dengan

injector

PORT D3 Terhubung dengan sensor Vehicles Speed

PORT Vin Terhubung dengan kabel power stop kontak motor

PORT GND Terhubung dengan ground motor

Gambar 3.4. Skema rancangan pengendali utama.

Push Button

Rangkaian

tambahan berupa

Buffer, pembagi

tegangan dan

resistor pulldown

21

3.3.2. Sensor Pelampung Tangki Bensin

Sensor pelampung tangki bensin digunakan untuk menentukan jumlah

bahan bakar dalam tangki bensin kendaraan. Setelah data awal didapat oleh

Arduino, data dari sensor ini akan digunakan sebagai ralat apabila terjadi

kesalahan perhitungan pada Arduino. Selain itu apabila terjadi penambahan bahan

bakar Arduino akan mengetahuinya dari data yang diperoleh dari sensor apung

bensin ini.

Gambar 3.5. Wiring pelampung tangki bensin.

22

3.3.3. Sensor Vehicles Speed

Sensor Vehicles Speed pada tugas akhir ini digunakan untuk menghitung

jarak yang ditempuh oleh kendaraan. Sensor ini akan menghasilkan sinyal sesuai

dengan jumlah putaran roda kendaraan, oleh Arduino sinyal yang dihasilkan oleh

sensor ini akan dihitung dan dikonversikan ke jarak yang ditempuh oleh

kendaraan. Sebelum masuk ke pengendali utama keluaran dari sensor ini akan

dimasukan terlebih dahulu ke sebuah rangkaian buffer dengan menggunakan IC

Op-Amp LM324. Hal ini untuk mengantisipasi terjadinya kesalahan pembacaan

data pada mikrokontroler

Gambar 3.6. Wiring sensor Vehicles Speed

23

Gambar 3.7. Untai Buffer

3.3.4. Injector

Pada kendaraan injeksi, injector digunakan sebagai alat yang akan

menyemprotkan bahan bakar ke mesin sesuai dengan sinyal yang dikirimkan oleh

ECU. Pada tugas akhir ini sinyal yang dikirim oleh ECU ke injector dihitung

dengan menggunakan mikrokontroler sehingga akan diketahui jumlah bahan

bakar yang disemprotkan oleh injector ke mesin kendaraan. Sehingga diketahui

jumlah konsumsi bahan bakar kendaraan.

Besar tegangan sinyal yang dikirimkan ECU ke injector adalah sebesar

35Vpp, atau sekitar 12Vrms. Sedangkan tegangan input pada mikrokontroler

hanya mampu membaca tegangan hingga 5V saja, oleh karena itu diberikan

sebuah rangkaian pembagi tegangan dan sebuah dioda sebelum masuk ke

mikrokontroler. Hal ini berfungsi agar mikrokontroler dapat membaca data

dengan benar, dan mencegah masuknya tegangan negatif ke pin input

mikrokontroler.

24

Gambar 3.8. Wiring pembacaan sinyal keluaran ECU ke Injector

Gambar 3.9. Untai dari rangkaian pembagi tegangan yang dibuat

Untuk perhitungan pembagi tegangan digunakan rumus sebagai berikut:

𝑉𝐷𝑎𝑡𝑎 =𝑅2

𝑅1+𝑅2 × 𝑉𝐸𝐶𝑈 (1)

Dengan :

VData = Sinyal masukan ke mikrokontroler (V)

VECU = Sinyal keluaran dari ECU (V)

R1 = 40K Ω

R2 = 10K Ω

25

Dari perhitungan di atas bila Vin sebesar 35Vpp maka Vout yang didapat

sebesar 7Vpp (sekitar 4,9Vrms). Dimana tegangan ini masih berada dalam

batasan tegangan masukan dari mikrokontroler (maksimal tegangan masukan

pada mikrokontroler adalah 5V).

3.3.5. LCD 16×2

LCD 16×2 pada tugas akhir ini digunakan sebagai user interface yang

akan menampilkan hasil perhitungan dari Arduino. Terdapat 2 tipe data yang

ditampilkan oleh LCD. Data pertama berupa sisa bahan bakar pada tangki

kendaraan dan data kedua berupa sisa jarak yang dapat ditempuh oleh kendaraan.

User dapat memilih tipe data yang ditampilkan oleh LCD dengan menggunakan

tombol push button yang terdapat pada hardware tugas akhir ini. Sebelum

terhubung dengan mikrokontroler push button akan dihubungkan terlebih dahulu

dengan rangkaian pulldown resistor. Hal ini agar pembacaan posisi ON / OFF

pada mikrokontroler tidak terjadi kesalahan. Sehingga mikrokontroler akan

benar-benar membaca HIGH atau LOW tergantung dari kondisi push button.

Gambar 3.10. Wiring LCD 16×2 dan Push Button

26

3.4. Perancangan Perangkat Lunak

Pada bagian ini akan dijelaskan mengenai perancangan perangkat lunak yang

digunakan pada tugas akhir ini. Perancangan perangkat lunak yang akan dijelaskan

mengenai cara kerja mikrokontroler ATmega328. Penjelasan dari perancangan

perangkat lunak alat ini akan dijelaskan melalui diagram alir sistem secara keseluruhan

seperti ditunjukkan pada Gambar 3.11.

27

Gambar 3.11. Diagram Alir Sistem

28

Penjelasan dari diagram alir Gambar 3.11 adalah sebagai berikut:

Saat mesin kendaran dihidupkan Arduino akan mengambil data terakhir

yang disimpan pada EEPROM.

Setelah itu mikrokontroler akan melakukan pengecekan data dari sensor

apung bensin. Hal ini dilakukan untuk mengecek apabila terjadi

penambahan bahan bakar pada tangki kendaraan.

Selain itu mikrokontroler juga akan memulai pengambilan data dari sensor

Vehicles Speed dan sinyal yang dikeluarkan ECU ke injector pada

program interrupt. Dan menyimpan hasil pembacaan data tersebut

Apabila proses pengambilan data sudah berjalan selama 60 detik (1menit),

mikrokontroler akan memproses data yang didapat. Data yang dihitung

berupa sisa jarak tempuh kendaraan dan sisa bahan bakar yang terdapat

pada tangki kendaraan.

Setelah itu data yang telah diproses oleh mikrokontroler akan ditampilkan

sesuai dengan keinginan dari user, yaitu berupa sisa jarak tempuh

kendaraan atau sisa bahan bakar pada tangki kendaraan. Hal ini dilakukan

dengan cara mikrokontroler mengecek kondisi dari push button apakah

berada pada kondisi ON atau berada pada kondisi OFF.

Setelah ditampilkan mikrokontroler akan menyimpan data terakhir ke

EEPROM.

Setelah itu mikrokontroler akan kembali ke proses pengambilan data

sensor.