Top Banner
i PRAKTIKUM ELEKTRONIKA DIGITAL DAN MIKROKONTROLER ANALOG DIGITAL CONVERTER (ADC) Penyusun: Sarwo Pranoto, ST., M.Eng. PROGRAM STUDI TEKNIK LISTRIK JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI UJUNG PANDANG 2012 JOBSHEET
25

Jobsheet Mikrokontroler ADC

Jun 22, 2015

Download

Documents

Nurkamri Hardi
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Jobsheet Mikrokontroler ADC

i

PRAKTIKUM ELEKTRONIKA DIGITAL

DAN MIKROKONTROLER

ANALOG DIGITAL CONVERTER (ADC)

Penyusun:

Sarwo Pranoto, ST., M.Eng.

PROGRAM STUDI TEKNIK LISTRIK

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI UJUNG PANDANG

2012

JOBSHEET

Page 2: Jobsheet Mikrokontroler ADC

ii

LEMBAR IDENTITAS DAN PENGESAHAN

Mata Kuliah : Praktikum Elektronika Digital dan Mikrokontroler

Kode Mata Kuliah : TL421313

Nama Job : Analog Digital Converter (ADC)

Penyusun : Sarwo Pranoto, ST., M.Eng. (198006202005011005)

Jobsheet ini telah diperiksa dan disetujui untuk digunakan sebagai

Bahan kuliah bagi mahasiswa Politeknik Negeri Ujung Pandang

Menyetujui :

Kepala Unit P3AI, Ketua Jurusan Teknik Elektro

Ir. Hastami Murdiningsih, M.T. Ibrahim Abduh, S.ST., M.T.

NIP 19600606 198803 2 002 NIP 19680514 199303 1 001

Mengetahui/Menyetujui :

Pembantu Direktur I,

Ir. Muas, M.T.

NIP 19670228 199303 1 004

Page 3: Jobsheet Mikrokontroler ADC

iii

KATA PENGANTAR

Jobsheet ini merupakan jobsheet mata kuliah Praktikum Elektronika Digital dan

Mikrokontroler pada Program Studi Teknik Listrik Jurusan Teknik Elektro yang

membahas tentang fitur Analog Digital Converter (ADC) yang terdapat pada

mikrokontroler keluarga megaAVR.

Jobsheet ini memuat tentang dasar teori ADC, prosedur yang digunakan untuk

melakukan praktikum, skematik rangkaian dan program yangn digunakan dalam

praktikum ini.

Akhirnya, penyusun manyadari masih terdapat kekurangan pada jobsheet ini. Untuk

itu penyusun terbuka terhadap kritik dan saran untuk perbaikan jobsheet di masa yang

akan datang.

Makassar, 15 Oktober 2012

Penyusun

Page 4: Jobsheet Mikrokontroler ADC

iv

DAFTAR ISI

LEMBAR IDENTITAS DAN PENGESAHAN ....................................................................... ii

KATA PENGANTAR ..............................................................................................................iii

DAFTAR ISI ............................................................................................................................. iv

DAFTAR GAMBAR ................................................................................................................ v

DAFTAR LAMPIRAN ............................................................................................................. vi

GARIS BESAR RANCANGAN PEMBELAJARAN (GBRP) ............................................... vii

ANALOG DIGITAL CONVERTER (ADC) ........................................................................... 1

1. Tujuan Percobaan: ........................................................................................................ 1

2. Dasar Teori .................................................................................................................... 1

3. Daftar Alat / Bahan ....................................................................................................... 2

4. Gambar Rangkaian ........................................................................................................ 3

5. Langkah Kerja ............................................................................................................... 4

5.1 Sebelum Kegiatan Praktikum ................................................................................ 4

5.2. Selama Kegiatan Praktikum .................................................................................. 4

6. Keselamatan Kerja ...................................................................................................... 13

7. Data Percobaan ........................................................................................................... 14

8. Soal dan Pertanyaan .................................................................................................... 16

