i
Universitas Kristen Maranatha MIKROKONTROLER ATMEGA16
Disusun oleh:
Nama : Rudy Halim
NRP : 0222019
Jurusan Teknik Elektro, Fakulas Teknik, Universitas Kristen Maranatha,
Jalan Prof. Drg. Suria Sumantri, MPH no 65, Bandung, Indonesia,
email : tek1_06@yahoo.com
ABSTRAK
Digital Inclinometer adalah salah satu bentuk dari alat ukur yang mampu mengukur suatu kemiringan bidang. Digital Inclinometer ini dapat digunakan untuk keperluan sipil seperti mengukur kemiringan jalan, keperluan arsitektur untuk mengukur kemiringan suatu bangunan dan lain-lain.
Pada tugas akhir ini telah dibuat Digital Inclinometer menggunakan mikrokontroler ATMega16 dan sensor sudut ADXL202E yang mampu mengukur sudut kemiringan suatu bidang pada satu sumbu, yakni sumbu X. Digital Inclinometer ini mampu mengukur sudut dari range -90o sampai dengan +90o. Untuk mengukur kemiringan suatu bidang, Digital Inclinometer diletakkan pada suatu bidang yang hendak diukur kemiringannya, nilai sudut kemiringan dapat dilihat melalui LCD Display dan indikator lampu LED.
Berdasarkan hasil pengujian diperoleh pengukuran yang didapat oleh Digital Inclinometer dengan aplikasi pihak ketiga inclinometer iHandy Level pada ipod Touch menunjukkan hasil pengukuran yang sama per skala 1o. Tingkat presentasi error pengukuran sudut pada range (-90o hingga -45o) adalah 1.06%, range (-45o hingga 0o) adalah 4.38% dan range (0o hingga 40o) adalah 11.60%.
ii
Universitas Kristen Maranatha DESIGNING AND REALIZATION INCLINOMETER USING ATMEGA16
MICROCONTROLLER Composed by: Name : Rudy Halim NRP : 0222019
Electrical Engineering, Maranatha Christian University,
Jln Prof. Drg. Suria Sumantri, MPH no 65, Bandung, Indonesia,
email : tek1_06@yahoo.com
ABSTRACT
Digital Inclinometer is one of the measurement tools which can measure inclination of an area. This Digital Inclinometer can be used for civil like measuring inclination of road, architecture for measuring inclination of building.
In this Final Project has been made a Digital Inclinometer using ATMEGA16 microcontroller and ADXL202E angle sensor which able to measure one axis measurement, which is X axis. This Digital Inclinometer capable to measure from tilt range -90o to +90o. To measure an inclination of an area, put the Digital Inclinometer in a particular area which will be measured. Inclination angular value can be seen through LCD Display and LED indicator lamps.
Based on the examination result, the measurement using Digital Inclinometer and third party inclinometer application iHandy Level on ipod Touch shows the same measurement on per 1o scale. With inclination measurement error percentage for range (-90o to -45o) is 1.06%, range (-45o to 0o) is 4.38% and range (0o to 40o) is 11.60%.
iii
Universitas Kristen Maranatha Halaman
ABSTRAK………. i
ABSTRACT……… ii
KATA PENGANTAR……….... iii
DAFTAR ISI………... v
DAFTAR TABEL……… viii
DAFTAR GAMBAR ……….. ix
BAB I PENDAHULUAN 1.1 Latar Belakang ……… 1
1.2 Perumusan Masalah ……… 1
1.3 Tujuan………... 2
1.4 Pembatasan Masalah………... 2
1.5 Sistematika Penulisan……….. 3
BAB II LANDASAN TEORI 2.1 Inclinometer………. 4
2.2 Accelerometer ADXL202E………. 4
2.2.1 Karakteristik Operasional Accelerometer ADXL202E………... 5
2.2.2 Konfigurasi Pin-pin pada Accelerometer ADXL202E……… 5
2.2.3 Cara Kerja Sensor……… 6
2.2.4 Format Pengoperasian Accelerometer ADXL202E……… 9
2.3 LCD………. 10
2.4 Mikrokontroler ATMEGA16……….. 11
iv
Universitas Kristen Maranatha
2.4.2 Fitur ATMEGA16………... 14
2.4.3 Konfigurasi pin ATMEGA16………. 14
2.5 CodeVision AVR C Compiler……… 15
2.6 Operational Amplifier………. 20
2.6.1 Op-Amp Differensial………... 20
BAB III PERANCANGAN SISTEM 3.1 Desain Sistem……….. 22
3.1.1 Rangkaian Sensor……… 23
3.1.2 Rangkaian Mikrokontroler……….. 23
3.2 Perencanaan Hardware……… 24
3.2.1 Perencanaan Elektronik………... 24
3.2.1.1 ATMEGA16……… 24
3.2.1.2 Sensor ADXL202E……….. 26
3.2.1.3 LCD Display………. 26
3.3 Perencanaan Software………. 28
BAB IV PENGUJIAN ALAT 4.1 Kalibrasi Sensor Accelerometer dan iHandy Level……… 31
4.2 Pengujian Output Sensor ADXL202E……… 31
4.3 Pengujian dengan Papan ……… 33
4.3.1 Perbandingan Sudut Papan Licin pada iHandy Level dengan Inclinometer………. 34
v
Universitas Kristen Maranatha
5.1 Kesimpulan……….. 39
5.2 Saran……… 39
DAFTAR PUSTAKA……….. 41
LAMPIRAN A DATASHEET ADXL202E
vi
Universitas Kristen Maranatha DAFTAR TABEL
Halaman
Tabel 2.1 Konfigurasi Pin……….. 5
Tabel 2.2 Konstanta……… 10
Tabel 3.1 Nilai Resistor untuk menentukan Periode T2……… 25
Tabel 4.1 Pengujian dengan papan licin sumbu X (-90o hingga -46o)……….. 35
Tabel 4.2 Pengujian dengan papan licin sumbu X (-45o hingga 0o)………….. 36
vii
Universitas Kristen Maranatha Halaman
Gambar 2.1 Port pin-pin pada ADXL202E……… 5
Gambar 2.2 Ruang Gas pada ADXL202E………. 6
Gambar 2.3 Hubungan Sensor dengan gravitasi……… 7
Gambar 2.4 Terminologi akselerasi sensor accelerometer……… 7
Gambar 2.5 Posisi +1g (perubahan +1g menuju < +1g)……… 8
Gambar 2.6 Posisi 0g (perubahan 0g menuju suatu nilai g)……….. 9
Gambar 2.7 Contoh Pulsa PWM ADXL202E……… 9
Gambar 2.8 LCD 16x2……… 11
Gambar 2.9 Penghubungan LCD dengan mikrokontroler ATMEGA16……… 11
Gambar 2.10 Blok Diagram Fungsional ATMEGA16………... 13
Gambar 2.11 Konfigurasi pin mikrokontroler ATMEGA16 ……….. 15
Gambar 2.12 Tampilan CodeWizardAVR pada bagian Chip………. 16
Gambar 2.13 Tampilan CodeWizardAVR pada bagian LCD………. 17
Gambar 2.14 Tampilan CodeWizardAVR pada bagian Ports………. 18
Gambar 2.15 Tampilan CodeWizardAVR pada bagian External IRQ………… 19
Gambar 2.16 Rangkaian Op-Amp Differensial……….. 21
Gambar 3.1 Sistem secara keseluruhan……….. 22
Gambar 3.2 Arah sumbu pada sensor accelerometer ADXL202E………. 23
Gambar 3.3 Rangkaian Lampu Indicator LED………... 24
Gambar 3.4 Rangkaian Tombol Kalibrasi……….. 25
Gambar 3.5 Rangkaian Lengkap Sensor………. 26
Gambar 3.6 Rangkaian LCD Display………. 27
Gambar 3.7 Rangkaian Lengkap Inclinometer………... 28
Gambar 3.8 Diagram Alir Utama……… 29
viii
Universitas Kristen Maranatha
Gambar 3.10 Diagram Alir sub-routine Kalibrasi ……….. 30
Gambar 3.11 Diagram Alir sub-routine “konversi ke derajat”……… 30
Gambar 4.1 Hasil output yang dikeluarkan oleh XOUT……… 32
Gambar 4.2 Hasil output yang dikeluarkan oleh XFILT……… 32
LAMPIRAN A
LAMPIRAN B
#include <stdio.h> #include <delay.h> #include <ctype.h> #include <lcd.h>
#asm
.equ __lcd_port=0x15 ;PORTB #endasm
// Alphanumeric LCD Module functions#include <lcd.h>
#define ADC_VREF_TYPE 0x00
// Read the AD conversion result
// Declare your global variables here
char lcd_buffer[10];
unsigned int tanda_kalibrasi=1; unsigned int kalibrasi_h = 0; unsigned int kalibrasi_l = 0;
void read_adc(void);
void derajat(unsigned char adch,unsigned char adcl);
unsigned char data_table_min [91][4] = {{19,'9','0',0b10000000}, {20,'8','9',0b10000000},
{207,'6','4',0b00000010},
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0b11111100;
DDRA=0x00;
// 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=0xff;
// 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
for(i=0; derajat_temp != data_table_max[i][0];i++) {
if(i==90) break; } if(i!=90) {
PORTB= 0b00010000; tanda_kalibrasi=1;
kalibrasi_h = data_table_max[i][1]; kalibrasi_l = data_table_max[i][2]; }
1
Universitas Kristen Maranatha
BAB I
PENDAHULUAN
1.1Latar Belakang
Penggunaan alat waterpass pada umumnya digunakan pada saat membuat peralatan meubel, pertukangan dan bangunan, sejak abad 17 alat waterpass ini memakai tabung kaca yang berisi alkohol atau cairan sejenis dan dibungkus oleh bingkai panjang untuk menentukan apakah permukaan tersebut tegak lurus atau tidaknya terhadap tanah.
Dengan bertambahnya tingkat kesulitan dalam pembuatan meubel dan bangunan, alat waterpass tidak selalu dapat membantu pekerjaan manusia. Namun untuk pengukuran sudut kemiringan yang lebih sensitif, peran waterpass dapat digantikan oleh digital inclinometer.
Dengan berkembangnya teknologi mikrokontroler, fungsi waterpass ini dapat diaplikasikan secara digital dengan menggunakan sensor accelerometer
menjadi digital inclinometer. Kegunaan sensor accelerometer kini sudah tidak asing lagi kegunaannya, seperti pada handphone, alat video games dan lain-lainnya.
Oleh karena itu pada kesempatan ini, penyusunan tugas akhir ini penulis mencoba untuk merancang dan merealisasikan Inclinometer untuk mengukur dan menampilkan derajat kemiringan suatu permukaan menggunakan mikrokontroler ATMEGA16.
1.2 Perumusan Masalah
BAB I PENDAHULUAN
1.3 Tujuan
Tujuan dari Tugas Akhir ini adalah untuk merealisasikan alat Inclinometer
yang dapat mengukur derajat kemiringan suatu permukaan yang hasilnya ditampilkan pada lampu LED dan LCD Display menggunakan mikrokontroler ATMEGA16.
1.4Pembatasan masalah
Dalam tugas akhir ini, pembatasan masalah mencakup hal-hal berikut: 1. Sensor accelerometer hanya digunakan untuk mengukur satu sumbu atau
satu arah kemiringan.
2. Tingkat kepresisian pengukuran adalah per 1° dari -90° hingga +90°. 3. Indikator Lampu LED hanya berfungsi sebagai waterpass digital.
4. Inclinometer pembanding yang digunakan untuk menjadi acuan alat
inclinometer yang dibuat adalah aplikasi pihak ketiga yang diinstal dalam
Ipod Touch yang bernama iHandy Level.
5. Sudut yang dapat dijadikan perbandingan antara inclinometer
mikrokontroler dan Ipod Touch hanya sampai dengan sudut minimum -87o dan maksimum +40o karena pada program aplikasi iHandy Level pada sekitar sudut tersebut, secara otomatis akan berpindah posisi tampilan layar (dari landscape menjadi potrait).
3 BAB I PENDAHULUAN
1.5Sistematika Penulisan
Agar dalam penulisan laporan Tugas Akhir ini lebih terarah dan teratur serta terstruktur maka akan dibagi dalam:
BAB I PENDAHULUAN
Berisi latar belakang, perumusan masalah, tujuan, pembatasan masalah, dan sistematika penulisan.
BAB II LANDASAN TEORI
Berisi teori-teori yang menunjang dalam pembuatan alat. Teori yang dimaksud adalah ATMEGA16, sensor accelerometer
ADXL202E, Code Vision AVR. BAB III PERANCANGAN DAN REALISASI
Berisi perancangan dan implementasi, yang membahas tentang perencanaan dan implementasi dalam sistem yang dibangun, meliputidiagram blok, perancangan dan realisasi perangkat keras, perancanganperangkat lunak.
BAB IV DATA PENGAMATAN DAN ANALISA
Berisi hasil pengamatan dan analisa terhadap alat yang telah dirancang.
Universitas Kristen Maranatha
1. ADI Electronics, Low-Cost _2 g Dual-Axis Accelerometer with Duty Cycle
Output, 20 Januari 2010
http://www.analog.com/static/imported-files/data_sheets/ADXL202E.pdf
2. Heri Andrianto. Pemrograman Mikrokontroler AVR ATMEGA16,
Menggunakan Bahasa C (CodeVision AVR). 2008
3. MEMS Technology, Accelerometer - Getting Started, 20 Januari 2010.
http://www.parallax.com/dl/docs/prod/compshop/SICMemsicTut.pdf
4. MEMS Technology, Dual Axis Accelerometer, 20 Januari 2010.
http://www.parallax.com/dl/docs/cols/nv/vol3/col/nv92.pdf
5. Stiffler, A. Kent.Design With Microprocessors for Mechanical Engineers,