Politechnika Koszalińska
Instytut Elektroniki
tu wpisz swoje imię i nazwisko
tu wpisz swój adres e-mailowy.tu.koszalin.pl
tu wpisz swoje imię i nazwisko
tu wpisz swój adres e-mailowy.tu.koszalin.pl
Laboratorium miernictwa elektronicznego'96
ćwiczenie 9
Wielokanałowy interface (pol. międzymordzie) pomiarowy
Wstęp teoretyczny
We współczesnych urządzeniach elektronicznych przetwarzanie sygnałów coraz częściej jest realizowane na drodze cyfrowej. Przetwarzanie cyfrowe ma wiele zalet, m.in. zapewnia dużą stałość parametrów urządzenia niezależną od czasu, zmian temperatury i innych czynników zewnętrznych, oraz pozwala na łatwą realizację różnych, często bardzo skomplikowanych, funkcji bez zmian struktury układu jedynie przez zmianę programu (algorytmu) przetwarzania. Automatyczne systemy pomiarowe umożliwiają szybką rejestrację i obróbkę danych, łatwą cyfrową obróbkę danych i brak problemów z ich zachowywaniem w postaci cyfrowej.
Są też wady związane z przetwarzaniem cyfrowym: zniekształcenia wynikające z istoty przekształcenia sygnału analogowego na cyfrowy (tzw. szum kwantyzacji), konieczność dodatkowej filtracji sygnałów oraz ograniczona szybkość przetwarzania związana z szybkością działania przetworników i dużą na ogół liczbą operacji arytmetycznych wykonywanych w trakcie przetwarzania (np. filtracji) sygnału.
W zależności od szerokości szyny danych systemu można mówić, że system jest n-bitowy, przy czym 1 bit jest najmniejszą jednostką informacyjną. System wielobitowy umożliwia dosyć dokładną konwersję sygnału analogowego na cyfrowy i odwrotnie. Obecnie produkowane są systemy pomiarowe 16, 32 i 64 bitowe.
Typowe wymagania stawiane automatycznym systemom pomiarowym dotyczą nie tylko zbierania i analizowania danych, lecz także w znacznej mierze możliwości programowania i sterowania. Do tego celu wykorzystuje się komputery. Komputer operuje słowem (zespół cyfr o stałej długości), które jest naturalnym środkiem przekazu pomiędzy komputerem a innymi przyrządami systemu. Korzystając z komputera możliwe jest obrabianie wyników pomiarów na bieżąco (on-line) i przekazywanie odpowiednich poleceń wynikłych z przetworzonych danych pomiarowych do urządzeń wykonawczych - sterowanie. Możliwe jest również gromadzenie informacji o szybkozmieniających się procesach i późniejszą obróbkę wyników pomiarowych. Przy pomocy komputera i odpowiedniego oprogramowania wykonuje się właściwie wszystkie konieczne obliczenia związane z uzyskaniem interesujących wyników z obróbki procesu pomiarowego.
Do komunikacji z analogowym światem zewnętrznym systemu komputerowego obrabiającego dane pomiarowe konieczne jest stosowanie konwersji sygnałów analogowych na cyfrowe i odwrotnie. Przetwornik analogowo-cyfrowy A/C przekształca sygnał elektryczny analogowy na dyskretny sygnał cyfrowy. Trzeba podkreślić, że ze względu na dyskretną naturę sygnałów cyfrowych przekształcenie sygnału analogowego na cyfrowy jest niejednoznaczne. Różnym napięciom wejściowym z przedziału o szerokości Q odpowiada ta sama liczba D na wyjściu przetwornika. W procesie konwersji sygnału analogowego na cyfrowy powstają więc nieuniknione zniekształcenia przetwarzanego sygnału, związane z dyskretyzacją sygnału analogowego w amplitudzie. Miarą tych zniekształceń jest błąd kwantyzacji równy różnicy między rzeczywistą wartością sygnału analogowego a wartością odpowiadającą liczbie cyfrowej. Przetworniki cyfrowo analogowe dokonują operacji odwrotnej. Jest to jednak przekształcenie jednoznaczne. Ważnym pojęciem przy omawianiu przetworników A/C i C/A jest zakres przetwarzania FS (full scale). Jest to wartość napięcia odpowaiadająca zwiększonej o jeden największej liczbie całkowitej stosowanej w słowie cyfrowym przetwornika.
Kolejnym pojęciem jest zakres dynamiczny. Określa się go jako stosunek największej i najmniejszej wartości sygnału, jakie mogą być reprezentowane w postaci sygnału cyfrowego. Dynamika zależy od liczby różnych wartości sygnału które mogą być jednoznacznie wyróżnione, czyli do liczby poziomów, na jakie podzielony jest zakres przetwarzania przetworników A/C i C/A. Duża dynamika jest związana z dużą rozdzielczością przetwornika, tj. małą szerokością przedziału kwantyzacji Q oraz dużą liczbą poziomów kwantyzacji.
Przy przetwarzaniu sygnałów zmiennych powstają dodatkowe błędy związane z dyskretyzacją sygnału w czasie. Konwersja takich sygnałów zwykle polega na kolejnym pobieraniu próbek sygnału analogowego w regularnych odstępach czasu Ts i przetwarzaniu tych próbek na wielkość cyfrową. Wartości sygnału analogowego między kolejnymi momentami próbkowania nie są przetwarzane przez przetwornik A/C, dlatego sygnał cyfrowy zawiera mniej informacji niż sygnał analogowy. Istotnym zagadnieniem przy próbkowaniu sygnału analogowego jest określenie minimalnej częstotliwości próbkowania , przy której jest możliwe jednoznaczne odtworzenie sygnału wejściowego. Odtworzenie przebiegu z ciągu próbek polega na wydzieleniu w drodze idealnej filtracji głównej części widma położonej w otoczeniu środka układu współrzędnych. Jest to możliwe gdy poszczególne segmenty widm nie zachodzą na siebie, czyli gdy częstotliwość próbkowania fs jest co najmniej dwukrotnie większa od maksymalnej częstotliwości występującej w przetwarzanym sygnale analogowym. Ta zasada jest sformułowana w postaci twierdzenia Shannona-Kotielnikowa, z którego wynika, że przebieg ściśle dolnoprzepustowy jest całkowicie określony przez pobierane próbki z częstotliwością co najmniej dwukrotnie większą od maksymalnej częstotliwości występującej w widmie próbkowanego sygnału. Minimalna częstotliwość próbkowania, równa podwójnej wartości górnej częstotliwości widma sygnału, nazywa się często częstotliwością Nyquista.
Wyróżnia się 3 podstawowe błędy przetworników A/C i C/A:
Przetworniki A/C i C/A stosuje się w układach do zbierania i przetwarzania informacji. Układy do zbierania informacji z wielu źródeł jednocześnie i przesyłania ich do dalszej obróbki np. mikroprocesora nazywamy wielokanałowymi interfejsami pomiarowymi. Mogą one pracować w układach jak na rysunku.
Opis systemu
System sterowania MCS-52 BASIC jest uniwersalnym wielofunkcyjnym zestawem mikroprocesorowym przeznaczonym do pomiarów, kontroli, sterowania oraz regulacji według programu napisanego w języku BASIC-52 lub w asemblerze procesora 8031, 8032, 8051, 8052 itp. Wszystkie moduły systemu zbudowane są z pakietów o wymiarach 100x160 mm (Single Eurocard) z wyprowadzonymi złączami pośrednimi 64 typu Cannon do połączeń wewnątrz kasety (typ magistrali ECB). Płyty czołowe pakietów zawierają złącza szufladowe łączące system z obiektami zewnętrznymi. Każda z kart jest indywidualnie adresowana przez moduł procesora. Adres ustawiony jest przez odpowiednie połączenia na polach krosowych. Maksymalna liczba adresów wynosi 256.
Jednostka centrala CPU-52
Podstawowym modułem systemu jest karta procesora zawierająca:
procesor 8051 z wbudowanym 8kB interpreterem BASICa, układem transmisji szeregowej, timerami, kontrolerem przerwań oraz 8-bitowym portem I/O,
32kB pamięci CMOS RAM, 32kB pamięci EPROM dla programu BASIC oraz 32kB pamięci EPROM dla procedur asemblerowych. Jedna podstawka na pakiecie przeznaczona jest do programowania pamięci EPROM specjalnym zestawem instrukcji BASICa,
moduł RTC 58321 kalendarza z rezonatorem kwarcowym i podtrzymaniem zasilania,
układ RESET umożliwiający wykonanie przez procesor miękkiego lub twardego restartu,
logikę sterowania magistralą ECB.
Aparatura pomiarowa
modułowy system sterowania i pomiarów typu MCS-52 z układem przetwarzania danych wyposażonym w mikroprocesor 8051 zawierający karty przetwarzające: A/D-16U, DOUT 8/24, DIN 16, D/A 8U,
monitor,
zasilacz 0-10V,
woltomierz cyfrowy.
Pomiary
Pomiar liniowości przetwarzania przetwornika A/C
Skalowanie polegało na wprowadzeniu sygnału analogowego (prądu z przedziału 05mA) na dowolne wejście przetwornika A/C oraz obserwacji stanu wartości cyfrowej przy zmianach prądu. W tym celu do pamięci komputera został wprowadzony program Do ustalenia odpowiednich poziomów odnoszących się do pewnych wartości napięcia użyto program rom4 zapisany w pamięci EPROM napisany w języku BASIC.
10 XBY(05FH)=0A5H
15 INPUT "Nr karty 0-a 1-b 2-c 3-d",Q
16 INPUT "Przesuniecie zera ",W2
18 INPUT "Wspolczynnik skalowania ",W1
20 DIM AA(20),AB(20)
25 DIM AC(20)
30 S=0FF00H+Q*8:S1=S+1
40 FOR L=1 TO 16:READ AA(L),AB(L):NEXT L
45 FOR L=1 TO 16:READ AC(L):NEXT L
50 PRINT CHR(1AH)
60 PRINT CHR(27),"= "
80 FOR L=1 TO 16
90 GOSUB 200
94 PRINT AC(L)
95 PRINT CHR(9),CHR(9),
98 D=W1*(D+W2)
100 PRINT USING(0),D," "
110 NEXT L
120 PRINT CHR(27),"= "
130 GOTO 80
200 XBY(S+4+AB(L))=0:XBY(S)=AA(L)
210 IF (XBY(S).AND.64)=0 THEN 210
220 D=XBY(S1):RETURN
300 DATA 0,3,0,0,0,1,0,2
310 DATA 1,3,1,0,1,1,1,2
320 DATA 2,3,2,0,2,1,2,2
330 DATA 3,3,3,0,3,1,3,2
340 DATA 1,2,3,4,5,6,7,8,12,13,14,15,16,17,18,19
Po jego uruchomieniu należało podać karty przetwornika tzn. 0FF30H, następnie numer kanału i wartość dziesiętną poziomu odpowiadającego konkretnemu napięciu.
Mierzyliśmy prąd i aby określić jakiemu on odpowiada napięciu należy pomnożyć tę wartość przez R=50.
Wyniki
nr karty: a
przesunięcie zera: 0
współczynnik skalowania: 1
I[mA] |
0 |
0.5 |
1 |
1.5 |
2 |
2.5 |
3 |
3.5 |
4 |
4.5 |
5 |
U[V] |
0 |
0.025 |
0.05 |
0.075 |
0.1 |
0.125 |
0.15 |
0.175 |
0.2 |
0.225 |
0.25 |
wartość dyskretna |
1 |
25 |
50 |
74 |
98 |
123 |
147 |
171 |
196 |
220 |
245 |
wartość dyskretna |
1 |
25 |
49 |
73 |
98 |
122 |
147 |
171 |
196 |
219 |
244 |
Widać, że oba kanały mają liniową charakterystykę przetwarzania.
Pomiar liniowości przetwornika C/A
Przy pomocy programu zamieszczonego dalej, ustalana była wartość rejestru, która po przejściu przez przetwornik C/A zamieniany był na postać analogową (napięcie). Napięcie było mierzone przy pomocy woltomierza cyfrowego.
Do komputera wprowadzony został następujący program:
40 INPUT "Adres karty ",S
50 INPUT "Nr kanału ",K
55 IF K>7 THEN GOTO 50
60 INPUT "Wartość na wyjściu ",L
70 IF L>255 THEN GOTO 60
80 XBY(S+K)=L
90 GOTO 50
Karta D/A 0FF30H dla kanału 1
wartość |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
20 |
U[V] |
0.06 |
0.1 |
0.13 |
0.17 |
0.2 |
0.24 |
0.27 |
0.31 |
0.34 |
0.38 |
0.73 |
wartość |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
150 |
200 |
250 |
U[V] |
1.09 |
1.44 |
1.79 |
2.15 |
2.51 |
2.86 |
3.22 |
3.57 |
3.35 |
7.13 |
8.89 |
Na wykresie tym dokładnie widzimy nieliniowość przetwarzania.Jej przyczyną mogą być same właściwości przesyłania kanału, zakłócenia zewnętrzne lub generowane poprzez sam kanał (sieć rezystorów) lub zmieniające się warunki pomiarowe, niestabilność natężenia prądu i inne. Wszystko to może decydować o odchyleniach od liniowości przetwarzania kanałów C/A.
Programowe wygenerowanie sinusoidy
W celu wygenerowania sinusoidy wpisaliśmy do pamięci komputera program:
10 S=0FF30H
20 K=4
30 I=0
40 U=INT(127+127*SIN(I))
50 XBY(S+K)=U
60 I+I+0.1
70 GOTO 40
Niestety uszkodzony rejestrator nie pozwalał na zarejestrowanie sygnału wychodzącego z przetwornika C/A. Przebieg był jednak generowany, gdyż został zaobserwowany na ekranie oscyloskopu. Jednak w związku z tym, iż przebieg ten był stosunkowo wolnozmienny w czasie, nie mogliśmy stwierdzić, jaki kształt ma generowana sinusoida. Na częstotliwość generowanego sinusa miał wpływ nie tylko program, lecz także prędkość interpretera BASICa, która nie była zbyt duża.
Uwagi i wnioski
ćwiczenie przebiegało bez większych zakłóceń. Przygotowanie sprawozdania tym razem też.
Jak wynika z przedstawionych charakterystyk przejściowych przetwornika A/C jest on liniowy dla każdego z kanałów. Inaczej sprawa wygląda dla przetwornika C/A. Jego charakterystyka jest mocno nieregularna, daleka od liniowej.
Interfejs pomiarowy jest bardzo wygody przy pomiarach wielopunktowych z dużą ilością informacji. Jest on idealnym narzędziem przy zbieraniu informacji wolno zmiennych w czasie. Dane te można potem łatwo przetwarzać przy pomocy komputera. Powszechnie obecnie wykorzystywana jest metoda FFT do badania widma sygnału na podstawie szybko nadchodzących wartości chwilowych sygnału. Cała operacja wykonywana jest na wartościach cyfrowych przy pomocy odpowiedniego algorytmu.
Spis treści
Wstęp teoretyczny