Anda di halaman 1dari 14

DOKUMENTASI PROYEK AKHIR SISTEM EMBEDDED

HALAMAN SAMPUL
JUDUL PROYEK
INDIKATOR BATERAI MENGGUNAKAN ARDUINO

Akmal Nur Faisal

KELOMPOK AEEA
Anggota Kelompok :
1306368620

2013

Akhdan Hilmy Taufiqurrahman

1306368500

2013

Erithiana Sisijoan Koesnadi

1306404600

2013

Evan Benedict Zaluchu

1306447360

2013

UNIVERSITAS INDONESIA
DEPOK
2016

DAFTAR ISI

BAB 1
1.1 Tujuan ..3
1.2 Latar Belakang .3
1.3 Batasan Masalah ..4

BAB 2
2.1 Deskripsi dan spesifikasi sistem ..5
2.2 Desain Hardware .....9
2.3 Desain Software ...10

BAB 3
3.1 Implementasi 14
3.2 Metode Test ..14
3.3 Result ....14

Video (terlampir di file)

BAB 1

1.1 Tujuan
1. Menjelaskan konsep pemodelan sistem emdedded.
2. Mengimplementasikan aplikasi sistem embedded menggunakan
pemrograman.
3. Membuat alat yang dapat menunjukkan indicator dari baterai Li-ion.
4. Menampilkan Arus, Tegangan, serta kapasitas dari baterai Li-ion.

Bahasa

1.2 Latar Belakang


Baterai merupakan sebuah komponen penting dalam alat elektronik saat ini, hal
ini dikarenakan tingginya tingkat mobilitas masyarakat saat ini sehingga dibutuhkan
sumber daya yang fleksibel. Jenis baterai yang umum digunakan pada berbagai
perangkat gadget adalah tipe baterai Li-ion. Hal ini karena baterai tersebut memiliki
kapasitas yang cukup besar dengan ukuran fisik baterai yang kecil.
Tetapi, masyarakat kebanyakan tidak tahu tentang informasi baterai yang mereka
miliki, seperti arus dan tegangan pada baterai. Proses pengisian baterai melalui charger
harus sesuai dengan arus dan tegangan pada baterai. Hal ini karena, jika arus dan
tegangan pada baterai melebihi kemampuan dari baterai, maka baterai dapat
mengalami kerusakan dengan cepat dan bahkan meledak jika arus dan tegangan yang
mengalir jauh melebihi kemampuan dari baterai tersebut. Karena itu, kelompok kami
akan memberikan informasi tegangan dan arus pada baterai sehingga masyarakat
dapat memilih charger yang baik untuk pengecasan serta memberikan informasi
tentang ketahanan baterai itu sendiri.
Pada proyek embedded kali ini, kami membuat sebuah indikator baterai yang
berbasis Arduino yang bertujuan untuk mengukur parameter-parameter diatas
tersebut, dan mampu memberikan keluaran dari hasil pengukuran tersebut secara
visual. Hasil output data yang dapat ditampilkan pada alat ini berupa arus, tegangan,
serta persentase dari baterai tersebut. Harapan kami dari proyek ini adalah dengan
tertampilkannya data tersebut, pengguna mampu lebih cermat dalam melakukan
charging sehingga tidak mubazir seperti pada saat baterai tersebut mengalami overcharging,
serta juga dalam memilih baterai, apakah baterai tersebut bekerja pada tingkat arus serta
tegangan yang normal.
Secara garis besar, cara kerja alat kami adalah dengan menyediakan power supply ke
Arduino sebagai sumber daya alatnya, lalu menghubungkan Arduino ke baterai yang ingin

diukur parameternya, menggunakan kabel USB. Arduino tersebut tentunya terpasang dengan
display LCD sehingga mampu untuk menampilkan hasil pengukuran parameter yang
dilakukan.

1.3 Batasan Masalah


1.
2.
3.
4.

Baterai yang akan diujikan merupakan jenis Li-ion