9. Daftar Pustaka: ............................................................................................................ 16

DAFTAR LAMPIRAN ....................................................................................................... 17

Page 5: Jobsheet Mikrokontroler ADC

v

DAFTAR GAMBAR

Gambar 1. Rangkaian skematik masukan ADC ........................................................................ 3

Gambar 2. Jendela Welcome to AVR Studio ........................................................................... 4

Gambar 3. Project type ............................................................................................................. 5

Gambar 4. Project name dan Initial file .................................................................................... 5

Gambar 5. Lokasi default penyimpanan project ....................................................................... 5

Gambar 6. Jendela pilihan lokasi penyimpanan file ................................................................. 6

Gambar 7. Jendela Select debug platform and devices ............................................................. 6

Gambar 8. Code editor .............................................................................................................. 7

Gambar 9. Jendela Project Options ........................................................................................... 7

Gambar 10. Kode di editor ........................................................................................................ 8

Gambar 11. Konfirmasi program sukses di build .................................................................... 8

Gambar 12. Sinaprog ................................................................................................................ 9

Gambar 14. Jendela Membuat project baru ............................................................................ 10

Gambar 15. CodeWizardAVR ................................................................................................ 10

Gambar 16. Tab pada CodeWizardAVR ................................................................................ 10

Gambar 17. Generate dan save hasil setting. .......................................................................... 11

Gambar 18. Code Editor ......................................................................................................... 11

Gambar 19. Compile program dan memastikan tidak ada error ............................................. 12

Gambar 20. Mengaktifkan download program ke chip .......................................................... 12

Gambar 21. Register ADC ........................................................................................................ 13

Page 6: Jobsheet Mikrokontroler ADC

vi

DAFTAR LAMPIRAN

Lampiran 1. FORM PENILAIAN…..………………………………………………17

Page 7: Jobsheet Mikrokontroler ADC

vii

GARIS BESAR RANCANGAN PEMBELAJARAN (GBRP)

Nama Mata Kuliah : Praktikum Laboratorium Digital dan Mikrokontroler

Nomor Kode/S K S : TL341323/3

Deskripsi singkat mata kuliah : Membahas tentang dasar gerbang logika, penjumlahan dan penyederhanaan fungsi

logika, flip-flop dan counter serta pemrograman mikrokontroler untuk aplikasi

input/output digital seperti menampilkan data melalui LED dan Seven Segments,

Liquid Cristal Displays berdasarkan hasil pembacaan data hasil konversi besaran

Analog to Digital, membangkitkan gelombang Pulse Witdh Modulation untuk

berbagai aplikasi kontrol salah satunya kontrol kecepatan motor DC.

Kompetensi Utama : Setelah mengikuti mata kuliah ini, mahasiswa diharapkan dapat membuat rangkaian

digital sederhana dan dapat membuat aplikasi pengontrolan berbasis mikrokontroler.

No. Tujuan Intruksional Khusus Pokok Bahasan Sub Pokok Bahasan Waktu Referensi

1.

Menjelaskan cara

menggunakan fitur Analog

Digital Converter pada

mikrokontroler Atmega 16

Analog Digital

Converter

- Mikrokontroler ATMega16

- Analog Digital Converter

- Sensor analog suhu, LDR dan

potensiometer.

6 x 50 menit 1, 2,3

Page 8: Jobsheet Mikrokontroler ADC

viii

Referensi :

1. Winoto, Ardi, Mikrokontroler AVR ATmega8/32/16/8535 dan Pemrogramannya dengan Bahasa C pada WinAVR,

Penerbit Informatika, Bandung, 2010

2. Pavel Haiduc, HP InfoTech S.R.L, CodeVisionAVR Version 2.03.2 User Manual, HP InfoTech S.R.L , Romania,

2008

3. System, Next, Bermain Mikrokontroler AVR dan Robotika, NEXT SYSTEM Robotics Learning

Center,Bandung,2011

