• Tidak ada hasil yang ditemukan

Sistem Penimbangan Otomatis Dengan Menggunakan Mikrokontroler ATMega 16.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Penimbangan Otomatis Dengan Menggunakan Mikrokontroler ATMega 16."

Copied!
72
0
0

Teks penuh

(1)

i

Sistem Penimbangan Otomatis dengan Menggunakan Mikrokontroler ATmega16

Erwin Boenyamin Liem / 0422128 Email : w3h_7@yahoo.com

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jl. Prof. Drg. Suria Sumantri 65, Bandung 40164, Indonesia

ABSTRAK

Sistem penimbangan yang sudah ada sekarang masih memerlukan peran pengguna dalam proses penimbangannya yaitu untuk menambah atau mengurangi massa barang. Berdasarkan hal tersebut, maka sistem penimbangan otomatis dibuat untuk mengatur massa barang (misalnya kopi, gula, beras dan sejenisnya) sesuai dengan yang diinginkan.

Pada Tugas Akhir ini, sistem penimbangan otomatis dirancang dengan menggunakan mikrokontroler ATmega16. Sistem ini menggunakan program

CodeVision dengan bahasa C dan didukung oleh load cell sebagai sensor

massanya. Komponen pendukung lainnya adalah motor DC 12V yang digunakan sebagai katup dan LCD yang digunakan untuk menampilkan program. Sistem penimbangan otomatis ini diujicobakan pada massa yang berbeda-beda.

Berdasarkan hasil percobaan, dapat ditarik kesimpulan bahwa akan lebih

baik bila bahan yang ditimbang adalah bahan yang tidak “lengket” atau tidak menggumpal. Sebagai contoh yaitu gula dan beras. Sedangkan contoh bahan yang

“lengket” atau menggumpal adalah kopi dan terigu. Pada percobaan penimbangan kopi, diperoleh kesalahan maksimal 8%, pada percobaan penimbangan gula diperoleh kesalahan maksimal 4% sedangkan pada percobaan penimbangan beras diperoleh kesalahan maksimal 4%.

(2)

ii

Automatic Weighing System by Using Microcontroller ATmega16

Erwin Boenyamin Liem / 0422128 Email : w3h_7@yahoo.com

Electrical Engineering Department, Faculty of Engineering, Maranatha Christian University,

Prof. Drg.Suria Sumantri Street, MPH no.65, Bandung, Indonesia.

ABSTRACT

Weighing system recently still requires the user role in weighing process that is to increase or decrease the mass of goods. Based on this fact, automatic weighing system is made to control the mass of goods (such as coffee, sugar, rice and the others) as we desire.

In this final project, automatic weighing system is designed by using Microcontroller ATmega16. This system uses CodeVision program in C language and supported by load cell as mass sensor. Other supporting components are motor DC 12 V which are used for valves, and the LCD as to display the program. This automatic weighing system has been tested at many different mass.

Based on the experiment results, we can draw conclusions that it would be better if the materials pondered are not "sticky" or not clot, such as sugar and rice. While kinds of the "sticky" or clot materials are coffee and flour. At the experiment of coffee weighing, we gain 8% maximum error, at the experiment of sugar weighing, we gain 4% maximum error, while of rice weighing, we gain maximum error 4%.

(3)

iii

KATA PENGANTAR

Puji dan syukur atas kehadirat Tuhan Yang Maha Esa karena atas berkat dan rahmat-Nya sehingga laporan Tugas Akhir ini dapat diselesaikan.

Laporan Tugas Akhir yang berjudul “ Sistem Penimbangan Otomatis Dengan Menggunakan Mikrokontroler ATmega16” dibuat untuk memenuhi persyaratan program studi Strata-1 Jurusan Teknik Elektro Fakultas Teknik, Universitas Kristen Maranatha.

Pada pelaksanaan Tugas Akhir, penulis banyak mendapat bantuan dan kerjasama dari berbagai pihak. Untuk itu pada kesempatan ini, penulis ingin menyampaikan terima kasih sebesar-besarnya kepada :

1. Ir. Yohana Susanthi, M.Sc. selaku Pembimbing Tugas Akhir yang telah bersedia meluangkan waktu untuk memberikan bimbingan serta pengarahan kepada penulis.

2. Dr.Ir.Daniel Setiadikarunia, MT. selaku Ketua Jurusan Teknik Elektro Universitas Kristen Maranatha.

