TUGAS AKHIR Timbangan Digital Berbasis Mikrokontroler AVR

advertisement
1
TUGAS AKHIR
Timbangan Digital
Berbasis Mikrokontroler AVR ATMega 8535
Diajukan Guna Melengkapi Sebagian Syarat
Dalam mencapai gelar Sarjana Strata Satu (S1)
Disusun Oleh :
Nama
NIM
Jurusan
Peminatan
Pembimbing
:
:
:
:
:
Fitriana
01402-015
Teknik Elektro
Elektronika
Ir. Eko Ihsanto MEng
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS MERCU BUANA
JAKARTA
2009
2
LEMBAR PERNYATAAN
Yang bertanda tangan di bawah ini,
Nama
: Fitriana
N.I.M
: 01402-015
Jurusan
: Teknik Elektro
Fakultas
: Fakultas Teknologi Industri
Judul Skripsi
: Timbangan Digital Berbasis Mikrokontroler AVR ATMega
8535.
Dengan ini menyatakan bahwa hasil penulisan Skripsi yang telah saya buat
ini merupakan hasil karya sendiri dan benar keasliannya. Apabila ternyata di
kemudian hari penulisan Skripsi ini merupakan hasil plagiat atau penjiplakan
terhadap karya orang lain, maka saya bersedia mempertanggungjawabkan
sekaligus bersedia menerima sanksi berdasarkan aturan tata tertib di Universitas
Mercu Buana.
Demikian, pernyataan ini saya buat dalam keadaan sadar dan tidak
dipaksakan.
Penulis,
Materai Rp.6000
[
ii
]
3
LEMBAR PENGESAHAN
Timbangan Digital
Berbasis Mikrokontroler AVR ATMega 8535
Disusun Oleh :
Nama
NIM
Program Studi
Peminatan
: Fitriana
: 01402-015
: Teknik Elektro
: Elektronika
Menyetujui,
Pembimbing
Koordinator TA
( Ir. Eko Ihsanto MEng )
(Ir. Jaja kustija Msc.)
Mengetahui,
Ketua Program Studi Teknik Elektro
(Ir. Yudhi Gunardi MT)
iii
4
ABSTRAK
Timbangan Digital
Berbasis Mikrokontroler AVR ATMega 8535
Timbangan merupakan salah satu alat ukur berat yang sering digunakan
oleh masyarakat. Sejak adanya penemuan teknologi baru dibidang elektronik, para
ilmuwan mengembangkan timbangan mekanik menjadi timbangan elektronik
(digital). Timbangan digital merupakan timbangan yang hasil pembacaannya
menggunakan sistem angka. Dari hasil pembacaan pengukuran juga dapat pula
memproses data harga dari benda yang ditimbang untuk menghasilkan perkalian
antara berat dengan harga persatuan berat yang dimasukan dari keypad,
timbangan digital lebih mudah dalam hal pembacaan hasil pengukuran
dibandingkan dengan timbangan mekanik.Berdasarkan dari permasalahan diatas
muncul suatu ide untuk merancang dan membuat timbangan digital dimana
tegangan masukan yang diatur menggunakan potensio geser untuk menggantikan
sistem transduser berat,dalam tugas akhir ini dibuat ”Timbangan Digital Berbasis
Mikrokontroler AVR ATmega 8535”.Hal ini dikarenakan mikrokontroler seri
ATMega 8535 yang merupakan produk dari ATMEL dapat diaplikasikan sesuai
dengan kebutuhan dan pengaplikasiannya untuk mengolah sinyal sensor sehingga
menjadi tampilan hasil pengukuran dalam bentuk data informasi di LCD .
iv
5
KATA PENGANTAR
Alhamdulilah robbil ‘allamin, hanya dengan kekuatan, kemampuan, dan
kemudahan, serta ridho dari Allah SWT, penulis berhasil menyelesaikan Tugas
Akhir ini.
Tugas Akhir ini disusun untuk memenuhi persyaratan menyelesaikan
pendidikan dan untuk mendapatkan gelar Sarjana Teknik ( ST ) pada jurusan
teknik elektro, Fakultas Teknologi Industri , Universitas Mercu Buana. Dengan
mengambil judul :
TIMBANGAN DIGITAL
BERBASIS MIKROKONTROLLER AVR ATMega 8535
Penulis menyadari bahwa apa yang dilakukan dalam tugas akhir ini masih jauh
dari sempurna, sehingga semua saran dan kritik serta diskusi untuk
pengembangan selanjutnya dari apa yang sudah dilakukan dalam tugas akhir kali
ini sangat penulis harapkan.
Agar tugas akhir yang dikerjakan selanjutnya oleh generasi berikutnya merupakan
kesinambungan dari tugas akhir pendahulunya dan tidak terjadi salah penafsiran
dalam pengembangan kegiatan keilmuan dan pengetahuan demi kemajuan bidang
teknologi informasi dalam dunia elektronika.
Akhirnya dengan segala kerendahan hati, penulis berharap tugas akhir ini
bisa menambah sedikit pengetahuan dan pemahaman , sedikit inspirasi, maupun
sedikit manfaat bagi pembaca dalam bidang pengembangan teknologi informasi
didunia elektronika.
Jakarta, Januari 2009
Penyusun
v
6
UCAPAN TERIMAKASIH
Pada kesempatan yang baik ini pula, penulis menyampaikan rasa hormat
dan terima kasih yang sebesar – besarnya kepada :
1. Allah SWT, yang tanpa keridhoan serta hidayah-NYA aku tidak dapat
menyelesaikan ptoyek Tugas akhir ini.
2. Kedua orang tua (Bpk. Ayub dan Ibu.Yayah),Teteh dan adik,serta
keponakanku (adam,syfa,salsa) yang selalu memberi semangat dan doa untuk
menyelesaikan proyek Tugas akhir ini.
3. AyankQu Rizal Fahlefi, S. Kom yang telah banyak membantu dalam semua
pengerjaan penulisan serta tak henti-hentinya memberikan dukungan beserta
keluarganya.
4. Dosen Pembimbing Ir. Eko Ihsanto M.Eng yang telah membimbing saya
untuk menyelesesaikan tugas akhir ini.
5. Ir. Yudhi Gunardi MT selaku Kaprodi dan koordinator TA
6. Teman – teman Elektro Angkatan 2002 (eldin, herry.k, ozy, firman.s, nangor,
kustian, wage, v3 cowo, firman kecil dll) dan teman-teman elektro.
7. Staff TU dan Staff UPT Perpustakaan Mercu Buana.
8. Pihak pihak terkait yang tidak dapat disebutkan satu persatu kritik dan
saranmu selalu dinanti.
vi
7
DAFTAR ISI
TUGAS AKHIR .........................................................................................
i
LEMBAR PERNYATAAN ........................................................................
ii
LEMBAR PENGESAHAN ........................................................................
iii
ABSTRAK ..................................................................................................
iv
KATA PENGANTAR ................................................................................
v
UCAPAN TERIMA KASIH ......................................................................
vi
DAFTAR ISI ..............................................................................................
vii
DAFTAR GAMBAR ..................................................................................
ix
DAFTAR TABEL .......................................................................................
x
BAB I
BAB II
PENDAHULUAN
1.1. Latar Belakang Masalah .....................................................
1
1.2. Tujuan ................................................................................
2
1.3. Batasan Masalah ................................................................
2
1.4. Sistematika Pembahasan ....................................................
3
TEORI DASAR
2.1. Uraian Umum ....................................................................
4
2.2. Sistem Timbangan Digital ..................................................
4
2.2.1. Sistem Masukan .....................................................
5
2.2.2. Sistem Pemroses .....................................................
5
2.2.3. Sistem Keluaran .....................................................
5
2.3. Mikrokontroler Atmega 8535 .............................................
6
2.3.1. Arsitektur Atmega 8535 .........................................
6
2.3.2. Memory Map Mikrokontroler AVR ........................
12
2.3.3. Penjelasan Fungsi Pin Mikrokontroler AVR ...........
12
2.4. Teori ADC AVR ................................................................
16
2.5. Potensio Geser ...................................................................
18
2.5.1. Hubungan Massa Dengan Pegas .............................
19
8
BAB III PERANCANGAN ALAT
BAB IV
3.1. Uraian Umum .....................................................................
21
3.2. Rangkaian Sensor ...............................................................
21
3.3. Rangkaian Keyped .............................................................
23
3.4. Penampilan LCD ................................................................
25
3.5. Perangkat Lunak ................................................................
30
3.6. Program Utama ..................................................................
30
3.7. Subrutin Pembacaan Pada Keypad ......................................
31
UJI COBA ALAT DAN PEMBAHASAN
4.1. Uji Coba Alat .....................................................................
38
4.2. Pembahasan .......................................................................
39
BAB V KESIMPULAN
Kesimpulan ...............................................................................
viii
51
9
DAFTAR GAMBAR
Gambar 2.1.
Blok diagram arsitektur Atmega8535 ....................................
8
Gambar 2.2.
Pin ATMega 8535 .................................................................
10
Gambar 2.3.
Memory Map Mikrokontroler AVR ......................................
12
Gambar 2.4.
Bentuk IC Seri Mikrokontroler AVR ATmega8535 ...............
13
Gambar 2.5.
Register ADMUX .................................................................
17
Gambar 2.6.
ADCSRA ........................................................................
17
Gambar 2.7.
Grafik Konversi dari Massa Menjadi Tegangan ADC ...........
18
Gambar 2.8.
Potensio Geser ......................................................................
19
Gambar 3.1.
Blok Diagram Rangkaian Timbangan Digital .......................
21
Gambar 3.2.
Rangkaian Potensio Geser Pengganti Sensor Berat ................
22
Gambar 3.3.
Grafik Resistansi Pada Potensio Geser ..................................
22
Gambar 3.4.
Rangkaian Interface Keypad 4 x 4 .........................................
23
Gambar 3.5.
Rangkaian Dasar Keypad 4 x 4 .............................................
24
Gambar 3.6.
Rangkaian interface ke LCD Karakter 2 x16 .........................
25
Gambar 3.7.
Modul Tampilan LCD ...........................................................
25
Gambar 3.8.
Rangkaian Modul LCD 16 x 2 ..............................................
27
Gambar 3.9.
Modul LCD Karakter 2 x 16 ..................................................
29
Gambar 3.10. Diagram Alir Program Utama ...............................................
31
Gambar 3.11. Diagram Pembacaan Keypad ................................................
32
Gambar 3.12. Diagram Alir Berat ................................................................
33
Gambar 3.13. Diagram Alir Harga ..............................................................
34
Gambar 3.14. Diagram Alir Pengoperasian Sistem ......................................
35
Gambar 3.15. Diagram Alir Keypad untuk Mereset Sistem .........................
36
Gambar 3.16. Diagram Alir untuk Mengkalibrasi ........................................
37
10
DAFTAR TABEL
Tabel 2.1.
Pengalamatan Register I/O ....................................................
11
Tabel 2.2.
Port Pin B dan Fungsi Khusus .............................................
14
Tabel 2.3.
Port Pin D dan Fungsi Khusus ...............................................
15
Tabel 2.4.
Mode Tegangan Referensi ....................................................
17
Tabel 2.5.
Konversi dari Massa Menjadi Tegangan ADC .......................
18
Tabel 3.1.
Resistansi Pada Potensio Geser .............................................
22
Tabel 3.2.
Spesifikasi Modul LCD 16x2 ................................................
26
Tabel 3.3.
Tabel Kebenaran ...................................................................
28
Tabel 3.4.
Modul LCD Karakter 2 x 16 ..................................................
29
Tabel 4.1.
Perhitungan Pengukuran Presentase Kesalahan .....................
39
BAB I
PENDAHULUAN
1.1
Latar Belakang Masalah
Seiring perkembangan teknologi semua aplikasi yang berhubungan dengan
kegiatan manusia telah didesain sesuai dengan fungsi dan manfaat yang
diinginkan dengan semakin efisiennya waktu yang digunakan dan maksimal
manfaat yang didapatkan,ini terbukti banyak sekali peralatan-peralatan dalam
kehidupan sehari-hari menggunakan sistem elektronik. Hal ini dapat dilihat pada
penggunaan elektronik itu sendiri pada kantor-kantor, pabrik, rumah sakit maupun
perorangan.
Sejalan dengan perkembangan elektronik banyak sekali instrumeninstrumen menggunakan sistem elektronik,karena dengan sistem ini menghasilkan
instrumen yang jauh lebih baik dibandingkan menggunakan instrumen
analog,begitu juga halnya dengan sistem timbangan. Sistem timbangan elektronik
menggantikan sisitem timbangan analog.
Untuk saat ini timbangan analog masih banyak digunakan di masyarakat
umum, ini dikarenakan timbangan digital harganya masih sangat mahal, padahal
menggunakan
timbangan
analog
banyak
sekali
kekurangan-kekurangan
diantaranya :
•
Pembacaan skala tergantung ketelitian mata.
•
Tidak memiliki resolusi skala yang lebih besar.
•
Tidak dapat memproses data lain dari benda yang ditimbang seperti harga.
•
Berat yang di ukur tidak sesuai dengan anak timbangan.
Dari penjelasan tersebut maka sangatlah perlu untuk mengganti timbangan
analog dengan sistem timbangan digital, dimana pembuatannya dalam hal ini
mengguinakan sistem mikrokontroler.
Sistem instrument timbangan digital menggunakan mikrokontroler
memungkinan untuk memproses data yang lebih baik, seperti memasukan data
harga melalui keypad dari barang yang telah ditimbang, untuk menghasilkan
1
2
harga total dari barang yang ditimbang, dan juga tampilan lain yang mendukung
sistem
keseluruhan
sehingga
penggunaan
dapat
memudahkan
dalam
pengoperasian instrumen itu sendiri.
Bertolak dari hal di atas maka tugas akhir ini dibuat suatu instrument
timbangan digital berbasis mikrokontroler AVR Atmega 8535 ditambah dengan
proses memasukan harga dari barang yang ditimbang.
1.2
Tujuan
Proyek akhir ini bertujuan merancang dan membuat alat berupa
timbangan digital yang menggunakan mikrorokontroler sebagai penunjuk akhir
hasil berat dan harga yang ditimbang dengan tampilan LCD.serta mengukur
berapa resolusi dan error yang didapat.
1.3
Batasan Masalah
Pada perancangan timbangan digital ini akan meliputi sistem perancangan
perangkat keras dan perangkat lunak.
Perangkat keras yang dirancang terdiri dari rangkaian mikrontroler AT
Mega 8535, rangkaian ADC, sistem sensor, dan rangkaian keypad.
Sistem timbangan yang dibuat dalam hal perangkat keras hanya dibatasi
antara lain :
•
Sensor berat yang digunakan diganti dengan potensiometer.
•
Jangkauan ukur yang ditimbang dari 0 Kg sampai 10 Kg.
•
Masukan untuk harga barang yang ditimbang sampai delapan digit, yaitu dari
Rp. 0 sampai Rp. 99999999.
Alasan mengganti dengan potensio geser ini dikarenakan penulis agak
kesulitan dalam mencari sensor tersebut, tetapi penggantian ini tidak menyimpang
dari sistem kerja alat itu sendiri, dimana mengganti kenaikan berat timbangan
yang sebanding dengan kenaikan putaran potensio geser.
Perancangan perangkat lunak meliputi proses pembacaan ADC, proses
pembacaan keypad, proses perkalian harga dengan berat dan proses tampilan ke
LCD dengan menggunakan pemrogram Basic pada Bascom AVR ATmega 8535.
3
1.4
Sistematika Pembahasan
Pada penyusunan laporan tugas akhir terdiri dari beberapa bab
pembahasan.
Sistematika pembahasan tersebut adalah sebagai berikut :
JUDUL
: Judul yang dipilih adalah “Timbangan Digital Menggunakan
Mikrokontroler AVR ATmega 8535”.
ABSTRAK
: Berisi gambaran umum dan garis besar mengenai pendahuluan,
tujuan batasan masalah, dan sistematika dari perencanaan yang
dilakukan.
BAB I
: PENDAHULUAN
Pada bab ini diberikan judul, latar belakang, tujuan, pembatasan
masalah, dan sistematika dari perencanaan yang dilakukan.
BAB II
:
TEORI DASAR
Bab ini menjelaskan teori umum sistem timbangan dan
pembahasan ATMega 8535, yang meliputi spesifikasi umum
anggota keluarganya, organisasi memori, register fungsi khusus
yang
dimilikinya,
osilator,
pewaktu,
dan
gerbang
input/output.Dan Potensio geser yang dipakai sebagai pengganti
sensor berat .
BAB III
:
PERANCANGAN ALAT
Bab ini menjelaskan dari rangkaian yang meliputi uraian umum,
rangkaian
sensor,
rangkaian
ADC,
rangkaian
keypad,
perancangan sistem minimum mikrokontroler ATMega 8535 dan
menjelaskan perangkat lunak (software) yang digunakan dalam
timbangan digital adalah menggunakan Bahasa Basic.
BAB IV
:
UJI COBA ALAT DAN PEMBAHASAN
Dalam bab ini berisi pengujian program, kemampuan serta cara
kerja dari perancangan alat yang dibuat.
BAB V
: KESIMPULAN
Pada bab ini berisi kesimpulan tentang timbangan digital yang
telah dibuat dalam tugas akhir ini untuk pengembangannya.
4
BAB II
TEORI DASAR
2.1
Uraian Umum
Timbangan adalah suatu alat yang digunakan untuk menentukan ukuran
berat dari suatu barang. Timbangan itu sendiri berbagai macam ragamnya antara
lain
: Timbangan duduk, timbangan gantung, timbangan emas dan lain
sebagainya.
Timbangan mempunyai kemampuan menimbang dan ketelitian yang
berbeda-beda. Semakin teliti dan semakin besar kemampuan menimbangnya
maka akan semakin mahal harganya.
Dalam segi perangkat keras dan dua macam timbangan yaitu timbangan
analog dan timbangan elektronik, untuk timbangan analog biasanya dilihat dari
proses kesetimbangan, sehingga ada istilah anak timbangan yaitu benda
penyeimbang dengan benda yang akan kita timbang lain halnya dengan timbangan
elektronik, timbangan ini
menggunakan transfer berat yang dapat merubah
perubahan beban dengan perubahan sinyal listrik dalam hal ini berupa tegangan.
Sinyal tegangan ini kemudian dirubah menjadi sinyal digital menggunakan ADC
internal ATmega 8535, yang selanjutnya diproses sehingga dapat membaca berat
dan harga dari timbangan berupa tampilan digital.
Timbangan elektronik ini tentunya mempunyai banyak kelebihan
dibandingkan dengan timbangan analog diantaranya : mempunyai ketelitian yang
spesifik, pembacaan data yang lebih baik dan dapat pula memproses data lain dari
benda yang ditimbang.
2.2
Sistem Timbangan Digital
Secara garis besar sistem timbangan digital dibagi menjadi tiga bagian
utama, yaitu :
4
5
Sistem masukan
•
Sistem pemrosesan
•
Sistem keluaran
2.2.1 Sistem Masukan
Dalam perancangan sistem timbangan digital ini inputnya berupa Sensor
potensiometer pengganti tranduser berat dan ADC Internal AT8535 yang merubah
input analog menjadi digital. Masukan analog untuk ADC ini berupa tegangan
dengan range 0 sampai 5 volt, yang menghasilkan.
Sistem timbangan yang dirancang ini mempunyai kemampuan menimbang
dari 0 sampai 9,99 Kg, sehingga mempunyai ketelitian seperseratus kilogram.
Dengan tegangan masukan maksimum 5 volt untuk ADC, maka untuk setiap
kenaikan 1 menimbang sampai 10 Kg dan ketelitian seperseratus kilogram. Dalam
perancangan ini tranduser beratnya disimulasikan menggunakan potensio geser,
sehingga dengan memutar potensio geser tersebut akan dihasilkan berat yang
diinginkan.
Selain menimbang instrumen ini menerima masukan data harga
perkilogram dari keypad, dimana data harga ini kemudian dikalikan dengan data
berat untuk memperoleh harga total dari benda yang kita timbang.
2.2.2 Sistem Pemroses
Sistem pemroses yang digunakan dalam sistem timbangan digital ini
berupa sistem minimum ATmega 8535 sistem ini diperlukan untuk memproses
data masukan berat dari ADC, data masukan harga dari keypad, mengalikan data
harga dan berat dan menampilkannya ke penampil dalam hal ini berupa LCD.
2.2.3 Sistem Keluaran
Informasi data berat, dan harga, harga total dan informasi-informasi
lainnya kemudian ditampilkan kekeluaran dalam hal ini berupa LCD. LCD yang
digunakan adalah LCD 16 x 2 dot formal 2 line.
6
2.3
Mikrokontroler ATMega 8535
Perkembangan teknologi telah maju dengan pesat dalam perkembangan
dunia
elektronik,
khususnya
dunia
mikroelektronika.
Penemuan
silikon
menyebabkan bidang ini mampu memberikan sumbangan yang amat berharga
bagi perkembangan teknologi modern. Atmel sebagai salah satu vendor yang
mengembangkan dan memasarkan produk mikroelektronika telah menjadi suatu
teknologi standar bagi para desainer sistem elktronika masa kini.Dengan
perkembangan terakhir,yaitu generasi AVR (Alf and Vegard’s Risc processor),
para desainer sistem elektronika telah diberi suatu teknologi yang memiliki
kapabilitas yang sangat maju tetapi dengan biaya ekonomis yang cukup minimal.
Mikrokontroler AVR memiliki arsitektur RISC 8 bit, dimana semua
instruksi dikemas dalam kode 16 – bit ( 16 – bits word ) dan sebagian besar
instruksi dieksekusi dalam 1 (satu ) siklus clock, berbeda dengan instruksi MCS51
yang membutuhkan 12 siklus clock. Tentu saja itu terjadi karena kedua jenis
mikrokontroler tersebut memiliki beberapa perbedaan. AVR berteknologi RISC
(Reduced Instruction Set Computing), sedangkan seri MCS51 berteknologi CISC
(Complex Instruction Set Computing). Secara umum, AVR dapat dikelompokan
menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga ATMega,
dan AT86RFxx. Pada dasarnya yang membedakan masing – masing kelas adalah
memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang
digunakan, mereka bisa dikatakan hampir sama.
2.3.1 Arsitektur ATMega 8535
Beberapa komponen yang ada didalam tubuh ATMega8535 bagi yang
sudah memahami dan menggeluti bidang mikroelektronika sudah tidak asing lagi.
Tetapi ada beberapa komponen yang cukup membedakan antara generasi
AVRMega8535 dengan generasi mikrokontroler sebelumnya. Berikut arsitektur
komponen ATMega8535 , untuk blok diagram lihat gambar 2.1 :
7
1.
Saluran I/O sebanyak 32 buah,yaitu Port A, Port B, Port C, dan
Port D.
2.
ADC 10 bit sebanyak 8 saluran.
3.
Tiga buah Timer/ Counter dengan kemampuan pembandingan.
4.
CPU yang terdiri atas 32 buah register.
5.
Watchdog Timer dengan osilator interna.
6.
SRAM sebesar 512 byte.
7.
Memori Flash sebesar 8 kb dengan kemampuan Read While Write.
8.
Unit interupsi internal dan eksternal.
9.
Port antarmuka SPI.
10. EEPROM sebesar 8 kb dengan kemampuan Read While Write.
11. Antarmuka komparator analog.
12. Port USART untuk komunikasi serial.
8
Gambar 2.1 Blok diagram arsitektur Atmega8535
9
Adapun fitur dari ATMega8535 adalah sebagai berikut :
1. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16
MHz.
2. Kapabilitas memori flash 8 KB, SRAM sebesar 512 byte, dan EEPROM
(Electrically Erasable Programmable Read Only Memory) sebesar 512 byte.
3. ADC internal dengan fidelitas 10 bit sebanyak 8 channel.
4. Portal komunikasi serial (USART) dengan kecepatan maksimal 2.5 Mbps.
5. Enam pilihan mode sleep menghemat penggunaan daya listrik.
Dari gambar 2.1. tersebut dapat dijelaskan secara fungsional konfigurasi pin
ATMega8535 sebagai berikut :
1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya.
2. GND merupakan pin ground.
3. Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC.
4. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
TWI, komparator analog, dan Timer Oscilator.
5. PortC (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu
TWI, komparator analog, dan Time Oscilator.
6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungs khusus yaitu
komparator analog, interupsi eksternal, dan
komunikasi serial.
7. RESET merupakan pin yang digunakan untuk mereset
mikrokontroler.
8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.
9. AVCC merupakan pin masukan tegangan untuk ADC.
10. AREF merupakan pin masukan tegangan referensi ADC.
10
Gambar 2.2 Pin ATMega 8535
AVR ATMega 8535 memiliki ruang pengalamatan memori data dan
memori program yang terpisah. Memori data terbagi menjadi 3 bagian, yaitu 32
buah register umum, 64 buah register I/O, dan 512 byte SRAM Internal. Register
keperluan umum menempati space data pada alamat terbawah, yaitu $00 Sampai
$IF. Sementara itu, register khusus untuk menangani I/O dan kontrol terhadap
mikrokontroler menempati 64 alamat berikutnya, yaitu mulai dari $20 hingga $5F.
Register tersebut merupakan register yang khusus digunakan untuk mengatur
fungsi terhadap berbagai peripheral mikrokontroler, seperti kontrol register, timer/
counter, fungsi – fungsi I/O, dan sebagainya. Register khusus alamat memori
secara lengkap dapat dilihat pada table 2.1. Alamat memori berikutnya digunakan
untuk SRAM 512 byte, yaitu pada lokasi $60 sampai dengan $25F. Sementara
untuk memori program yang terletak dalam Flash PEROM tersusun dalam word
11
atau 2 byte karena setiap instruksi memiliki lebar 16 bit atau 32 bit. AVR
ATMega 8535 memiliki 4Kbytex 16 bit Flash PEROM dengan alamat mulai dari
$000 sampai $FFF. AVR tersebut memiliki 12 – bit Program counter(PC)
sehingga mampu mengalamati isi flash.
Tabel 2.1 Pengalamatan Register I/O
12
2.3.2 Memory Map Mikrokontroler AVR
Gambar 2.3. Memory Map Mikrokontroler AVR
2.3.3 Penjelasan Fungsi PIN Mikrokontroler AVR
IC mikrokontroler dikemas (packaging) dalam bentuk yang berbeda.
Namun pada dasarnya fungsi kaki yang ada pada IC memiliki persamaan. Gambar
salah satu bentuk IC seri mikrokontroler AVR ATmega8535 dapat dilihat berikut.
13
Gambar 2.4 : IC seri Mikrokontroler AVR ATmega8535
Berikut adalah penjelasan fungsi tiap kaki.
A. Port A
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung.
Data Direction Register port A (DDRA) harus disetting terlebih dahulu
sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan
pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output.
Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog
bagi A/D converter.
14
B. Port B
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung.
Data Direction Register port B (DDRB) harus disetting terlebih dahulu
sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pinpin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output.
Pin-pin port B juga memiliki untuk fungsi-fungsi alternatif khusus seperti
yang dapat dilihat dalam tabel berikut.
Tabel 2.2. Port Pin B dan Fungsi Khusus
Port Pin
Fungsi Khusus
PB0
T0 = timer/counter 0 external counter
input
PB1
T1 = timer/counter 0 external counter
input
PB2
AIN0 = analog comparator positive input
PB3
AIN1 = analog comparator negative
input
PB4
SS = SPI slave select input
PB5
MOSI = SPI bus master output / slave
input
PB6
MISO = SPI bus master input / slave
output
PB7
SCK = SPI bus serial clock
C. Port C
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung.
Data Direction Register port C (DDRC) harus disetting terlebih dahulu
sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pinpin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output.
15
Selain itu, dua pin port C (PC6 dan PC7) juga memiliki fungsi alternatif
sebagai oscillator untuk timer/counter 2.
D. Port D
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat
memberi arus 20 mA dan dapat mengendalikan display LED secara langsung.
Data Direction Register port D (DDRD) harus disetting terlebih dahulu
sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan
pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output.
Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus
seperti yang dapat dilihat dalam tabel berikut.
Tabel 2.3 Port Pin D dan Fungsi Khusus
Port Pin
Fungsi Khusus
PD0
RDX (UART input line)
PD1
TDX (UART output line)
PD2
INT0 ( external interrupt 0 input )
PD3
INT1 ( external interrupt 1 input )
PD4
OC1B (Timer/Counter1 output compareB match output)
PD5
OC1A (Timer/Counter1 output compareA match output)
PD6
ICP (Timer/Counter1 input capture pin)
PD7
OC2 (Timer/Counter2 output compare match output)
E. Reset
RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan
low selama minimal 2 machine cycle maka system akan di-reset.
F. XTAL1
XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal
clock operating circuit.
G. XTAL2
XTAL2 adalah output dari inverting oscillator amplifier.
16
H. Avcc
Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus
secara eksternal terhubung ke Vcc melalui lowpass filter.
I. AREF
AREF adalah kaki masukan referensi bagi A/D Converter. Untuk
operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus
dibeikan ke kaki ini.
J. AGND
AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND,
kecuali jika board memiliki anlaog ground yang terpisah.
2.4
Teori ADC AVR
Suatu sensor umumnya mengeluarkan tegangan analog. Tegangan analog
ini harus diubah menjadi digital oleh mikrokontroler. Hal ini dikarenakan peranti
penampil data adalah dalam format digital, misalnya LCD dan 7 segmen.
ATmega8535 memiliki fitur ADC dengan resolusi 10-bit, yang terhubung dengan
delapan saluran Analog Multiplexer, sehingga memungkinkan untuk membangun
sistem elektronika yang kompak.
Pada Pin ADC mikrokontroler tersebut terdapat rangkaian Sample and
Hold, dimana tegangan input ADC ditahan dalam tingkat yang konstan pada saat
konversi berlangsung. Kecepatan konversinya sekitar 65-260 us.
Proses inisialisasi ADC meliputi proses penentuan clock, tegangan
referensi, format output data, dan metode pembacaan. Register yang perlu diset
nilainya adalah ADMUX (ADC Multiplexer Selection Register), ADCSRA (ADC
Control and Status Register), dan SFIOR (Special Function IO Register).
ADMUX merupakan register 8-bit yang berfungsi menentukan tegangan referensi
ADC, format data output, dan saluran ADC yang digunakan.
17
Bit
7
6
5
4
3
2
1
0
REFS1
REFS0
ADLAR
MUX4
MUX3
MUX2
MUX1
MUX0
Read/Write
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Initial Value
0
0
0
0
0
0
0
0
ADMUX
Gambar 2.5. Register ADMUX
1. RFS (1..0) merupakan bit pengatur tegangan referensi ADC ATmega8535.
Memiliki nilai awal 00 sehingga referensi tegangan berasal dari pin AREF.
Tabel 2.4. Mode Tegangan Referensi
REFS1 REFS0
Mode Tegangan Referensi
0
0
Tegangan dari Pin AREF
0
1
Tegangan dari Pin AVCC
1
0
Tidak digunakan
1
1
Tegangan referensi internal 2.56 V
2. ADLAR merupakan bit pemilih mode data keluaran ADC. Bernilai awal 0
sehingga 2 bit tertinggi data hasil konversinya berada di register ADCH dan 8
bit sisanya berada di register ADCL.
3. MUX (4..0) merupakan bit pemilih saluran pembacaan ADC Bernilai awal
00000. Untuk Single Ended Input, MUX (4..0) bernilai dari 00000-11111.
4. ADCSRA merupakan register 8-bit yang berfungsi melakukan manajemen
signal control dan status dari ADC. Proses konversi dimulai dengan cara
memberikan logika 1 pada bit ADC Start Conversion (ADAC). Bit ini terus
berlogika 1 selagi proses konversi masih berlangsung dan akan dihapus oleh
hardware ketika konversi selesai.
Bit
7
6
5
4
3
2
1
0
ADEN
ADSC
ADATE
ADIF
ADIE
ADPS2
ADPS1
ADPS0
Read/Write
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
Initial Value
0
0
0
0
0
0
0
0
Gambar 2.6. ADCSRA
ADCSRA
18
Oleh karena dipakai 8 bit ADC, maka rentang output yang mungkin
dihasilkan adalah dari 0 sampai 255 (8 bit = 28 = 256). Jika masukan analog
adalahl 0 V, maka keluaran hasil konversi adalah 0. Jika masukan analog ADC
sama besarnya dengan tegangan referensi, maka hasil keluaran konversi adalah
255.
Adapun untuk lebih jelasnya dapat dilihat pada tabel konversi massa
menjadi tegangan di ADC.
Tabel 2.5 : Konversi dari Massa Menjadi Tegangan ADC
Beban
0
1
2
3
ADC
768
710
647
583
Tegangan
10,36
11,66
12,46
14,26
y = -61,8x + 769,7
1000
800
Series1
600
Linear
(Series1)
400
200
0
0
1
2
3
4
Gambar 2.7 : Grafik Konversi dari Massa Menjadi Tegangan ADC
2.5
Potensio Geser
Potensio geser, seperti tampak pada gambar 2.3 di bawah, adalah salah
satu bentuk variable resistor, atau resistor yang nilainya beragam tergantung
posisi tuasnya. Biasanya dipakai pada equalizer untuk menentukan amplitudo
frekuensi tertentu yang keluar dari amplifier audio.
19
Besar resistansinya terhadap resistansi total, proporsional terhadap posisi tuasnya,
dengan rumus
Rs =
ds
R
d
di mana Rs adalah resistansi.
Gambar 2.8. Potensio Geser
Potensio geser berfungsi untuk mengubah posisi mekanis menjadi sinyal
elektris. Potensio ini merupakan sebuah tahanan ( resistor ) yang mempunyai
kontak geser sehingga tahanan dapat diatur dari nol sampai maksimum. Gerakan
ini dihasilkan oleh perputaran poros ( shaft ) sehingga setelah potensio dialiri arus
listrik, terjadi tegangan listrik pada suatu kedudukan kontak.
2.5.1 Hubungan Massa Dengan Pegas
Sebuah sistem adalah linear jika hubungan antara suatu variabel terhadap
variabel lainnya atau antara keluaran dan masukan adalah linear dalam suatu
daerah terbatas. Dalam ilmu listrik, tahanan merupakan komponen yang linear
dimana dengan membuat arus listrik yang melalui tahanan tersebut menjadi dua
kali, dapat beda tegangan antara kedua ujung tahanan juga akan berubah menjadi
dua kali.
Demikian juga pada sebuah per (pegas) dalam sistem mekanis yang jika
salah satu ujungnya dibuat tetap sedang ujung lainnya ditarik atau ditekan dengan
20
gaya F dan kemudian gaya tarik tersebut diperbesar dua kali, maka perpanjangan
per (pegas) tersebut juga akan sebanding dengan pertambahan gaya.
Hubungan linear ini tidak berlaku secara terbatas, karena tahanan listrik
maupun per (pegas) akan memiliki sifat linear pada daerah yang terbatas; artinya,
jika arus melalui tahanan diperbesar terus beberapa kali, maka pada suatu harga
tertentu akan menjadi kelebihan arus yang tidak dapat ditampung oleh tahanan
dan akibatnya tahanan tersebut akan terbakar; demikian juga pada pegas jika gaya
makin diperbesar maka pada suatu keadaan tertentu pegas tersebut akan putus.
Dari keadaan-keadaan ini dapat disimpulkan bahwa linearitas suatu sistem terjadi
pada daerah yang terbatas.
21
BAB III
PERANCANGAN ALAT
3.1
Uraian Umum
Sistem rangkaian timbangan digital ini digunakan AVR ATMega8535
yang dimana keluaran dari sistem ADC ini langsung dari mikrokontroler tersebut,
data harga dari berat dapat dimasukan ke keypad ( keypad ), bersama dengan data
berat di proses di sistem ATMega8535 yang kemudian dapat ditampilkan di LCD.
Blok diagram ini diperlihatkan pada gambar 3.1.
Sensor
Microcontroler AVR AT Mega
8535
LCD
KEYPAD
Gambar 3.1 Blok Diagram Rangkaian Timbangan Digital
3.2
Rangkaian Sensor
Rangkaian sensor pada alat ini berfungsi untuk mengkonversi besaran
massa ke besaran listrik, dalam hal ini resistansi. Sensor ini diwakili sebuah
potensio geser (sliding potentiometer), besar resitansinya bervariasi tergantung
posisi tuasnya, sementara posisi tuas tersebut proporsional terhadap massa benda
yang diletakkan pada timbangan.
Sebelum diumpan ke input ADC, variasi resistansi diubah menjadi variasi
tegangan dengan menerapakan prinsip pembagi tegangan.
21
22
Gambar 3.2 : Rangkaian Potensio Geser Pengganti Sensor Berat
Adapun cara mengukur resistansi dan tegangan pada potensio geser
dengan menggunakan multimeter untuk mengukur berdasarkan massa atau berat,
dan hasilnya dapat dilihat pada tabel dan grafik di bawah ini.
Tabel 3.1 Tabel Resistansi Pada Potensio Geser
No
1
2
3
4
Massa
0
1
2
3
Resistansi ( ohm )
10.3
11.36
12.27
12.7
Resistansi ( ohm )
14
12
10
8
Resistansi ( ohm )
6
4
2
0
0
1
2
3
4
Gambar 3.3 : Grafik Resistansi Pada Potensio Geser
23
3.3
Rangkaian Keypad
Sebuah keypad pada umunya dihubungkan secara matriks ( baris dan
kolom ). Keypad yang dihubungkan dengan rangkaian mikrokontroler adalah jenis
keypad kontak mekanis dengan konfigurasi matriks 4 x 4 ( 4 kolom kali 4 baris )
keypad ini berfungsi sebagai piranti data yang diinginkan untuk memasukan nilai
harga suatu barang yang ditimbang. Rangkaian keypad dapat dilihat pada
gambar 3.3.
Gambar 3.4 : Rangkaian interface keypad 4 x 4
Keypad sering digunakan sebagi suatu input pada beberapa peralatan yang
berbasis mikroprosessor atau mikrokontroller. Keypad sesungguhnya terdiri dari
sejumlah saklar, yang terhubung sebagai baris dan kolom dengan susuan seperti
yang ditunjukkan pada gambar 3.3. Agar mikrokontroller dapat melakukan scan
keypad, maka port mengeluarkan salah satu bit dari 4 bit yang terhubung pada
kolom dengan logika low “0” dan selanjutnya membaca 4 bit pada baris untuk
menguji jika ada tombol yang ditekan pada kolom tersebut. Sebagai konsekuensi,
selama tidak ada tombol yang ditekan, maka mikrokontroller akan melihat sebagai
logika high “1” pada setiap pin yang terhubung ke baris.
24
Gambar 3.4. Rangkaian Dasar Keypad 4 x 4
Apabila sebuah keypad dihubungkan ke suatu mikroprosesor, maka ada
tiga pekerjaan pokok untuk menangani keypad ini. Ketiga hal tersebut adalah :
1. Mendeteksi adanya keypad yang ditekan
2. Melakukan debounce pada keypad yang ditekan
3. Melakukan proses pengkodean pada keypad yang ditekan
Ketiga pekerjaan diatas dapat dilakukan oleh perangkat keras, perangkat lunak
atau kombinasi keduanya, tergantung perancanga sistem yang dirancang. Pada
system ini penangan keypad ini dipilih dengan menggunakan perangkat lunak (
software ). Pemilihan ini berdasarka pertimbangan bahwa penanganan dengan
perangkat lunak termasuk sederhana dan mudah dilacak bila terjadi kesalahan.
25
3.4
Penampilan LCD
Gambar 3.5. Rangkaian interface ke LCD Karakter 2 x16
Gambar 3.6. Modul Tampilan LCD 16 x 2
•
•
•
•
•
•
•
•
Hitachi HD44780 compatible LCD controller dan RAM yang simpel
61 x 15.8 mm lebar layar
5 x 7 dot matrix format untuk 2.96 x 5.56 mm characters, plus cursor line
Dapat mendisplay 224 symbol yang berbeda
Low power consumption (1 mA typical)
Power command set dan user-produced characters
TTL and CMOS compatible
Konektor yang standar 0.1-pitch pin
26
Tabel 3.2 Spesifikasi Modul LCD 16x2
Pin
Symbol
Level
Function
1
VSS
-
Power, GND
2
VDD
-
Power, 5V
3
Vo
-
Power, for LCD Drive
4
RS
H/L
Register Select Signal
H : Data Input
L : Instruction Input
5
R/W
H/L
H : Data Read (LCD->MPU)
L : Data Write (MPU->LCD)
6
E
H,H->L
7-14
DB0-DB7
H/L
15
NC
-
NOT CONNECTED
16
NC
-
NOT CONNECTED
Enable
Data Bus; Software selectable 4- or 8-bit mode
27
Gambar 3.7. Rangkaian Modul LCD 16x2
Display karakter pada LCD diatur oleh pin EN, RS dan RW:
Jalur EN dinamakan Enable. Jalur ini digunakan untuk memberitahu LCD bahwa
anda sedang mengirimkan sebuah data. Untuk mengirimkan data ke LCD, maka
melalui program EN harus dibuat logika low “0” dan set pada dua jalur kontrol
yang lain RS dan RW. Ketika dua jalur yang lain telah siap, set EN dengan
logika “1” dan tunggu untuk sejumlah waktu tertentu (sesuai dengan datasheet
dari LCD tersebut) dan berikutnya set EN ke logika low “0” lagi.
Jalur RS adalah jalur Register Select. Ketika RS berlogika low “0”, data akan
dianggap sebagi sebua perintah atau instruksi khusus ( seperti clear screen, posisi
kursor dll ). Ketika RS berlogika high “1”, data yang dikirim adalah data text yang
akan ditampilkan pada display LCD. Sebagai contoh, untuk menampilkan
huruf “T” pada layar LCD maka RS harus diset logika high “1”.
Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka
informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika
high ”1”, maka program akan melakukan pembacaan memori dari LCD.
Sedangkan pada aplikasi umum pin RW selalu diberi logika low ”0”.
Pada akhirnya, bus data terdiri dari 4 atau 8 jalur ( bergantung pada mode operasi
28
yang dipilih oleh user ). Pada kasus bus data 8 bit, jalur diacukan sebagai DB0 s/d
DB7.
Beberapa perintah dasar yang harus dipahami adalah inisialisasi LCD Character,
Tabel 3.3. Tabel Kebenaran
29
Gambar 3.8 : Modul LCD Karakter 2 x 16
Modul LCD Character dapat dengan mudah dihubungkan dengan
mikrokontroller seperti AT8535. LCD yang akan kita praktikumkan ini
mempunyai lebar display 2 baris 16 kolom atau biasa disebut sebagai LCD
Character 2x16, dengan 16 pin konektor, display karakter pada LCD diatur oleh
pin EN, RS dan RW. Jalur EN dinamakan Enable. Jalur ini digunakan untuk
memberitahu LCD bahwa anda sedang mengirimkan sebuah data. Untuk
mengirimkan data ke LCD, maka melalui program EN harus dibuat logika low
“0” dan set pada dua jalur kontrol yang lain RS dan RW. Ketika dua jalur yang
lain telah siap, set EN dengan logika “1” dan tunggu untuk sejumlah waktu
tertentu ( sesuai dengan datasheet dari LCD tersebut ) dan berikutnya set EN ke
logika low “0” lagi. Jalur RS adalah jalur Register Select. Ketika RS berlogika
low “0”, data akan dianggap sebagai sebuah perintah atau instruksi khusus (seperti
30
clear screen, posisi kursor dll). Ketika RS berlogika high “1”, data yang dikirim
adalah data text yang akan ditampilkan pada display LCD. Sebagai contoh, untuk
menampilkan huruf “T” pada layar LCD maka RS harus diset logika high “1”.
Jalur RW adalah jalur kontrol Read/ Write. Ketika RW berlogika low (0), maka
informasi pada bus data akan dituliskan pada layar LCD. Ketika RW berlogika
high ”1”, maka program akan melakukan pembacaan memori dari LCD.
Sedangkan pada aplikasi umum pin RW selalu diberi logika low ”0”. Pada
akhirnya, bus data terdiri dari 4 atau 8 jalur ( bergantung pada mode operasi yang
dipilih oleh user ). Pada kasus bus data 8 bit, jalur diacukan sebagai DB0 s/d DB7
Beberapa perintah dasar yang harus dipahami adalah inisialisasi LCD Character.
3.5
Perangkat Lunak
Perangkat lunak (software) yang digunakan dalam sistem timbangan
digital ini adalah bahasa pemrograman BASIC.Fungsi utama dari perangkat lunak
ini yaitu :
1. Menerima
masukan
data
dari
ADC
microkontroler
berupa
data
berat,memprosesnya dan menampilkannya ke LCD.
2. Menerima masukan dari keypad berupa data harga kemudian memprosesnya
bersama-sama data berat untuk menampilkan harga total.
3.6
Program Utama
Program utama yaitu program yang dijalankan saat pertama kali alat
dijalankan atau direset secara hardware yaitu :
31
Inisialisasi Micro
Config LCD pin
Config Keypad
Config ADC
Deklarasi For Program Keypad
Declarasi for Program Menu
Dim B As Byte
Dim _b As Eram Byte
B = _b
If B = 255 Then
End If
B=1
_b = B
Masuk
Program
MENU
Else Goto
Run_system
Gambar 3.9 : Diagram Alir Program Utama
3.7
Subrutin pembacan pada keypad
Program rutin keypad ini secara garis besar yaitu : men-scanning keypad
mel1akukan debounce, pembacaan keypad dan pengkodean keypad untuk lebih
jelasnya diperlihatkan diagram alirnya di gambar 3.10.
32
Gambar 3.10 : Diagram Pembacaan Keypad
33
Setting Weight
Display_lcd1:
Cls
Locate 1 , 1 : Lcd "Enter the weight"
Locate 2 , 1 : Lcd "Weight(Kg)="
Cursor On Blink
Program KEYPAD
Lcd Key_str
Weight_str = Weight_str + Key_str
Key_str= D
Key_str= C
Weight_num = Val(weight_str)
Ram_weight = Weight_num
Cursor Off Blink
Goto Menu
Goto Reset_system
Gambar 3.11 : Diagram Alir Berat
34
Gambar 3.12 : Diagram Alir Harga
35
Gambar 3.13 : Diagram Alir Pengoperasian Sistem
36
A
Program KEYPAD
Key_str= C
B = 255
_b = B
_c = B
Goto Reset_sistem
Key_str= A
Call Calibration
_nilai_y = Y
B
Reset_system
Cls
Config Watchdog = 16
Start Watchdog
Do
Loop
Gambar 3.14 : Diagram Alir Keypad untuk Mereset Sistem
37
Sub calibration
Y = 800.68
A=1
X=0
Cls
Locate 1 , 1 : Lcd " Calibration "
Do
Incr A
W = Getadc(0)
X=X+W
Loop Until A = 1000
X = X / 1000
Do
Hasil = Y – X
Hasil = Hasil / 63.591
_hasil = Fusing(hasil , "#.##")
'Print _hasil ; " " ; Y ; " " ; X
If _hasil <= "0.01" Then Exit Do
If Y <= 4.6818 Then Call Calibration
Y = Y - 1.00
Loop
End Sub
Gambar 3.15 : Diagram Alir untuk Mengkalibrasi
38
BAB IV
UJI COBA ALAT DAN PEMBAHASAN
4.1
Uji Coba Alat
Setelah perangkat keras dan lunak terealisasi maka dilakukan uji
coba.pengujian yang dilakukan adalah system keseluruhan yang merupakan
simulasi dari potensio geser pengganti sensor beratnya.
Dalam pengujian ini penulis memulai dengan mengukur tegangan yang
dihasilkan yaitu antara 0 sampai 999 mV. kemudian mengubah tagangan potensio
tersebut dari nilai minimal sampai maksimal.perubahan tegangan yang dihasilkan
oleh potensio harus sampai dengan perubahan data berat yang ditampilkan,untuk
kenaikan tegangan sebesar 1mV maka perubahan harga dari tampilan adalah
sebesar 0.01 kg,sehingga untuk tegangan maksimal 5 V maka data berat yang
ditampilkan adalah 9.99 kg.
Langkah selanjutnya yaitu pengujian keypad :
1. Bila keypad pada tombol A ditekan lalu dibiarkan sebentar sampai beberapa
detik,maka akan mengkalibrasi alat tersebut dan tombol A juga berfungsi
sebagai tombol UP(atas).
2. Keypad pada tombol B apabila ditekan akan berfungsi sebagai tombol
down(bawah).
3. Dan keypad pada tombol C yang berfungsi sebagai MENU dan CANCEL
apabila tidak memilih program.
4. Keypad pada tombol D berpungsi sebagai ENTER terhadap program MENU
pada tombol C dan juga Menunjukan suatu posisi tombol perintah yang akan
diprogram.
5. Tombol angka-angka menunjukan suatu harga dan memprosesnya dengan data
berat berupa hasil perkalian keduanya,sehingga diperoleh total harga yang
sesuai.pada tabel 4.1 diperlihatkan contoh beberapa hasil perbandingan
pengukuran dari data berat ke tampilan LCD.
38
39
Dari tabel 4.1 terlihat bahwa hasil perhitungan dari hasil pengukuran mengalami
sedikit perbedaan dimana presentase kesalahannaya dapat dihitung sebagai
berikut :
Tabel 4.1 Perhitungan Pengukuran Presentase Kesalahan
No
Beban (kg)
Data berat di tampilan LCD
1
2
3
4
5
1
2
3
4
5
0.99
2.02
2.98
4.02
4.87
% kesalahan =
rata − rata perhitungan − rata − rata pengukuran
x 100%
rata − rata − perhitungan
Dimana : Rata2 Perhitungan = (• Hasil Perhitungan) / (• Perhitungan)
Rata2 Pengukuran = (• Hasil Pengukuran) / (• Pengukuran)
Di mana hasil perhitungan menurut rumus di atas diperoleh presentase sebesar
1.1533 % . Kesalahan ini disebabkan karena beberapa factor dibawah ini :
•
Pengukuran dengan alat ukur menimbulkan beban terhadap hasil ukur
sehingga terjadi penyimpangan hasil ukur.
•
Potensio geser sebagai pengganti sensor berat sangat berpengaruh terhadap
beban yang diinginkan.
4.2
Pembahasan
Pada saat pertama kali alat dijalankan data dari input akan di konversi ke
digital dengan menggunakan system digital ADC internal pada ATMega 8535,
kemudian dihubungkan ke potensio geser, lalu disimpan didalam EEPROM dan
seterusnya ditampilkan di LCD. Data masukan harga melalui port yang disimpan
di EEPROM kemudian ditampilkan ke LCD berupa informasi harga.
40
Selanjutnya melakukan penekanan keypad, jika keypad A ditekan
beberapa saat maka akan muncul kalibrasi dan apabila kita akan memasukkan
harga maka keypad C harus ditekan yang menampilkan program menu.
Diantaranya Berat, Harga, Cek Harga dan berat, Pengoperasian sistem.
41
BAB V
KESIMPULAN
Berdasarkan sistem yang dirancang dalam tugas akhir ini, dapat ditarik
beberapa kesimpulan yang dapat dijadikan acuan aau bahan pembanding untuk
dikembangkan selanjutnya, diantaranya adalah :
1. Konversi massa ke resistansi dengan menggunakan pegas dan potensio geser
terbukti cukup memadai dan linier untuk jangkauan ukur tertentu.
2. Kalibrasi dilakukan secara otomatis, cukup menekan tombol ‘A’ pada keypad.
3. Berdasarkan tabel hasil pengukuran, kesalahan yang terukur adalah 1.1533 %.
Kesalahan ini sebagian besar berasal dari konversi massa ke resistansi, bukan
di konversi ADC, bukan pula kesalahan kalkulasi dalam mikrokontroler.
4. Timbangan digital dapat mengukur berat dan juga harga yang kita inginkan.
41
42
DAFTAR PUSTAKA
1. Lingga Wardhana.
2007.
Belajar Sendiri Mikrokontroler AVR Seri
ATMega8535 Simulasi, Hardware, dan Aplikasi. Yogyakarta : C.V Andi
Offset.
2. Suhata. 2005. VB Sebagai Pusat Kendali Peralatan Elektronik. Jakarta : PT.
Elex Media Computindo.
3. Widodo. 2005. Bahasa Basic Pada Bascom AVR 8051. Jakarta : PT. Elex
Media Computindo.
4. www.atmel.com. Data Sheet AVR ATMega 8535.
5. Widodo.2006. 12 Cara Belajar Sendiri Membuat Rangkaian Elektronika.
Jakarta : PT. Elex Media Computindo
42
Download