Alat mampu menyala menggunakan power supply
Alat dapat mengetahui arus, tegangan dan kapasitas baterai
LCD pada alat dapat ter-dimmed apabila baterai sudah mencapai 100%

BAB 2

2.1 Deskripsi dan spesifikasi sistem


1. Arduino Uno R3
Arduino Uno R3 adalah papan pengembangan (development board)
mikrokontroler yang berbasis chip ATmega328P. Disebut sebagai papan
pengembangan karena board ini memang berfungsi sebagai arena prototyping
sirkuit mikrokontroller. Dengan menggunakan papan pengembangan, anda akan
lebih mudah merangkai rangkaian elektronika mikrokontroller dibanding jika anda
memulai merakit ATMega328 dari awal di breadboard.
Arduino Uno memiliki 14
digital pin input / output (atau biasa
ditulis I/O, dimana 6 pin diantaranya
dapat digunakan sebagai output
PWM), 6 pin input analog,
menggunakan crystal 16 MHz,
koneksi USB, jack listrik, header
ICSP dan tombol reset. Hal tersebut
adalah semua yang diperlukan untuk
mendukung
sebuah
rangkaian
mikrokontroler. Cukup dengan
menghubungkannya ke komputer
dengan kabel USB atau diberi power dengan adaptor AC-DC atau baterai, anda
sudah dapat bermain-main dengan Arduino UNO anda tanpa khawatir akan
melakukan sesuatu yang salah. Kemungkinan paling buruk hanyalah kerusakan
pada chip ATMega328, yang bisa anda ganti sendiri dengan mudah dan dengan
harga yang relatif murah.

Spesifikasi Mikrokontroler:

2. LCD 16X2 dengan I2C backpack


Penggunaan
LCD
sebagai penampil data adalah
hal yang umum. Pengguna
arduino
sudah
sering
menggunakan LCD dengan
library LiquidCrystal yang
dibundel dengan software
Arduino.
Hal
yang
memberatkan
adalah
pengunaan pin Output yang
cukup
boros
untuk
menjalankannya. Untuk mode
4 bit memerlukan 6 pin
output, dan untuk mode 8 bit memerlukan 10 pin output. Serial LCD atau I2C LCD

Backpack adalah cara mengatasi permasalahan pemborosan penggunaan pin


output.

3. Baterai Li-ion
Dalam tren teknologi ponsel,
perkembangan selalu menuju ke
perangkat lebih kecil, lebih tipis, dan
lebih ringan, karena hal inilah yang
membuat mereka berpindah ke jenis
baterai Li-ion. Baterai Li-ion
menjawab kebutuhan tren karena
baterai ini mampu menyimpan energi
lebih banyak dengan ukuran yang
lebih kecil dan ringan. Untuk
perbandingan lebih detail, Li-ion
mampu menyimpan 150 watt-hours di
dalam 1 kilogram baterai. Sementara
NiMH hanya mampu menyimpan 60-70 watt-hours /kilogram. Karena perbedaan
yang cukup signifikan ini, banyak vendor ponsel lebih memilih Li-Ion.

4. Lampu LED
Light Emitting Diode atau
sering disingkat dengan LED adalah
komponen elektronika yang dapat
memancarkan cahaya monokromatik
ketika diberikan tegangan maju. LED
merupakan keluarga Dioda yang
terbuat dari bahan semikonduktor.
Warna-warna Cahaya yang dipancarkan
oleh LED tergantung pada jenis bahan
semikonduktor yang dipergunakannya. LED juga dapat memancarkan sinar inframerah
yang tidak tampak oleh mata seperti yang sering kita jumpai pada Remote Control TV
ataupun Remote Control perangkat elektronik lainnya.

Voltase yang digunakan:

