Sprawozdania.doc

(412 KB) Pobierz
Mikrokontroler jest to układ, który zawiera w sobie kompletny system mikroprocesorowy składający się z procesora, pamięci programu, pamięć danych oraz innych elementów

Mikrokontroler jest to  układ, który zawiera w sobie kompletny system mikroprocesorowy składający się z procesora, pamięci programu, pamięć danych oraz innych elementów. Posiadają pamięć RAM do ok. kilku kB, co jest niestety często niewystarczające.

 

Przetwornik analogowo-cyfrowy układ służący do zamiany sygnału analogowego(ciągłego) pochodzącego od obiektów świata realnego na reprezentację cyfrową (sygnał cyfrowy). Dzięki temu możliwe jest przetwarzanie ich w urządzeniach elektronicznych opartych o architekturę zero-jedynkową oraz gromadzenie na dostosowanych do tej architektury nośnikach danych. Proces ten polega na uproszczeniu sygnału analogowego do postaci skwantowanej, czyli zastąpieniu wartości zmieniających się płynnie do wartości zmieniających się skokowo w odpowiedniej skali (dokładności) odwzorowania.

 

Etapy przetwarzanie A/C którymi zajmowaliśmy się na laboratorium

Próbkowanie- dyskretyzacja argumentu funkcji x(t) następuje przez kolejne pobieranie próbek wartości sygnału w pewnych odstępach czasu, zaś kwantowanie (dyskretyzacja wartości funkcji x(t) polega na przyporządkowaniu każdej próbce skończonej liczby poziomów amplitudy, odpowiadających dyskretnym wartościom od zera do pełnego zakresu. Następnie uzyskana wartość dyskretna zostaje kodowana i wyrażona za pomocą odpowiednio dobranego kodu cyfrowego.

Próbkowanie polega na pobieraniu w określonych odstępach czasu próbek wartości funkcji x(t) tak, aby ich ciąg umożliwiał jak najwierniejsze odtworzenie przebiegu funkcji.

Próbkowanie dokonywane jest zazwyczaj jedną z poniższych metod:

a)      regularną – ze stałym odstępem czasu,

b)     adaptacyjna – ze zmiennym odstępem  czasu. Odstęp czasowy  pomiędzy  poszczególnymi próbkami jest różny i zależy np. od tego, jak bardzo zmienia się sygnał.

Poprawność próbkowania zależy od spełnienia jednego z kryteriów:

Kryterium  Shannona  –  Kotielnikowa,  według  którego   częstotliwość  próbkowania

powinna być co najmniej dwukrotnie większa niż ograniczenie pasma widma sygnału.

 

FS >(=) 2FM

 

Fs – częstotliwość próbkowania           

FM – maksymalna częstotliwość widma

 

Kwantowanie – jest to dyskretyzacja wartości sygnału analogowego, polegająca na przyporządkowaniu każdej wartości sygnału pewnej skwantowanej wartości dyskretnej. Przetworniki a/c wykorzystują najczęściej tzw. Kwantowanie równomierne:

 

Xo = q ent (X/q +1/2)

 

Xo – wartość na wyjściu układu  Kwantującego,

X – wartość sygnału analogowego,

q – elementarny przedział kwantowania.

 

Cechą charakterystyczną dla przetworników A/C jest tzw. błąd dyskretyzacji. Określony wzorem:

ddy = (+,-) Xn/Nmax ,

 

Xn to zakrez pomiarowy,

N – liczba jednostek miary.

Metody przetwarzania A/C:

1) Pośrednie:

a)      Czasowa (prosta, z podwójnym całkowaniem, z potrójnym całkowaniem, z poczwórnym całkowaniem),

b)     Częstotliwościowa (prosta, z równoważeniem ładunków, delta – sigma)

2) Bezpośrednie:

              a)  Kompensacyjna (z kompensacją wagową, z kompensacją równomierną)

              b)  Metoda bezpośredniego porównania (z porównaniem równoległym, szeregowym, szeregowo-równoległym, metoda wielokrotnego składania sygnałów).

 