3. Ir. Anita Supartono, M.Sc. selaku Koordinator Tugas Akhir Jurusan Teknik Elektro Universitas Kristen Maranatha.

4. Dr.Ir.Daniel Setiadikarunia, MT., Muliady, ST.,MT., dan Heri Andrianto, ST., MT selaku Dosen Penguji Sidang dan Seminar Tugas Akhir ini. 5. Keluarga yang selalu memberikan dukungan baik moril maupun material,

semangat serta doanya yang senantiasa menyertai setiap langkah penulis. 6. Yeshica Venessa yang selalu memberikan dukungan, semangat dan

doanya sehingga Tugas Akhir ini dapat diselesaikan.

7. Raymond Wahyudi yang senantiasa memberikan ide-ide dan referensi. 8. Adrian, Hendrik, Made, Darwinto yang telah bersama-sama mengalami

suka duka dalam penyusunan skripsi ini dan semua pihak yang tidak dapat penulis sebutkan satu persatu.

(4)

iv

Penulis menyadari bahwa laporan Tugas Akhir ini masih jauh dari sempurna. Oleh karena itu, kritik dan saran sangat diharapkan untuk menyempurnakan Tugas Akhir ini.

Akhir kata dengan kerendahan hati penulis berharap kiranya Tugas Akhir ini dapat berguna bagi Mahasiswa/i Teknik Elektro di Universitas Kristen Maranatha khususnya dan masyarakat umum.

Bandung, Februari 2009

(5)

v

DAFTAR ISI

LEMBAR PENGESAHAN

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI PERNYATAAN ORISINALITAS LAPORAN

ABSTRAK ………. i

BAB 1 PENDAHULUAN 1.1 Latar Belakang ………... 1

1.2 Perumusan Masalah ………... 1

1.3 Tujuan ………... 2

1.4 Pembatasan Masalah ………. .. 2

1.5 Spesifikasi Alat ... 2

1.6 Sistematika Penulisan ………... 2

(6)

vi

BAB 3 PERANCANGAN DAN REALISASI

3.1 Diagram Blok Sistem ... 17

3.6 Cara Kerja Sistem dan Tampilan Program ... 31

BAB 4 DATA PENGAMATAN DAN ANALISA SISTEM 4.1 Pengujian Perangkat Keras ... 55

4.1.1 Pengujian Sensor Load Cell ………...………….………. 55

4.2 Data Pengamatan ... ………... 57

4.3 Analisa Sistem ...………... 58

BAB 5 KESIMPULAN DAN SARAN 5.1 Kesimpulan dari Tugas Akhir………... 60

5.2 Saran dari Tugas Akhir………. 60

(7)

vii

DAFTAR GAMBAR

Gambar 2.1 Blok Diagram Fungsional Atmega16 ... 5

Gambar 2.2 Konfigurasi Pin Mikrokontroler Atmega16 ... 7

Gambar 2.3 Load Cell ... 8

Gambar 2.4 Central Lock yang digunakan sebagai Valve ... ... 9

Gambar 2.5 LCD 2*16 ... 10

Gambar 2.6 Penghubungan LCD dengan Mikrokontroler Atmega16 ... 11

Gambar 2.7 Keypad 4x4 ... 13

Gambar 2.8 Penghubungan Keypad dengan Mikrokontroler Atmega16 ... 14

Gambar 2.9 ADC Control and Status Register A – ADCSRA ... 15

Gambar 2.10 ADC Multiplexer ... 15

Gambar 2.11 Register SFIOR ... 16

Gambar 3.1 Diagram Blok ... 17

Gambar 3.2 Rancangan Rangkaian ... 18

Gambar 3.3 Skematik Koneksi Keypad pada Atmega16 ... 20

Gambar 3.4 Skematik Koneksi LCD pada Atmega16 ... 21

Gambar 3.5 Skematik Koneksi Driver Central Lock pada Atmega16 ... 22

Gambar 3.6 Instrumentation Amplifier ... 24

Gambar 3.7 Skematik Koneksi Load Cell pada Atmega16 ... 25

Gambar 3.8 Diagram Alir Program Utama ... 26

Gambar 3.9 Mekanik Sistem ... 28

Gambar 3.10 Load Cell dan Tempat Penampungan ... 29

Gambar 3.11 Central Lock ... 29

Gambar 3.12 Realisasi Sistem ... 30

Gambar 3.13 Tampilan Awal Program ... 31

Gambar 3.14 Tampilan “Pilihan kopi” ... 32