Page 9: Jobsheet Mikrokontroler ADC

1

ANALOG DIGITAL CONVERTER (ADC)

1. Tujuan Percobaan:

Setelah menyelesaikan praktikum ini, mahasiswa mampu:

a. Mengakses ADC dengan resolusi 8 bit.

b. Memprogram ADC dengan masukan sensor berupa potensiometer, LDR,

LM35.

c. Mengaplikasikan fungsi ADC dengan masukan sensor pada mikrokontroler

AVR

2. Dasar Teori

Pada praktikum ini, praktikan akan mencoba memanfaatkan fasilitas masukan

analog pada mikrokontroler AVR ATmega16. ATmega16 mempunyai ADC

(Analog to Digital Converter) internal 10-bit sebanyak 8 kanal (multiplexed),

yaitu ADC0 – ADC7. Ini berarti, tegangan input antara 0 – 5 volt akan

dikonversi menjadi bilangan antara 0 – 1023. Resolusi yang dihasilkan adalah 5

volt/1024 unit atau 4.9 mV/unit.

Berikut adalah fitur lengkap dari ADC internal tersebut:

a. 10 – bit resolution

b. 65 – 260 µs conversion time.

c. Up to 15 kSPS at maximum resolution

d. 8 Multiplexed Single Ended Input Channels

e. Optional Left Adjusment for ADC result Readout

f. 0 – 5 VCC ADC Input Voltage range

g. Selectable 2.56V ADC Reference VoltageFree Running or Single Conversion

Mode

h. ADC Start Conversion by triggering on Interrupt Sources

i. Interrupt on ADC Conversion Complete

Page 10: Jobsheet Mikrokontroler ADC

2

j. Sleep Mode Noise Canceler

Konversi dengan resolusi 10-bit dapat merujuk pada formula sebagai berikut:

ADC = (Vin/Vref)*1024

Sementara, untuk resolusi 8-bit, formula yang digunakan menjadi:

ADC = (Vin/Vref)*256

ADC memiliki dua mode operasi: Single Conversion Mode dan Free Running.

Dalam mode Single Conversion, setiap konversi harus di-inisiasi. Ketika proses

konversi selesai, hasil disimpan dalam ADC Data Register, dan proses konversi

selesai. Dalam mode Free Running, kita start konversi satu kali, dan selanjutnya,

ADC secara otomatis memulai konversi berikutnya, setelah proses konversi

sebelumnya selesai.

Konversi analog ke digital memerlukan waktu. Kecepatan konversi sangat

bergantung pada sinyal clock yang digunakan ADC (ADC Clock). Waktu

konversi proporsional dengan frekuensi sinyal ADC Clock, yang besarannya

sekitar 50 kHz – 200 kHz. Namun, untuk resolusi yang lebih rendah, dapat

digunakan frekuensi yang lebih tinggi dari rentang tersebut.

3. Daftar Alat / Bahan

a. 1 set PC lengkap dengan program aplikasi CodeVisionAVR atau AVR

Studio dan terminal.

b. 1 unit Modul MikroAVR16

c. 1 unit Modul Potensiometer 10 K

d. 1 unit Modul LDR (Light Dependent Resistor)

e. 1 unit Modul LM35 (Analog Temperatur Sensor)

f. 1 unit Modul I/O LED 5mm

Page 11: Jobsheet Mikrokontroler ADC

3

g. 1 unit kabel konektor USB

h. Kabel jumper secukupnya dan obeng terminal

4. Gambar Rangkaian

Skematik hardware dari masukan sensor yang dihubungkan dengan

MikroAVR16:

a. Potensiometer b. LDR (Light Dependent Resistor)

c. LM35 (Analog Temperature Sensor)

Gambar 1. Rangkaian skematik masukan ADC

Page 12: Jobsheet Mikrokontroler ADC

4

5. Langkah Kerja

5.1 Sebelum Kegiatan Praktikum

a. Absensi oleh pembimbing/instrukstur

