Egz.Brydak - zadania.doc

(1003 KB) Pobierz
1

1.            Scharakteryzuj budowę słowa wyjściowego przetwornika A/C i opisz proces konwersji wartości binarnej na wartość wielkości fizycznej (np. napięcie, temperatura).



Otrzymując kod wyjściowy z przetwornika A/C przeprowadza się proces konwersji tej wartości na fizyczną wartość sygnału wejściowego (np. napięcia). Należy najpierw wyznaczyć wartość dziesiętną otrzymanego wyniku, a później wartość sygnału wejściowego ze wzoru:



gdzie: Rd - rezultat otrzymany na wyjściu przetwornika (dziesiętnie), Vref- do Vref + napięcie odniesienia, N – ilość bitów słowa wyjściowego z przetwornika A/C. Zwykle Vref- =0V i korzystamy z drugiego wzoru.

PRZYKŁAD Napięcie wyjściowe dla jednego bitu ma wartość 0,61 mV. Przy 250C napięcie na wyjściu wynosi 600 mV, a nachylenie charakterystyki –3mV/ OC.

Twyj[0C]=25-(600-odczyt)/(-3)

Napięcie odniesienia: VREF=2,5 V. Na wyjściu przetwornika pojawia się słowo 12-bitowe, zatem FS=212=4096. Więc na jeden bit przypada . Aby zamienić wskazanie na odpowiadające mu napięcie korzystamy ze wzoru :

Napięcie 600 mV odpowiada temp. 250C, zmiana o 10C odpowiada zmianie 30mV na wyjściu

 

2.      Określ wartość Ux napięcia sygnału pomiarowego uzyskanego z 10-bitowego przetwornika A/C przekazującego część starszą wyniku w rejestrze ADCH=0xA3 oraz cześć młodszą wyniku w rejestrze ADCON=0x57 wiedząc, że 2 najmłodsze bity wyniku znajdują się na pozycjach b7 i b6 słowa ADCON. Napięcie referencyjne przetwornika URef+=5V a URef-=0V. Zapisz algorytm obliczeń w języku programowania C.

Dane:

ADCH=0xA3

ADCON=0x57

URef+=5V

URef-=0V

N=10 bit

Ux=?

ACDH =    1010 0011(2)

ADCON=  0101 0111(2)

  ACDH        ADCON

1010 0011   0101 0111

 

Bierzemy 10 bitów wyniku czyli: 1010 0011 01 i zamieniamy na postać dziesiętną: Wdz=653

Algorytm obliczeń w C:

int x; //wartość dziesiątkowa

float Ux; //wartość napięcia

float Uref;

x= ADCH*4+(ADCON&0xC0)>>6; // (ADCON>>0xC00)&0x03

Ux=((float) x +Uref)/1024.0;

3. Określ wartość temperatury czujnika mikrokonwertera ADuC812 na podstawie pojedynczego binarnego wyniku przetwarzania Xi=0x83BA, przyjmując parametry: UREF-=0V, UREF+=2.5V, stała czujnika temperatury U25°C=600mV, U/T= 3mV/°C.

Dane:

Xi=0x83BA

UREF-=0V,

UREF+=2.5V

U25°C=600mV,

U/T= 3mV/°C

Tx=?

Pierwsze 4 bitu to nr kanału, a następne 12 to wynik konwersji T na U:

Xi=0x83BA = 1000 0011 1011 1010(2) = 962

4. Określ średnią wartość temperatury czujnika mikrokonwertera ADuC812 na podstawie binarnych wyników przetwarzania, przyjmując parametry: UREF-=0V, UREF+=2.5V, stała czujnika temperatury U25°C=630mV, U/T= -3mV/°C, kanał pomiarowy M=8, kolejne wartości binarne wyników przetwarzania (wraz z numerem kanału) Xi=840DHEX, Xi+1=8409HEX, Xi+2=8411HEX.

Dane:

Xi=840DHEX

Xi+1=8409HEX

Xi+2=8411HEX

UREF-=0V,

UREF+=2.5V

U25°C=630mV,

U/T= 3mV/°C

M=8

Xi=840DHEX=1000                0100 0000 1011(2)=1035(10)

Xi+1=8409HEX= 1000                0100 0000 1001(2)=1033(10)

Xi+2=8411HEX= 1000               0100 0001 0001(2)=1041(10)

5. Określić względny błąd doboru częstotliwości próbkowania fprb= 32000Hz wykorzystując wewnętrzne układy dzielników częstotliwości (licznik L2) dla mikrokonwertera ADuC812 (fsys=11059200Hz).

 

Dane:

fpróbk= 32000Hz

fsys=11059200Hz

licznik L2 (dzielnik systemowy 12, 16-bitowy licznik L2 z autoprzeładowaniem, dzielnik wyjściowy ¸2)

Dz1=14 lub Dz2=15

6. Podaj binarną wartość kodu sterującego 12-bitowego unipolarnego przetwornika C/A aby na wyjściu uzyskać napięcie 1.55V. Napięcie referencyjne przetwornika UREF=2.5V.

 

Dane:

N=12

Ux=1,55V

UREF=2,5 V

Wbin=?

Wbin=- rozdzielczość przetwornika

ALGORYTM WYSTAWIANIA WARTOSCI Wbin NA PRZETWORNIK:

ALGORYTM W JĘZYKU C:

int i, Wbin;

DACH=Wbin>>8;

DACL=Wbin;

BŁĄD KWANTYZACJI:

7. Określ maks. częstotliwość sygnał...

Zgłoś jeśli naruszono regulamin