Przetwornik analogowo-cyfrowy A/C (ang. A/D - analog to digital; ADC - analog to digital converter), to układ służący do zamiany sygnału analogowego (ciągłego) pochodzącego od obiektów świata realnego na reprezentację cyfrową (sygnał cyfrowy). Dzięki temu możliwe jest przetwarzanie ich w urządzeniach elektronicznych opartych o architekturę zero-jedynkową oraz gromadzenie na dostosowanych do tej architektury nośnikach danych. Proces ten polega na uproszczeniu sygnału analogowego do postaci skwantowanej, czyli zastąpieniu wartości zmieniających się płynnie do wartości zmieniających się skokowo w odpowiedniej skali (dokładności) odwzorowania. Przetwarzanie A/C tworzą 2 etapy: próbkowanie i kwantyzacja. Działanie przeciwne do wyżej wymienionego wykonuje przetwornik cyfrowo-analogowy C/A.

 

Opis przetrwornika A/C z równoważeniem wagowym.

 

              Metoda  z równoważeniem wagowym (ang. Succesive approximation method) jest jedną z najczęściej  stosowanych  metod przetwarzania A/C. Proces przetwarzania w przetworniku n bitowym składa się z n kolejnych kroków. W każdym kroku impuls z generatora zegarowego powoduje przesunięcie w rejestrze przesuwającym stanu logicznego 1 o jedno miejsce. Stan ten wpisywany jest następnie do odpowiedniego przerzutnika rejestru wyjściowego,  powodując  przyrost  napięcia  kompensującego na wyjściu przetwornika C/A o wartość

 

ΔUK = UR/2k

 

przy czym napięcie odniesienia UR jest równe pełnemu zakresowi przetwarzania. W każdym kroku aktualna wartość napięcia kompensującego jest porównywana z napięciem UI i w za-leżności od wyniku porównania zostaje ustawiony stan przerzutnika bk w rejestrze wyjściowym. Jeśli UK > UI , to przerzutnik bk jest w stanie 1 i odpowiadająca mu składowa napięcia kompensującego jest nadal włączona  jako składnik napięcia UK  przy następnych porównaniach. Natomiast,  gdy  Jeśli  UK  <  UI, to  następuje skasowania przerzutnika bk = 0 i w ten sposób wyłączenie odpowiadającej mu składowej UK.             

              Wartość napięcia kompensacyjnego UK po n krokach przetwarzania wyraża się wzorem:

 

UK = b1 (UR/21)+ b2 (UR/22)+ b3 (UR/23)+  ... bn (UR/2n)

 

              Zaletą metoda kompensacji wagowej jest krótki czas przetwarzania. Czas przetwarza-nia określony jest wzorem:

T = nTC

                           

TC – czas trwania jednego kroku (niezależny od wartości napięcia              przetwarzanego).

 

 

 

Metoda ta posiada jednak dużą nieliniowość różniczkową, uwarunkowaną właściwościami danego przetwornika C/A. Ze względu jednak na czas przetwarzania a także łatwość implementacji w ukła-dach monolitycznych jest bardzo rozpowszechniona i razem z metodą podwójnego całkowania niemal całkowicie dominuje w produkowanych obecnie przetwornikach A/C.

 

Opis ogólny

Układ ADuC812 jest w pełni zintegrowanym 12-bitowym systemem akwizycji danych, łączy w sobie wysoką wydajność samo kalibrującego układu ADC, dwa 12-bitowe konwertery C/A oraz 8-bitową jednostkę MCU (zgodną z 8051)

Programowalny rdzeń układu zawiera 8K pamięci programu (FLASH), 640 bajtów pamięci danych (FLASH) oraz 256 pamięci danych (SRAM - staticRAM). Dodatkowe rozszerzenia układu to Watchdog, kontrola zasilania, funkcje DMA. Dostępne są 32 programowalne linie We/Wy (SPI, I2O, UART). Dostępne są tryby pracy normalny, uśpienia oraz bez zasilania (maks. oszczędność energii) pozwalają na zróżnicowane zarządzanie zasilaniem, co jest ważne w układach przenośnych. Układ jest dostępny w plastikowych kwadratowych obudowach, z 52 nóżkami.