b. Pengarahan oleh pembimbing

c. Baca dan pahami jobsheet yang diberikan dalam kegiatan praktikum.

d. Pinjam/Bon peralatan dan bahan praktikum.

e. Pastikan bahan dan peralatan sesuai dengan kegiatan praktikum yang akan

dilaksanakan.

5.2. Selama Kegiatan Praktikum

Selama kegiatan praktikum terdapat dua prosedur yang harus di patuhi oleh

praktikan yaitu:

5.2.1 Prosedur Umum

a. Siapkan bahan dan peralatan yang akan digunakan.

b. Rangkai modul yang akan digunakan sesuai gambar rangkaian.

c. Jalankan program aplikasi AVR Studio atau CodeVisionAVR

I. Jika menggunakan AVR Studio:

1) Buka program AVR Studio 4 , sehingga tampil seperti gambar 2

Pilih New Project.

Gambar 2. Jendela Welcome to AVR Studio

Page 13: Jobsheet Mikrokontroler ADC

5

2) Buat project baru dengan menggunakan tipe Atmel AVR Assembler jika

ingin membuat project dalam bahasa Assembler atau AVR GCC jika

ingin membuat dalam program bahasa C. Pilih AVR GCC karena

praktikum ini menggunakan program bahasa C.

Gambar 3. Project type

3) Tulis nama project pada bagian bawah Project name, centang Create

initial file dan Create Folder. Secara otomatis Initial file akan memiliki

nama yang sama dengan nama projectnya dengan tambahan ekstensi .c

dan semua file dalam project tersebut tersimpan dalam folder yang sama

yang telah dibuat.

Gambar 4. Project name dan Initial file

4) Pilih lokasi yang digunakan untuk menyimpan project. Browse jika

ingin mengubah lokasi yang ada dan pilih Select pada lokasi yang

diinginkan.

Gambar 5. Lokasi default penyimpanan project

Page 14: Jobsheet Mikrokontroler ADC

6

Gambar 6. Jendela pilihan lokasi penyimpanan file

5) Klik Next >> sehingga muncul tampilan seperti gambar 7. Pilih AVR

Simulator pada bagian Debug Platform dan Pilih ATmega16 pada

bagian Device. Dan Klik Finish untuk memunculkan editor seperti pada

gambar 8.

Gambar 7. Jendela Select debug platform and devices

Page 15: Jobsheet Mikrokontroler ADC

7

Gambar 8. Code editor

6) Pengaturan frekuensi CPU yang digunakan oleh mikrokontroler

dilakukan dengan mengklik Project >> Configuration Options >>

sehingga muncul jendela seperti gambar 9 Kemudian isi frekuensi yang

digunakan sesuai dengan yang ada di modul mikrokontroler. Klik OK

jika sudah selesai.

Gambar 9. Jendela Project Options

Page 16: Jobsheet Mikrokontroler ADC

8

7) Tulis program di editor.

Gambar 10. Kode di editor

8) Build Program atau tekan F7 sampai tidak ada yang error.

Gambar 11. Konfirmasi program sukses di build

9) Selanjutnya download file hex hasil compile menggunakan software

SinaProg. Setting pada software SinaProg sebagai berikut:

a. Hex File:Berisi file .hex yang akan didownload ke mikrokontroler.

b. Device : ATmega16;

c. Fuses : Int. 1 MHz

d. Programmer: AVR910; Port: Sesuaikan dengan kondisi;

Baudrate:115200

Page 17: Jobsheet Mikrokontroler ADC

9

Gambar 12. Sinaprog

II. Jika menggunakan CodeVisionAVR:

1) Jalankan program CodeVisionAVR C Compiler.

2) Pilih Project untuk membuat project baru.

Gambar 13. Jendela Create New File

3) Klik Yes untuk menggunakan CodeWizardAVR

Page 18: Jobsheet Mikrokontroler ADC

10

Gambar 14. Jendela Membuat project baru