5. Resistor 12K
Resistor
adalah
komponen
elektronika yang berfungsi untuk
menghambat
arus
listrik
dan
menghasilkan nilai resistansi tertentu.
Kemampuan resistor dalam menghambat
arus listrik sangat beragam disesuaikan
dengan nilai resistansi resistor tersebut.
Resistor memiliki beragam jenis dan
bentuk. Diantaranya resistor yang
berbentuk silinder, smd (Surface Mount
Devices), dan wirewound. Jenis jenis
resistor antara lain komposisi karbon,
metal film, wirewound, smd, dan resistor
dengan teknologi film tebal.
Resistor yang paling banyak beredar di pasaran umum adalah resistor
dengan bahan komposisi karbon, dan metal film. Resistor ini biasanya berbentuk
silinder dengan pita pita warna yang melingkar di badan resistor. Pita pita warna
ini dikenal sebagai kode resistor. Dengan mengetahui kode resistor kita dapat
mengetahui nilai resistansi resistor, toleransi, koefisien temperatur dan reliabilitas
resistor tersebut. Tutorial ini akan menjelaskan kode kode resistor yang banyak
beredar di pasaran.

6. Mini Breadboard
Sebuah breadboard elektonika
sebenarnya mengacu pada sebuah
papan tempat membuat rangkaian
elektronika yang tidak perlu dilakukan
penyolderan untuk menghubungkan
antara satu komponen dengan
komponen lainya sehingga dikenal
dengan
solderless
breadboard.
Breadboard adalah sebuah perangkat
yang digunakan untuk membuat
rangkaian sementara atau rangkaian
prototype yang sama sekali tidak
membutuhkan proses penyolderan.
Cara seperti ini akan menghemat
waktu dan biaya.

2.2 Desain Hardware

Gambar 1. Desain Hardware

Kami menggunakan Arduino Uno R3 pada sistem hardware untuk indikator


baterai menggunakan Arduino. LCD 16X2 dengan I2C backpack digunakan untuk
menampilkan indikator baterai. Baterai Li-ion sebagai baterai yang dapat di charge dan
sebagai input untuk melihat indikator baterainya. Untuk menyambungkan ketiga
komponen tersebut, kami menggunakan sebuah mini breadboard dengan 2 resistor
berukuran 12K ohm dan sebuah LED untuk menandakan bahwa baterai berada dalam
kondisi pengecasan.
Arduino disambungkan ke mini breadboard dengan menggunakan kabel male to
male dan kabel male to female untuk ke LCD 16X2 dengan I2C backpack. Pin yang
disambungkan merupakan pin untuk Vcc, GND, Input(A0), SDA(A4), dan SCL(A5). Vcc
dan GND digunakan sebagai sumberdaya untuk menjalankan LCD 16X2 dengan I2C
backpack serta sebagai sumber arus untuk baterai Li-ion yang akan di charge. Input(A0)
digunakan untuk membaca indicator baterai dengan dilengkapi 2 buah resistor untuk
menghambat daya yang masuk ke Arduino. Hal ini dilakukan agar Arduino tidak
kelebihan daya dan mencegah agar Arduino cepat rusak. SDA(A4) dan SCL(A5)
digunakan sebagai input untuk I2C adapter.
Pada Arduino juga dipasangkan sebuah lampu LED bewarna biru yang akan
menyala saat melakukan pengecasan dan akan mati jika baterai yang di charge sudah
penuh. Untuk melakukan pengecasan, Arduino disambungkan dengan kabel usb ke travel
adapter untuk menerima daya.

2.3 Desain Software


Arsitektur software embedded ini berjenis typical closed Loop, dimana program akan dijalankan
berulang-ulang pada sistem yang akan dikontrol.
Mengukur Power Baterai
Baterai indikator akan mengukur power yang tersisa dalam baterai dengan cara
mengukur voltase yang ada pada baterai kemudian dibagi dengan voltase penuhnya dan dikali
dengan angka seratus, seperti pada potongan kode dibawah ini:
int sensorValue = analogRead(input); //read the A0 pin
value
voltage = sensorValue * (5.00 / 1023.00) * 2;
tegangan = (voltage / 9)*100;
power=power+tegangan;
Potongan kode diatas akan dijalankan selama 100 kali sampling, dan kemudian dibagi dengan
100 untuk mencari rata-rata. Hal ini karena input analog dari arduino naik-turun dengan