ADuC812 środowisko programowania i inne dodatki:

·         Symulator układu pod Windows

·         Debugger pod Windows

·         Assembler  8051

·         Program do wpisywania programu do układu

·         System ułatwień programowania

Rysunek 1 i 2 Schemat układu.

Przetwornik o przetwarzaniu bezpośrednim

Przetwornik o przetwarzaniu bezpośrednim (nazywany także Flash) działa na zasadzie bezpośredniego i zazwyczaj jednoczesnego porównania wartości napięcia wejściowego z szeregiem napięć odniesienia reprezentujących poszczególne poziomy kwantowania za pomocą szeregu komparatorów analogowych. Rezultat tego porównania wprowadzany jest na specjalny enkoder który wyprowadza wartość cyfrową sygnału wejściowego w stosownej formie binarnej. Podstawową zaletą takich przetworników jest szybkość działania (czas przetworzenia) na którą składają się wyłącznie dwa czynniki: opóźnienie na komparatorze analogowym oraz opóźnienie na enkoderze cyfrowym. Uzyskiwane szybkości przetwarzania są nawet od kilku razy do kilku rzędów wielkości większe od pozostałych typów przetworników A/C. Niestety ogromna szybkość okupiona jest relatywnie małą rozdzielczością oraz dokładnością. Zwiększenie rozdzielczości o kolejny bit wymaga podwojenia ilości elementów i zwiększenia precyzyjności napięć odniesienia uzyskiwanych zazwyczaj z dzielnika rezystorowego wysokostabilnego napięcia odniesienia wewnętrznego lub zewnętrznego. Dodatkowo zwiększanie ilości komparatorów czyli poziomów kwantowania lub inaczej rozdzielczości bitowej przetwornika, powoduje zwiększenie jego pojemności wejściowej a co za tym idzie ograniczenia pasma wejściowego sygnału co niekorzystnie wpływa na jego parametry funkcjonalne. Przetworniki tego typu stosowane są wszędzie tam gdzie wymagana jest bardzo duża częstotliwość próbkowania i jednocześnie nie jest wymagana bardzo duża dokładność przetwarzania (najczęściej nie większa niż 8- lub 9- bitowa).

 

 


Przetwornik z próbkowaniem analogowym

Działa na zasadzie zliczania impulsów z generatora wzorcowego o dużej częstotliwości (względem czasu pomiaru) w czasie proporcjonalnym do napięcia wejściowego. Czas zliczania impulsów jest szerokością impulsu bramkującego generowanego przez układ sterujący na podstawie porównania napięcia wejściowego z liniowo narastającym napiciem odniesienia przez komparator analogowy. Parametry tego typu przetwornika bardzo mocno zależą od jakości (dokładności) generowania napięcia odniesienia (jest to przebieg piłokształtny) jego liniowości oraz powtarzalności szybkości narastania a także od stabilności generatora wzorcowego. Szybkość przetwarzania czyli częstotliwość próbkowania w tego typu przetwornikach równa jest częstotliwości przebiegu z generatora napięcia odniesienia. Uzyskiwane rozdzielczości zależą od szerokości bitowej licznika i częstotliwości generatora wzorcowego. Ze względu na to iż stosunkowo łatwo jest zaprojektować i wytworzyć cyfrowe liczniki binarne o znacznych szerokościach słowa oraz generatory wzorcowe o dobrych parametrach, można w ten sposób uzyskać bardzo dobrą rozdzielczość przetwornika ograniczoną wyłącznie parametrem stosunku sygnału do szumu (SNR) części analogowej.

 

Przetwornik kolejnych przybliżeń wagowych