Gambar 3.15 Tampilan “Masukkan jumlah” ... 33

Gambar 3.16 Tampilan ”Jumlah 50 gr”... 34

Gambar 3.17 Tampilan ”Ada perubahan harga?” ... 35

(8)

viii

Gambar 3.19 Tampilan Konfirmasi ... 37

Gambar 3.20 Tampilan Timbangan Digital Tanpa Beban ... 38

Gambar 3.21 Tampilan Timbangan Digital dengan Beban ... 39

Gambar 3.22 Kopi Hasil Penimbangan ... 40

Gambar 3.23 Tampilan ”Ada pengulangan?” ... 40

Gambar 3.24 Tampilan ”Mengulang kopi” ... 41

Gambar 3.25 Tampilan Peringatan Tabung Kosong ... 41

Gambar 3.26 Tampilan Massa yang Sudah Dicapai ... 42

Gambar 3.27 Tampilan Awal Program ... 43

Gambar 3.28 Tampilan “Pilihan gula” ... 44

Gambar 3.29 Tampilan “Masukkan jumlah” ... 44

Gambar 3.30 Tampilan ”Ada perubahan harga?” ... 45

Gambar 3.31 Tampilan Harga Baru ... 46

Gambar 3.32 Tampilan Konfirmasi ... 47

Gambar 3.33 Tampilan Timbangan Digital Dengan Beban ... 47

Gambar 3.34 Gula Hasil Penimbangan ... 48

Gambar 3.35 Tampilan Awal Program ... 49

Gambar 3.36 Tampilan “Pilihan beras” ... 50

Gambar 3.37 Tampilan “Masukkanjumlah” ... 50

Gambar 3.38 Tampilan ”Ada perubahan harga?” ... 51

Gambar 3.39 Tampilan Harga Baru ... 52

Gambar 3.40 Tampilan Konfirmasi ... 52

Gambar 3.41 Tampilan Tampilan timbangan digital dengan beban ... 53

(9)

ix

DAFTAR TABEL

Tabel 3.1 Penjelasan Rancangan Rangkaian Sistem …...…………... 18

Tabel 3.2 Penjelasan Point-point ... 31

Tabel 4.1 Penjelasan Nilai ADC ... 55

Tabel 4.2 Hasil percobaan penimbangan kopi ... 56

Tabel 4.3 Hasil percobaan penimbangan gula ... 56

Tabel 4.4 Hasil percobaan penimbangan beras ... 56

Tabel 4.5 Waktu yang diperlukan pada penimbangan kopi ... 57

Tabel 4.6 Waktu yang diperlukan pada penimbangan gula ... 57

(10)
(11)

A - 1

