Rangkaian tersebut merupakan sebuah rangkaian yang digunakan untuk mengatur kecepatan Motor DC. Prinsipnya, sinyal input berupa data analog akan diberikan oleh seubuah sensor suhu, ketika sensor ini mendeteksi suhu. Ketika suhu terdeteksi, maka sinyal ini akan diberikan kepada mikrokontroler PIC dengan mengubah sinyal ini menjadi bentuk digital. setelah itu, sinyal digital ini diubah menjadi 8 bit digital kemudian di konversikan lagi menjadi sinyal analog menggunakan DAC0808 yang kemudian sinyal ini akan diteruskan untuk mengggerakkan motor DC. Jika suhu yang terdeteksi tingi, maka motor DC akan bergerak maksimum, jika suhu nya sedang (suhu ruangan) maka pergerakan/ perputaran dari motor DC sedang, dan jika suhu rendah, maka motor DC akan berputar lambat. Perputaran motor ini dikontrol dengan menggunakan program dari PIC sesuai dengan sinyal yang diterima dari sensor.
Simulasi - Download
int t;
void main() {
ADCON0.ADCS0=0; // ADCS0, ADCS1 dan ADCS2 Bersama-sama menentukan kecepatan clock
ADCON0.ADCS1=1; // Jika 0 1 1, maka kecepatannya Fosc/64
ADCON1.ADCS2=1;
ADCON0.CHS0=0; // CHS0, CHS1 dan CHS2 bersama sama menentukan pin input yang digunakan
ADCON0.CHS1=0; // jika 0 0 0 , maka pin digunakan adalah pin RA0/AN0
ADCON0.CHS2=0;
ADCON0.ADON=1; // Mengaktifkan konverter A/D
ADCON1.ADFM=1; // Menyatakan 10 bit yang digunakan terdiri dari 8 bit ADRESL dan 2 bit ADRESH
ADCON1.PCFG0=0; // PCFG0, PCFG1, PCFG2 dan PCFG3 bersama sama menentukan
ADCON1.PCFG1=0; // Apakah pin input digunakan sebagai input analog atau input digital
ADCON1.PCFG2=0; // Jika 0 0 0 0, maka pin digunakan sebagai input analog
ADCON0.PCFG3=0;
TRISC=0x00; // Menyatakan PORTC sebagai output
PORTC=0x00; // Nilai awal PORTC low
do
{
ADCON0.Go_Done=1;
t=ADRESL+(ADRESH*256); // Mendapatkan nilai input analog
t=t*0.4887 ; // Menyesuaikan nilai tegangan dengan nilai serajat suhu
if(t>=28){ // Jika suhu menunjukkan nilai lebih 28 derjat, maka
PORTC=0xff; // Motor DC berputar dengan kecepatan penuh
}
else if(t<28&&t>=24) { // Jika suhu menunjukkan nilai antara 24 dan 28 derjat, maka
PORTC=0x7f; // Motor DC berputar dengan kecepatan sedang
}
else // Jika suhu kurang dari 24 derjat, maka
{ PORTC=0x3f; // Motor DC berputar dengan kecepatan rendah
}
} while(1);
}
1. Berapakah tingkat ketelitian dari DAC 0808
A. 1/256
B. 2/256
C. 1/64
D. 2/64
E. 3/256
Jawab : A. 1/256
Penjelasan : DAC 0808 mempunyai 8 bit input, denagn metoda konversi rangkaian R-2R ladder, dengan tingkat ketelitian (1/256).
2. Spesifikasi DAC 0808 :
i. Input kompatible dengan TTL dan CMOS
ii. Range catu daya : ± 5V sampai ± 20V
iii. Settling time 150 nS
iv. Input slew rate 8mA/uSec
v. Akuarsi relatif : ± 0.3 dari error maksimum
vi. Konsumsi daya 35mW pada catu daya ± 5V
Dari pernyataan diatas spesifikasi DAC yang benar adalah :
A. i,ii,iii
B. ii,v,vi
C. iii,ii,iv
D. i,iii,iv
E. iv,v,vi
Jawab : D. i,iii,iv
1
Tidak ada komentar:
Posting Komentar