Przetwornik kolejnych przybliżeń wagowych (próbkowaniem bitowym) działa na zasadzie porównywania wartości napięcia wejściowego z napięciem odniesienia wytworzonym za pomocą przetwornika cyfrowo-analogowego w iteracyjnym procesie obsługiwanym przez układ sterujący. Algorytm działania układu sterującego polega na ustawianiu (wartość "1") kolejnych bitów słowa danych dla przetwornika C/A poczynając od najważniejszego bitu słowa (MSB) i w przypadku kiedy napięcie wejściowe będzie mniejsze od napięcia odniesienia z przetwornika C/A to dany bit słowa danych jest kasowany (wartość "0") w przeciwnym wypadku jest pozostawiany (wartość "1") i realizowana jest kolejna iteracja algorytmu aż do osiągnięcia ostatniego bitu słowa danych (LSB). Tak ustawione słowo danych jest reprezentacją cyfrową napięcia wejściowego. Ze względu na iteracyjny charakter pracy przetwornika jego częstotliwość próbkowania jest znacząco mniejsza od uzyskiwanej w przetwornikach o przetwarzaniu bezpośrednim i w znacznym stopniu zależy od wielkości słowa danych - rozdzielczości przetwornika, szybkości pracy przetwornika C/A i w końcu komparatora i układu sterującego.

 

Przetwornik podwójnie całkujący

Przetwornik A/C podwójnie całkujący. Przetwornik podwójnie całkujący zamienia wartość średnią napięcia mierzonego na czas tX. W pierwszym cyklu całkowania do integratora doprowadzone jest napięcie mierzone UX. Całkowanie tego napięcia trwa zawsze tyle samo, czyli najczęściej 20ms. W drugiej fazie całkowania do wejścia integratora dołączone jest napięcie wzorcowe. Całkowanie tego napięcia zależy od napięcia mierzonego UX.

 

Z układu sterującego wysyłany jest impuls, który otwiera klucz W2 i zamyka klucz W1. Do wejścia integratora doprowadzone jest napięcie Ux. Na wyjściu integratora otrzymujemy napięcie liniowo narastające. Czas narastania tego napięcia wynosi 20ms (czas ten odmierzany jest poprzez licznik lub poprzez układ sterujący). Po upływie 20ms z układu sterującego wysyłany jest kolejny impuls, który otwiera W1 i zamyka W2. Do integratora doprowadzone jest teraz napięcie wzorcowe o biegunowości przeciwnej do napięcia Ux. Licznik cały czas zlicza impulsy z generatora zegarowego. Pojemność licznika jest tak dobrana, że maksymalną liczbę impulsów zlicza w ciągu 20ms. Kiedy napięcie wejściowe z integratora osiągnie wartość zero przerzutnik RS zmienia stan na przeciwny. Blokuje bramkę i kończy się zliczanie impulsów.

 

Przetworniki o architekturze potokowej

Przetworniki o architekturze potokowej nie są tak naprawdę oddzielnym typem przetworników A/C i w swoim działaniu wykorzystują wcześniej opisane rodzaje przetworników. W swoim działaniu opierają się na potokowym przetwarzaniu danych.

 

Parametry przetwornika A/C

Najważniejszymi właściwościami przetworników A/C są parametry określające ich dokładność i szybkość przetwarzania. Dokładność przetwarzania jest ograniczona przez błędy powstające w procesie przetwarzania, które można ogólnie podzielić na błędy cyfrowe i analogowe, co wynika z charakteru samego przetwornika, mającego cechy zarówno układu analogowego, jak i cyfrowego. Do parametrów określających błąd analogowy należą:

 

Nieliniowość całkowa (ang. integral nonlinearity) jest określana jako maksymalne względne odchylenie (∆UI)max rzeczywistej charakterystyki przetwarzania N = f(UI) od charakterystyki idealnej, będącej prostą łączącą skrajne punkty zakresu przetwarzania. Charakterystykę rzeczywistą wyznacza się jako linię łączącą środki przedziałów napięcia UI, odpowiadających kolejnym wartościom cyfrowym na wyjściu przetwornika.

 