4) Pada CodeWizardAVR pilih Atmega pada AVR Chip Type

Gambar 15. CodeWizardAVR

5) Pada CodeWizardAVR pilih menu Chip dan pilih menu pilihan

ATmega16 serta pilih frekuensi Clock sebesar 11,059200 MHz.

Gambar 16. Tab pada CodeWizardAVR

Page 19: Jobsheet Mikrokontroler ADC

11

6) Masih pada CodeWizardAVR, setting mikrokontroler sesuai dengan

kebutuhan praktikum. Setting tersebut dapat dilakukan dengan

mengklik tab-tab yang ada dalam CodeWizardAVR.

7) Simpan hasil setting. Program Generate, Save and Exit

Gambar 17. Generate dan save hasil setting.

8) Simpan nama source file,nama project file, nama codewizard file

dengan nama yang Anda tentukan.

9) Tuliskan program pada editor.

Gambar 18. Code Editor

Page 20: Jobsheet Mikrokontroler ADC

12

10) Kompilasi program dengan mengklik Program → Compile dan

memastikan tidak ada error.

Gambar 19. Compile program dan memastikan tidak ada error

11) Jika sukses configure hasil compilasi untuk di download ke

mikrokontroler . ProgramConfigure dan klik After Build dan

centang Program the Chip dan klik OK.

Gambar 20. Mengaktifkan download program ke chip

Page 21: Jobsheet Mikrokontroler ADC

13

12) Build program, Program Build

13) Download hasil kompilasi ke mikrokontroler

5.2.2 Prosedur Khusus:

Untuk menggunakan ADC, perlu dilakukan sejumlah langkah inisialisai:

a. Tentukan prescaler untuk menentukan ADC Clock. Terdapat pilihan

prescaler: 2, 4, 8, 16, 32, 64 dan 128. Pengaturan prescaler dilakukan

melalui bit ADSP0, ADSP1 dan ADSP2 dalam register ADCSRA.

b. Tentukan tegangan referensi yang digunakan (AVCC, AREF atau

Internal), dengan mengaturnya melalui bit REFS0 dan REFS1 dalam

register ADMUX.

c. Enable ADC dengan memberikan logika 1 pada bit ADEN dalam register

ADCSRA.

Gambar 21. Register ADC

6. Keselamatan Kerja

Petunjuk keselamatan kerja:

a. Setiap mahasiswa harus menggunakan pakaian dan perlengkapan praktikum

dan mematuhi peraturan yang berlaku pada laboratorium di Program Studi

Teknik Listrik Politeknik Negeri Ujung Pandang

b. Memperhatikan penggunaan power supply, dimana suplai listrik harus dalam

keadaan OFF pada saat melakukan perakitan modul rangkaian.

Page 22: Jobsheet Mikrokontroler ADC

14

7. Data Percobaan

Modul I/O yang digunakan pada praktikum ini mempunyai 3 masukan sensor

yang terhubung pada masukan analog ATMega16. Masukan Sensor tersebut

adalah sebagai berikut :

1. Potensiometer

2. LDR (Light Dependent Resistor)

3. LM35 (Analog Temperature Sensor)

Percobaan ke :

1) ADC 8-bit dengan Potensiometer.

Pada percobaan ini, kita akan membuat program membaca masukan analog

dari potensiometer dan mengeluarkan data hasil konversi analog ke digital

port serial ke terminal. Programnya adalah sebagai berikut:

#include <avr/io.h>

#include <avr/interrupt.h>

#include <util/delay.h>

#include <stdio.h>

#define cbi(sfr, bit) (_SFR_BYTE(sfr) &=~_BV(bit))

#define sbi(sfr, bit) (_SFR_BYTE(sfr) |=_BV(bit))

#define BAUDRATE 9600

//Calculate UBRR Value

#define UBRRVAL ((F_CPU/(BAUDRATE*16UL))-1)