10

kecepatan yang tidak dapat ditangkap oleh mata, agar output yang dikeluarkan stabil. Hasil
perhitungan kemudian akan diprint.
Mengukur Voltase
Pengukuran voltase sudah dilakukan pada Pengukuran Power baterai, sehingga yang dilakukan
hanyalah mengeprint nilai volatase sebelumnya.
Mengukur Arus
Pengukuran arus dilakukan dengan cara sampling voltase 16 kali lalu menghitung arus dengan
kode:
//Variabel tetap
int curr_value = 0;
int acc_value = 0;
int sensorValue;
float
float
float
float
float

supply= 4.91;
coeff_A_gain = 0.992174;
coeff_A_res = 0.98315;
opamp_offset =0.000767;
tegangan, arus, power, voltage;

.
arus = ((((curr_value*supply)/102410*opamp_offset)/coeff_A_gain)/coeff_A_res*100)*-1;

Output Lampu Indikator


Indikasi lampu indikator adalah berdasarkan power. Jika power kurang dari yagn ditetapkan,
maka lampu peringatan akan menyala, dan mematikan lampu indikator charging state.
Logika ini dilakukan dengan if else logic dengan power sebagai parameter.
potongan Program:
//set the voltage considered low battery here
if (power <= 10.00)
{
//Lampu Aktif mati, Lampu peringatan Baterai Penuh menyala

11

digitalWrite(led_pin, HIGH);
digitalWrite(led_low_battery_pin,LOW);
}
else{
//Lampu Baterai Penuh mati, Lampu peringatan Aktif menyala
digitalWrite(led_pin,LOW);
digitalWrite(led_low_battery_pin,HIGH);
}

12

13

BAB 3

3.1 Implementasi
Dari semua subyek komponen hardware dan software sudah dibangun semua,
maka langkah pertama-tama sambungkan baterai Li-ion yang digunakan dengan subkyek
utama. Setelah itu langkah Kedua, daya untuk megaktifkan subyek disambungkan kontak
listrik agar subyek berjalan. Secara terprogram subyek melakukan proses untuk
mengidentifikasikan kondisi baterai charging.
3.2 Metode Test
1. Menghubungkan alat dengan sumber daya
untuk mengetahui apakah alat tersebut dapat menyala
2. Display alat menampilkan informasi dari baterai yang terhubung
untuk mengetahui bahwa baterai terhubung kepada alat, dan membaca informasi
yang terdapat pada baterai
3. Melakukan simulasi alat apabila baterai terisi penuh dengan mengubah parameter
program
untuk melihat apabila baterai terisi penuh LCD akan ter-dimmed

3.3 Result
Dari proses tersebut kita dapatkan output yang berasal hasil indentifikasi
subyek dan ditampilkan pada LCD yang digunakan, yaitu output pertama arus
listrik atau dalam versi bahasa inggris sering disebut "electric current" dapat
didefinisikan sebagai jumlah muatan listrik yang mengalir tiap satuan waktu.
Biasanya arus memiliki satuan A (Ampere) atau dalam rumus terkadang ditulis I.
Arus listrik merupakan gerakan kelompok partikel bermuatan listrik dalam arah
tertentu. Output kedua, Tegangan listrik (Voltage) adalah perbedaan potensi listrik
antara dua titik dalam rangkaian listrik. Tegangan dinyatakan dalam satuan V
(Volt). Besaran ini mengukur energi potensial sebuah medan listrik untuk
menyebabkan aliran listrik dalam sebuah konduktor listrik. Tergantung pada
perbedaan potensi listrik satu tegangan listrik dapat dikatakan sebagai ekstra
rendah, rendah, tinggi atau ekstra tinggi. Dan terakhir, subyek akan menampilkan
data terakhir berapa persen baterai itu terisi (Charging).

14