Nieliniowość różniczkowa (ang. differential nonlinearity) określa się przez wyznaczenie różnic między sąsiednimi wartościami napięcia wejściowego, powodującymi zmianę słowa wyjściowego o wartość najmniej znaczącego bitu. Nieliniowość różniczkowa jest podawana w procentach jako maksymalne względne odchylenie tej różnicy od jej wartości średniej w całym zakresie przetwarzania. Jest szczególnie ważna w przetwornikach służących do zdejmowania histogramów - np. w technice jądrowej w analizatorach amplitudy impulsów, które służą do zdejmowania widm energetycznych promieniowania jądrowego. Błąd nieliniowości różniczkowej może w tym przypadku powodować zniekształcenia uzyskanego widma, utrudniające jego obróbkę i interpretację.

 

Błąd przesunięcia zera (błąd niezrównoważenia) jest określany przez wartość napięcia wejściowego potrzebną do przejścia od zerowej wartości słowa wyjściowego do następnej większej wartości. Błąd ten jest mierzony jako przesunięcie w stosunku do charakterystyki idealnej. Należy podkreślić, że wartość błędu przesunięcia zera jest rzadko podawana w katalogach, gdyż jest możliwa całkowita kompensacja tego błędu w większości nowoczesnych przetworników.

Współczynnik zmian cieplnych napięcia przesunięcia zera wyrażany w μV/°C lub w %/°C (w odniesieniu do pełnego zakresu przetwarzania).

 

Błąd skalowania (błąd wzmocnienia) wynika ze zmiany nachylenia charakterystyki przetwarzania N - f(UI) w stosunku do charakterystyki idealnej' i jest określony przez odchylenie rzeczywistej wartości napięcia UI, odpowiadającej maksymalnej wartości słowa wyjściowego, od wartości idealnej.

 

Szybkość przetwarzania przetwornika A/C może być określana przez:

 

- czas przetwarzania, czyli czas, w którym zachodzi pełny cykl przetwarzania;

- częstotliwość przetwarzania, będąca odwrotnością czasu przetwarzania,

- tzw. szybkość bitową, określoną przez liczbę bitów wyniku przetwarzania, uzyskanych w jednostce czasu (bitów/s).

 

Błędy analogowe przetwornika A/C są również wywołane przez wpływ zmian napięcia zasilania, wpływ długoczasowych zmian wartości elementów itd. Te wpływy są jednak w nowoczesnych przetwornikach pomijalnie małe.

 

Błąd cyfrowy przetwornika A/C jest uwarunkowany liczbą bitów słowa wyjściowego. Błąd cyfrowy, czyli zdolność rozdzielcza przetwornika, stanowi granicę jego dokładności wynikającą z samej istoty procesu dyskretyzacji (kwantowania) napięcia wejściowego przy przetwarzaniu go na wielkość cyfrową. W prawidłowo zaprojektowanym przetworniku długość słowa wyjściowego jest tak dobrana, że wartość błędu analogowego jest mniejsza od błędu cyfrowego. Zwiększanie długości słowa ponad granicę wynikającą z wielkości błędu analogowego nie ma sensu, gdyż nie poprawia już dokładności przetwarzania. Tak więc, przy prawidłowo wyznaczonych parametrach przetwornika, wartość katalogowej rozdzielczości powinna określać jego dokładność. Inne błędy nie powinny przekraczać wartości odpowiadającej najmniej znaczącemu bitowi (LSB).

 

 

 

 

 

 

System mMAC-1060 posiada 16 analogowych kanałów wejściowych , które mogą pracować parami jako wejścia różnicowe. Analogowe wyjścia są reprezentowane przez dwa kanały przetwarzania A/C. Oprócz tego możemy wyróżnić dwa porty 8-bitowe pracujące jako we/wy cyfrowe. System może realizować odczyty lub zapis wartości 8-bitowych z których każdy bit koresponduje z logicznym kanałem we/wy cyfrowego. Kolejnym blokiem składowym jest licznik wolnych impulsów, umożliwiający pomiar małych częstotliwości , oraz licznik szybkich impulsów, umożliwiający pomiar odpowiednio dużych częstotliwości. Istnieją także odpowiadające pow. licznikom generatory. uMAC1060 posiada zegar czasu rzeczywistego z bateryjnym podtrzymywaniem, port transmisji szeregowej, system autotestowania i zerowania oraz typowe dla systemów mikroprocesorowych bloki : układ bezpośredniego dostępu do pamięci i kontroler obsługi przerwań (w sumie 7 wejść). ‘Serce’ systemu to mikroprocesor Intel 80188. Pamięć RAM jest to moduł typu S-RAM o pojemności 128 KB i podtrzymywaniu bateryjnym. Umożliwia to wznowienie działania systemu w przypadkach awaryjnych. System operacyjny znajduje się w 64 KB pamięci EPROM i zawiera procedury inicjalizujące urządzenia systemu, obsługuje standardowe funkcje diagnostyczne systemu oraz zapewnia systemową obsługę układu przerwań i kontroli procesów. Wszystkie powyższe parametry można rozszerzyć korzystając z odpowiednich modułów.

 