#define cbi(sfr,bit) (_SFR_BYTE(sfr) &=~_BV(bit))

#define sbi(sfr,bit) (_SFR_BYTE(sfr) |=_BV(bit))

void delay_ms (unsigned int ms)

{

unsigned int t;

for (t=0; t<=ms; t++)

_delay_ms(1);

}

void USART_init()

{

//set baudrate

UBRRL = UBRRVAL; //low byte

UBRRH = (UBRRVAL >> 8); //high byte

//set data frame format:asynchronous mode, no parity,

// 1 stop, 8 bit data

UCSRC |=(1 << URSEL) | (1 << UCSZ0) | (1<<UCSZ1);

//Enable transmitter dan receiver

Page 23: Jobsheet Mikrokontroler ADC

15

UCSRB |=(1<<RXEN)|(1<<TXEN);

}

void adc_init()

{

ADCSRA |= (1 << ADPS2) | (1 << ADPS0);

ADMUX |= (1 << REFS0);

ADCSRA |= (1 << ADEN);

}

unsigned int adc_read(unsigned char adc_input)

{

ADMUX = (ADMUX & 0xF0) | adc_input;

_delay_us(10);

ADCSRA |= (1 << ADSC);

while (!(ADCSRA & ( 1 << ADIF)));

ADCSRA |= 1 << ADIF;

return ADCW;

}

void USART_putchar(unsigned char temp)

{

//wait for empty transmit buffer

while (!(UCSRA & (1<<UDRE))) {};

UDR = temp;

}

void USART_puts(char ustr[])

{

for (short i=0; ustr[i] !=0x00;i++)

USART_putchar(ustr[i]);

}

int main()

{

int adc;

char mystr[15];

adc_init();

USART_init();

sbi(DDRB,DDB0);

cbi(DDRA,DDA0);

sbi(PORTA,PA0);

for(;;)

{

adc = adc_read(0);

sprintf(mystr,"Nilai ADC : %d\n\r", adc);

USART_puts(mystr);

delay_ms(200);

}

}

Page 24: Jobsheet Mikrokontroler ADC

16

8. Soal dan Pertanyaan

Membuat laporan resmi berdasarkan hasil kegiatan

a. Memodifikasi percobaan dengan merubah pembacaan ADC pada sensor

secara bergantian sesuai dengan urutan berikut dengan mengubah nilai

masukan x ADC pada fungsi read_adc(x);

1) Potensiometer -> ADC6

Konversi rumus dengan resolusi ADC-8 bit menjadi 0-5 volt dc

2) LDR -> ADC1

Perhatikan nilai output ADC ketika permukaan LDR ditutup dan dibuka

berdasarkan rangkaian.

3) LM35 -> ADC0

Perhatikan nilai output ADC ketika permukaan LM35 lebih panas atau

lebih dingin.

9. Daftar Pustaka:

Winoto, Ardi, Mikrokontroler AVR ATmega8/32/16/8535 dan Pemrogramannya dengan

Bahasa C pada WinAVR, Penerbit Informatika, Bandung, 2010

Pavel Haiduc, HP InfoTech S.R.L, CodeVisionAVR Version 2.03.2 User Manual, HP

InfoTech S.R.L , Romania, 2008

System, Next, Bermain Mikrokontroler AVR dan Robotika, NEXT SYSTEM Robotics

Learning Center,Bandung,2011

Page 25: Jobsheet Mikrokontroler ADC

17

DAFTAR LAMPIRAN

Lampiran 1

FORM PENILAIAN

Tabel 1. Form Penilaian

NAMA MAHASISWA / STB

ANGKA HURUF

JENIS PENILAIAN :

PRAKTIKUM : Keaktifan (10 %)

Absensi (5 %)

Kerapihan (5 %)

Kesuksesan (40 %)

EVALUASI (UJI TULIS) + Demo Kerja Alat (15 %)

LAPORAN (20 % ) + ASISTENSI (5 %)

TOTAL PENILAIAN