Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'budowa'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino i ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - DIY
    • Projekty - DIY roboty
    • Projekty - DIY (mini)
    • Projekty - DIY (początkujący)
    • Projekty - DIY w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Zawody/Konkursy/Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie

Kategorie

  • Quizy o elektronice
  • Quizy do kursu elektroniki I
  • Quizy do kursu elektroniki II
  • Quizy do kursów Arduino
  • Quizy do kursu STM32L4
  • Quizy do pozostałych kursów

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Imię


Strona

Znaleziono 1 wynik

  1. Przetworniki analogowo-cyfrowe i cyfrowo-analogowe. Budujemy własny przetwornik DAC. Na początku naszą przygodę z przetwornikami, powinniśmy zacząć od układu przetwornika cyfrowo-analogowego, gdyż kolejne układy przetwornikowe (ADC) korzystają z tego najprostszego rodzaju konwertera. Ten wpis brał udział konkursie na najlepszy artykuł o elektronice lub programowaniu. Sprawdź wyniki oraz listę wszystkich prac » Partnerem tej edycji konkursu (marzec 2020) był popularny producent obwodów drukowanych, firma PCBWay. Spis treści serii artykułów: Wstęp Budujemy przetwornik cyfrowo-analogowy (ten artykuł) Budujemy przetwornik analogowo-cyfrowy, metoda sukcesywnej aproksymacji 1. Wstęp Przetwornik cyfrowo-analogowy (zwany również DAC – od angielskiego: Digital Analog Conwerter) jest układem zamieniającym wartość liczbową (wartość liczbową) na określoną wartość napięcia (wartość analogową), proporcjonalną do liczby. W tym wpisie zajmiemy się przetwornikami równoległymi DAC, gdyż te są najczęściej stosowane i najprostsze w budowie. Wykonuje on odwrotną konwersję w stosunku do przetwornika analogowo-cyfrowego. 2. Jak właściwie działa konwersja z wartości cyfrowej na analogową. Przetwornik ten konwertuje liczbę n bitową w odpowiadające jej napięcie elektryczne. Napięcie wyjściowe przetwornika proporcjonalne jest do napięcia odniesienia i liczby zapisanej w systemie dwójkowym (dokładniej poszczególnych bitów tej liczby). Wzór na obliczenie napięcia wyjściowego: Gdzie: Uwy – napięcie wyjściowe, Uref – napięcie referencyjne (dla Arduino ok. 5V, w zależności od napięcia zasilania) n – ilość bitów wartości cyfrowej a0 do an – wartość bitowa 0 lub 1, odpowiadająca kolejnym bitom sygnału cyfrowego (liczby), a0 najbardziej znaczący bit (MSB), an – najmniej znaczący bit (LSB) Może wydawać się to skomplikowane, jednak takie nie jest. Pierwszy bit oznacza 1/2 napięcia referencyjnego, 2 oznacza 1/4 (połowę poprzedniego) Uref itd. 3. Budowa teoretyczna przetwornika cyfrowo-analogowego. Sercem przetwornika jest drabinka rezystorów, będących ze sobą w stosunku 1R do 2R (np. 1k do 2k itp.). Na wejście przetwornika podajemy liczbę w postaci binarnej, o n bitach (im większa ilość n, tym większa rozdzielczość przetwornika). Układ posiada 1 wyjście analogowe. Schemat najczęściej stosowanego przetwornika o rozdzielczości 8 bitów, przedstawia się następująco: Przykład budowy drabinki rezystorów 8 bitowego przetwornika DAC (wartość pod lub po prawej stronie to wartość rezystancji). Poziome rezystory o wartości R, pionowe o wartości 2R. Spróbujmy obliczyć wartość napięcia dla wartości 193 8-bitowej (o 256 wartościach). Liczba ta zapisana binarnie B11000001. Możemy podstawić do powyższego wzory, jednak jeżeli posiadamy wartość w systemie dziesiętnym (193) to możemy obliczyć w prostszy sposób: Uwy = wartość/rozdzielczość * Uref, w naszym przypadku Uwy = 5V * 193/255, co daje nam napięcie około 3,78V. Przykład podstawienia do wzoru: Gdy bit jest 1 zostaje podłączony do napięcia zasilania, gdy 0 do masy (co jest bardzo ważne, niepodłączony da błędne wyniki na wyjściu). Rozpływ prądów pokazany poniżej: 4. Budujemy naszego DAC'a. Do budowy prototypu przetwornika cyfrowo-analogowego, użyję Arduino MEGA, skorzystamy z powyższego schematu. Rezystory o wartości 2R będą mieć 2,2k, natomiast R będą to 2 połączone rezystory o wartościach 10k i 1,2k (co daje około 1080 omów, jednak powinno być 1,1k). Magistralę danych (8 bitów) podłączamy do portu F arduino mega(wybieramy 1 port, 8 pinów ułożonych w kolejności, dla prostszego programu), a dla uno port C. Porty analogowe są ułożone w odpowiedniej kolejności, oczywiście my używamy ich jako cyfrowe. W naszym przypadku zbudujemy prosty przetwornik ośmiobitowy. Kod programu do ustawiania napięcia na wyjściu przetwornika i obliczanie oczekiwanego napięcia, wygląda nastepująco: // Zastępuj instrukcje pinMode(An, OUTPUT);, ustawia piny na porcie F jako wyjściowe DDRF = B11111111; // Ustawia wszystkie piny portu F na 0, odpowiada digitalWrite(An, 0); PORTF = B000000; // Komunikacja z komputerem Serial.begin(9600); Serial.print("Podaj wartosc: "); } uint8_t wartosc = 0; void loop() { // Czekamy aż zostanie przesłana wartość z komputera. while (Serial.available() > 0) { wartosc = Serial.parseInt(); // Zamieniamy ciag bajtów na wartość 8 bitową Serial.println(wartosc); Serial.print("Ustawiona wartosc napiecia wynosi "); float napiecie = (wartosc / 255.0) * Uref; // Wyliczamy oczekiwane napiecie Serial.print(napiecie, 3); // i wypisujemy je na port szeregowy. Serial.println("V"); Serial.print("Podaj wartosc: "); PORTF = wartosc; /* ustawiamy wartość na port F, przez co wszystkie piny zmienią stan w zależności od liczby 8-bitowej, port F to piny od A0 do A7 (A7 najbardziej znaczący bit)*/ } } 5. Sprawdzenie poprawności działania, pomiary. Wchodzimy w monitor portu szeregowego i podajemy wartość dziesiętną (od 0 do 255) lub można w postaci binarnej poprzedzając, ciąg 8 zer lub jedynek, duża literą B. Mikrokontroler zwraca oczekiwaną wartość napięcia, którą należy zmierzyć w układzie by porównać błąd przetwornika DAC. Pomiar napięcia rzeczywistego dla ustawionego napięcia 2,46V (wartość 128). 2 pomiar napięcia rzeczywistego dla ustawionego napięcia 0.98V (wartość 51). Przykład komunikatów do powyższych pomiarów, w polu do wysyłania przykład wpisanej liczby w systemie binarnym. 6. Dokładność przetwornika cyfrowo-analogowego. Rezystory użyte przy budowie przetwornika DAC mają swoją określoną tolerancję w moim przypadku 5%, przez co niektóre rezystory mają lekko różne wartości co powoduje nierównomierny rozpływ prądu i lekko odmienne napięcie na wyjściu od oczekiwanego. Jeżeli chcemy uzyskać jak najlepsze wyniki musimy używać rezystorów o jak najmniejszej tolerancji (najczęściej jest to 1%) i zapewnić stabilne źródło zasilania. Mierząc rzeczywistą rezystancję rezystora 2,2k, o tolerancji 5%, otrzymujemy 2,16k (Rezystancja zaniżona o 40 omów). 7. Poprawiamy przetwornik cyfrowo-analogowy Ustawiamy połowę napięcia referencyjnego (wartość 128, Uref = 4.91) i podłączamy do układu obciążenie w postaci opornika 10k i teoretycznie powinniśmy otrzymać około 2,45V (połowę napięcia referencyjnego), ale ... Wynik powinien wyjść około 2,45V, a jednak otrzymujemy 2,19V. Przetwornik daje na wyjściu oczekiwane wartości napięcia, jednak gdy podłączymy obciążenie do układu (np. rezystor o wartości 10k), zauważymy że napięcie bardzo mocno spadło, z powodu słabej wydajności prądowej układu, aby temu zaradzić trzeba wzmocnić napięcie przy wykorzystaniu wzmacniacza operacyjnego, który zwiększy wydajność prądową naszego własnego przetwornika cyfrowo-analogowego. Schemat takiego układu wygląda następująco: Schemat przetwornika DAC z wzmacniaczem operacyjnym, rezystor R17 ma rezystancję 2 razy mniejszą od R (R/2). 8. Zastosowania Układy pomiarowe (generator wzorcowy, konwersja wartości cyfrowych na napięcie) Układy audio (karty dźwiękowe, generowanie dźwięku wyjściowego dla słuchawek lub głośników) Sprzęt wideo (analogowa transmisja sygnału video np. VGA) 9. Podsumowanie Budowa przetwornika analogowo-cyfrowego jest bardzo prosta, jednak uzyskanie dokładnych wyników jest bardzo ciężkie. Przetwornik DAC jest podstawą działania przyrządów pomiarowych i przetworników ADC, które dokonują odwrotnej konwersji w stosunku do przetwornika cyfrowo-analogowego. W dalszych częściach artykułu poznasz budowę i działanie przetworników analogowo-cyfrowych w których będziemy wykorzystywać przed chwilą poznany przetwornik. W załączniku kod programu wraz ze schematami. DAC_pliki.rar Spis treści serii artykułów: Wstęp Budujemy przetwornik cyfrowo-analogowy (ten artykuł) Budujemy przetwornik analogowo-cyfrowy, metoda sukcesywnej aproksymacji
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.