System mMAC-1060 jest programowalnym urządzeniem do kontroli procesów przemysłowych i przeprowadzania różnorodnych pomiarów. Programowanie odbywa się poprzez procesory zewnętrzne na poziomie języków programowania wysokiego poziomu np. Aztec C. System jest w stanie współpracować z komputerami klasy IBM PC XT / AT / PS/2. Komputer jest podłączony do jednostki pomiarowej za pomocą portu szeregowego w standardzie RS-232C i RS-422/485. Jednostka posiada pamięć EPROM, do której załadowywane są z komputera programy sterujące, a także posiada wbudowaną pamięć RAM, której zawartość podtrzymywana jest bateryjnie.

Urządzenie posiada:

  • wejścia i wyjścia cyfrowe; system zawiera standardowo 2 porty 8-bitowe. Zwiększenie liczby portów wejść i wyjść cyfrowych jest możliwe poprzez wybór jednego pakietu specjalizowanego typu STB-50A, STB-50B, DB-24 lub 4 pakietów typu DMB-32. mMAC-1060 może realizować odczyty lub zapis wartości 8-bitowych z których każdy bit koresponduje z logicznym kanałem wejścia i wyjścia cyfrowego.
  • wyjścia analogowe; 2 wbudowane, 32 na dodatkowych modułach. Standardowe oprogramowanie mMAC-a akceptuje wprowadzanie liczb całkowitych (integer) lub zmiennoprzecinkowych (float).
  • 16 wbudowanych analogowych kanałów wejściowych, 8 kanałów pełniących specjalne funkcje (samokontrola systemu) oraz 64 kanały wejściowe na dodatkowych panelach rozszerzających. Urządzenie odczytuje wartości z wejść na jeden z dwóch sposobów. Może odczytywać wartości jako liczby całkowite oraz jako wartości wyrażone w jednostkach inżynierskich (V, °C).
  • generator wolnych impulsów;
  • generator szybkich impulsów;
  • interfejs komunikacji szeregowej;
  • licznik wolnych impulsów (do 16 kanałów wejściowych);
  • zegar czasu rzeczywistego z bateryjnym podtrzymaniem;
  • system auto-testowania; przeprowadzany dzięki układowi watchdog timer o okresie Tmax=0.5 sek. W przypadku awarii procesor mMAC’a potrafi zasygnalizować błąd i wstrzymać swoje działanie;
  • system zerowania; następuje poprzez odpowiedni sygnał zewnętrzny lub wewnętrzny (reset);
  • obsługę przerwań;
  • licznik szybkich impulsów (obsługuje dwa kanały związane bezpośrednio ze strukturą procesora 80Cl88);
  • zasilanie pojedynczym napięciem +5V o współczynniku tętnień nie większym niż 0.2V/ms i dopuszczalnych zmianach od 4.85V do 5.25V. Na płycie głównej mMAC-1060 zastosowano izolowane przetworniki napięć 15V dla zasilania analogowych urządzeń I/O oraz +5V izolowane dla komunikacji RS-422/485. Napięcie zasilania +5V jest monitorowane przez  system i przy spadku napięcia poniżej 4.6V generowany jest rozkaz RESET.

 

Standardowe oprogramowanie modułu kontrolera mMAC-1060 ...

Zgłoś jeśli naruszono regulamin