instruktur : ferry wahyu wibowo, s.si.,...

Post on 05-Jun-2019

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

1

Pendahuluan

Fitur utama dari sistem akuisisi data

Karakteristik analog-to-digital converter

Karakteristik 16F873A analog-to-digital converter

Rangkuman

2

Property Analog Digital

RepresentasiArus / tegangan

kontinyuBiner

Presisi InfinitDibatasipanjangbilangan

Hambatandegradasi

lemahToleran kedegradasi

sinyal

Pemrosesan terbatas Powerful

Penyimpanan Tidak mungkin mungkin

3

Banyak sinyal fisik berupa analog.

Sinyal analog dideteksi oleh sensor atautransduser.

Contoh: suhu, suara, tekanan, dan lain-lain.

Perlu untuk mengkonversi sinyal digital untukmemfasilitasi pemrosesan olehmikrokontroler.

Piranti yang menangani hal ini adalah analog-to-digital converter (ADC).

4

1. Dual ramp (lamban dengan akurasi sangattinggi, untuk pengukuran yang presisi)

2. Flash converter (cepat, akurasi yang sedikit, untuk video atau radar)

3. Successive approximation (kecepatan danakurasi medium, untuk aplikasi industrial general-purpose, biasanya ditemukan padaembedded systems)

5

Karakteristik KonversiJangkah tegangan Vr = Vmaks – 0

Resolusi = Vr / 2n

Error kuantisasi = ± Resolusi / 2

= Vr / 2n+16

1. Ambil Sampel

2. Mulai konversi

3. Tunggu

4. Baca nilai digital (pada paralel atau serial)

Biasanya memerlukan referensi tegangan

7

1. Transduser: fisik ke listrik2. Rangkaian penguat dan offset

◦ Tegangan masukan harus menjalar sebanyak jangkahmasukannya

◦ Pergeseran tingkat tegangan juga diperlukan

3. Filter: menghilangkan komponen sinyal yang tidak diinginkan

4. Multiplexer: memilih satu dari beberapamasukan

5. Sampler: nilai konversi sedikitnya dua kali frekuensi sinyal tertinggi (aturan sampling Nyquist)

6. ADC

8

9

10

11

Berapa waktu akuisisi untuk 10-bit ADC?

Tegangan yang harus muncul

≥ Vs – error kuantisasi = Vs - Vs / 2n+1

≥ Vs(2047/2048) = 0.9995 Vs

VC = Vs {1 − exp(−t/RC)}

0.9995Vs = Vs {1 − exp(−t/RC)}

exp(−t/RC) = 1 − 0.9995

−t = RC ln(0.0005)

t = 7.6RC

12

Pewaktuanmembutuhkan

A-to-D conversion

13

Untuk mengoperasikan tingkat akurasi yang bagus, sebuah ADC membutuhkan catu dayadan ground yang bersih dan tidak adainterferensi elektromagnetik.

Ketika ADC diintegrasikan di dalammikrokontroler, maka akan mempengaruhisumber daya internal derau.

Sehingga, ADC yang diintegrasikan tidaksangat akurat, biasanya 8- atau 10-bit.

14

Piranti Pin Fitur

16F873A16F876A

28 3 port paralel,3 timer/counter,2 capture/compare/PWM,2 serial,5 10-bit ADC,2 komparator

16F874A16F877A

40 5 port paralel,3 timer/counter,2 capture/compare/PWM,2 serial,8 10-bit ADC,2 komparator

15

16

Pengendali ADCADC dikendalikan oleh dua SFR:

•ADCON0 (1Fh)•ADCON1 (9Fh)

Hasil konversi ditempatkan di: •ADRESH (1Eh)•ADRESL (9Eh)

17

ADCS1:0: memilih clock konversi

CHS2:0: memilih saluran analog

GO/DONE’: status konversiADC interrupt flag ADIF dan interupsi

enable ADIE bit dapat juga digunakan

U: tidak diimplementasikan

ADON: A/D On

18

19

•Konversi 10-bit memakan sekitar 12 TAD siklus

•TAD harus sama atau lebih besar 1,6 μs

•Minimum 2TAD antara dua successive conversion

•Nilai konversi maksimum adalah 30 kHz, nilainya lebih tinggi dengan

pensaklaran TAD setelah mulai konversi

ADFM: memilih format hasil

1 = Right justified

0 = Left justified

ADCS2: memilih clock konversi

U: tidak diimplementasikan

PCFG3:0: kendali konfigurasi port

20

21

22

23

tac = waktu settling penguat

+ waktu pengisian kapasitor

+ koefisien suhu

tac = 2 μs

+ 7.6RC untuk akurasi 10-bit

+ (suhu − 25◦C)(0.05 μs/◦C)

24

RSS = 7kΩ, RIC = 1kΩ (VDD = 5V), RS = 0,

suhu = 35 ◦C, TAD = 1,6 μs

tac = 2 μs

+ 7,6(7kΩ + 1kΩ + 0)(120pF)

+ (35 − 25)(0,05 μs/◦C)

= 2 + 7,3 + 0,5 = 9,8 μs

Waktu total = tac + 12TAD = 9,8 + 19,2 μs = 29 μs

25

...

bsf status,rp0

movlw B'00001011' ;set port A bit,

movwf trisa ;ADC set sebagi masukan

movlw B'10000100' ;masukan analog bit 0,1,3

movwf adcon1 ;hasil right justify

...

26

...

bcf status,rp0

movlw B'01000001' ;set up ADC: clock Fosc/8,

;switch ADC on tetapi tidak mengkonversi,

;seleksi saluran tidak relevan

movwf adcon0

27

main_loop

movlw B'01000001' ;memilih saluran 0

movwf adcon0

call delay20u ;waktu akuisisi

bsf adcon0,go ;mulai konversi

btfsc adcon0,go_done ;apakah konversi berakhir?

goto $-1

movf adresh,0 ;baca tinggi data keluaran ADC

movwf ldr_left_hi

bsf status,rp0

movf adresl,0 ;baca rendah data keluaran ADC

bcf status,rp0

movwf ldr_left_lo

28

Banyak sinyal dihasilkan oleh transduseradalah analog, sedangkan semua prosesdilakukan oleh mikrokontroler berupa digital.

Sinyal analog dapat dikonversi ke bentudigital menggunakan analog-to-digital converter (ADC). ADC biasanya membentukhanya satu bagian sistem akuisisi data yang lebih besar.

Perlu hati-hati mengoperasikan ADC dansistem akuisisi data, menggunakanpengetahuan diantara pewaktuan, sinyal, ground dan penggunaan referensi tegangan.

29

PIC 16F873A mempunyai modul ADC 10-bit yang terdiri fitur sistem akuisisi data.

Nilai data perlu diproses lebih lanjut, termasuk offsetting, scaling dan konversikode. Algoritma standar ada untuk semuatermasuk library assembler.

Antarmuka sederhana antara analog dandigital adalah komparator, yang digunakanuntuk mengklasifikasikan sinyal analog satudari dua state.

30

top related