/***************************************************** This program was produced by the

CodeWizardAVR V1.25.3 Professional Automatic Program Generator

© Copyright 1998-2007 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com

#define kopi 0x00 #define gula 0x01 #define beras 0x02

#define kopi_buka PORTD=0x01; delay_ms(500); PORTD=0 #define kopi_tutup PORTD=0x02; delay_ms(500); PORTD=0 #define gula_buka PORTD=0x04; delay_ms(500); PORTD=0 #define gula_tutup PORTD=0x08; delay_ms(500); PORTD=0 #define beras_buka PORTD=0x10; delay_ms(500); PORTD=0 #define beras_tutup PORTD=0x20; delay_ms(500); PORTD=0 #define led_nyala PORTD=0x40;

#define led_mati PORTD=0;

eeprom int harga_kopi=1,harga_gula=2,harga_beras=3; int tempi,jumlah,hargatotal;

(12)

A - 2 // Alphanumeric LCD Module functions #asm

.equ __lcd_port=0x15 ;PORTC #endasm

#include <lcd.h>

#define ADC_VREF_TYPE 0x40

// Read the AD conversion result

unsigned int read_adc(unsigned char adc_input) {

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Start the AD conversion

ADCSRA|=0x40;

// Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0);

ADCSRA|=0x10; return ADCW; }

// Declare your global variables here

(13)

A - 3 delay_us(1);

(14)

A - 4

(15)
(16)

A - 6

(17)

A - 7 // Input/Output Ports initialization

// Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;

DDRB=0x00;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;

DDRD=0xff;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;

TCNT0=0x00; OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off

(18)

A - 8 // Timer 1 Overflow Interrupt: Off

// Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00; TCNT2=0x00; OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// Analog Comparator initialization // Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00;

// ADC initialization

(19)

A - 9 ADCSRA=0x84;

// LCD module initialization lcd_init(16);

lcd_putsf("1=kopi 2=gula 3=beras");

while (1)

case 1:lcd_clear();lcd_putsf("Pilihan kopi");pilihan=kopi;goto cek2;break; case 2:lcd_clear();lcd_putsf("Pilihan gula");pilihan=gula;goto cek2;break; case 3:lcd_clear();lcd_putsf("Pilihan beras");pilihan=beras;goto cek2;break; }

sprintf(text,"%5u A-Reset",tempi); lcd_gotoxy(0,1);

(20)

A - 10

case 'C':goto cek5;

case 'B':lcd_clear();lcd_putsf("Harga baru:");goto cek4b; }

(21)

A - 11

sprintf(text,"Kopi %5ugr",jumlah); lcd_puts(text);break;

case gula: lcd_clear();

sprintf(text,"Gula %5ugr",jumlah); lcd_puts(text);break;

case beras: lcd_clear();

(22)
(23)

A - 13

(24)

A - 14

(25)

A - 15 goto cek6;break;

}

if(tempc=='C') {

lcd_clear();

lcd_putsf("Masukkan pilihan"); delay_ms(1000);

lcd_clear();

lcd_putsf("1=kopi 2=gula 3=beras"); goto cek1;

}

goto cek8;

(26)

A - 16

(27)
(28)
(29)
(30)

A - 20

(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
(43)
(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
(52)
(53)
(54)
(55)
(56)
(57)
(58)
(59)
(60)
(61)

A - 51

LAMPIRAN D

(62)
(63)
(64)
(65)
(66)

A - 56

LAMPIRAN E

(67)

A - 57

Reset

Next atau ok

(68)

Bab 1 Pendahuluan

1

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Teknologi saat ini semakin berkembang. Hal itu ditandai dengan semakin banyaknya perangkat elektronika yang diciptakan untuk mempermudah pengguna dalam beraktivitas sehingga semakin cepat dan efisien. Dengan kata lain, perangkat elektronik yang telah diciptakan membuat aktivitas pengguna menjadi lebih praktis. Dalam Tugas Akhir ini dirancang sistem penimbangan otomatis yang diharapkan mempermudah pengguna dalam menimbang suatu barang sesuai dengan massa yang diinginkan.

Sistem penimbangan yang sudah ada sekarang masih banyak memerlukan peran pengguna dalam proses penimbangannya yaitu untuk menambah atau mengurangi massa barang. Berdasarkan hal tersebut, dibuat sistem penimbangan otomatis yang dapat mengatur massa barang (misalnya kopi, gula, beras, dan sejenisnya) sesuai dengan yang diinginkan. Jadi pengguna tidak perlu melakukan koreksi jika barang yang ditimbang terlalu massa ataupun kurang massa.

Pada Tugas Akhir ini dirancang sistem penimbangan otomatis menggunakan ATmega16 yang diprogram menggunakan CodeVision. CodeVision merupakan suatu perangkat lunak yang membantu pengguna dalam membuat program berbasis bahasa C ke dalam mikrokontroler, salah satunya ATmega16.

1.2 Perumusan Masalah

(69)

2 Bab 1 Pendahuluan

Universitas Kristen Maranatha 1.3 Tujuan

Penyusunan Tugas Akhir ini bertujuan untuk membuat sistem penimbangan otomatis dengan menggunakan mikrokontroler ATmega16 untuk mengatur keluaran barang sesuai dengan massa yang diinginkan.

1.4 Pembatasan Masalah

Dalam Tugas Akhir ini, pembatasan masalah mencakup hal-hal berikut: 1. Barang yang diujicobakan dibatasi hanya tiga jenis yaitu kopi, gula

dan beras.

2. Pen-display-an massa dalam satuan gram dengan massa maksimal 250 gram.

3. Pen-display-an harga dalam satuan rupiah. 4. Perubahan massa tiap 5 gram.

5. Diameter jenis barang yang diujicobakan maksimal 5mm.

1.5 Spesifikasi Alat

Alat – alat yang digunakan antara lain : . 1. Mikrokontroler ATmega16.

2. Motor yang digunakan motor DC 12V (central lock mobil). 3. Sensor load cell kapasitas maksimal 20 kilogram.

4. Keypad 4x4.

5. LCD LMB162ABC dengan tampilan 2*16 (2 baris * 16 kolom).

1.6 Sistematika Penulisan

Agar dalam penulisan laporan Tugas Akhir ini lebih terarah dan teratur serta terstruktur maka akan dibagi dalam :

BAB 1 PENDAHULUAN

(70)

3 Bab 1 Pendahuluan

Universitas Kristen Maranatha

BAB 2 LANDASAN TEORI

Berisi teori-teori singkat tentang mikrokontroler ATmega16, motor DC 12V (central lock mobil), load cell, keypad, LCD, dan

CodeVision.

BAB 3 PERANCANGAN DAN REALISASI

Pada bab ini akan dibahas tentang perancangan dan pembuatan perangkat keras dan perangkat lunak. Hal tersebut meliputi skematik rangkaian, gambar mekanik alat, realisasi alat dan diagram alir program.

BAB 4 DATA PENGAMATAN DAN ANALISA

Berisi hasil pengamatan dan analisa saat perancangan alat hingga selesai terhadap keseluruhan proses perancangan dan pengujian alat dalam Tugas Akhir ini.

BAB 5 KESIMPULAN DAN SARAN

(71)

Bab 5 Kesimpulan dan Saran

60 BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan dari Tugas Akhir

1. Sistem penimbangan otomatis menggunakan mikrokontroler ATmega16 telah dapat direalisasikan dengan mengujicobakan tiga jenis bahan yang berbeda yaitu : kopi, gula dan beras.

2. Sistem penimbangan tersebut baik untuk menimbang jenis bahan yang tidak “lengket” atau tidak menggumpal.

3. Dari hasil pengujian terhadap tiga jenis bahan yang direalisasi, untuk penimbangan :

a. Kopi : - nilai %error maksimal sebesar 8%. b. Gula : - nilai %error maksimal sebesar 4%. c. Beras : - nilai %error maksimal sebesar 4%.

5.2 Saran dari Tugas Akhir

1. Untuk penimbangan otomatis ini dapat dikembangkan untuk penimbangan di kios-kios untuk skala yang lebih besar.

(72)

61

DAFTAR PUSTAKA

1. Andrianto, Heri. Juli 2008. Pemrograman Mikrokontroler AVR

ATMEGA16 Menggunakan Bahasa C (CodeVision AVR). Bandung :

Informatika

2. Budiharto, Widodo. 2008. Panduan Praktikum Mikrokontroler ATmega16

Panduan Utama untuk Pelajar dan Penghobi. Jakarta : PT Elex Media

Komputindo

3. Winoto, Ardi. Juli 2008. Mikrokontroler AVR ATmega8/32/16/8535 dan

Pemrogramannya dengan Bahasa C pada WinAVR. Bandung : Informatika

4. http://en.wikipedia.org/wiki/Load_cell

Referensi

Dokumen terkait

Dari hasil estimasi dengan berbagai model yang telah diperlihatkan pada Tabel 5, dapatlah secara umum disimpulkan bahwa nilai tambah modal intelektual (VAIC) di perbankan Indone-

bahwa pada kondisi leleh ketebalan plat pengaku berpengaruh untuk menahan momen yang diterimanya. Kondisi ini dapat di buktikan setelah penambahan tebal plat pengaku pada

Sedangkan pada penelitian yang dilakukan oleh Aski Satriawan dan Meyti Eka Apriyani (2016), yang berjudul Analisa dan Pembuatan Rigging Karakter 3D pada animasi 3D “Jangan

Posyandu Margosari III RT 02 dan RW 01 Kelurahan Salatiga Kecamatan Sidorejo merupakan suatu unit pelayanan kesehatan yang bertugas untuk melakukan pelayanan kesehatan.

Peraturan Pemerintah Nomor 19 Tahun 2010 tentang Tata Cara Pelaksanaan Tugas dan Wewenang serta Kedudukan Keuangan Gubernur sebagai Wakil Pemerintah di wilayah Provinsi (

Hal ini dapat dilihat dari hasil penelitian yang dilakukan oleh Situmorang (2013) mengenai Pengembangan Buku Ajar Kimia SMA Melalui Inovasi Pembelajaran Dan

Oleh karena itu, metode yang digunakan dalam pengajaran sebaiknya tidak terbatas pada satu metode atau beberapa metode saja tapi harus disesuaikan dengan kondisi anak

Kokonaisia haastatteluja tarkasteltaessa runko myös toteutui suurimmalta osaltaan tässä järjestyk- sessä. Joitakin variaatioita oli, ja usein saatettiin myös palata aiempiin