instruktur : ferry wahyu wibowo, s.si.,...
Post on 05-Jun-2019
221 Views
Preview:
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