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
    • 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 2 wyniki

  1. Cześć! Nazywam się Mateusz (Mati) i jestem pasjonatem elektroniki oraz programowania. Tworzę różnorodne projekty, a w tym worklogu pokażę Wam, jak stworzyć mikrokomputer od podstaw. Projekt ten ma na celu edukację, ale także możliwość stworzenia zestawu, który będzie inspiracją dla innych twórców. Dla kogo jest ten projekt: Projekt skierowany jest do osób, które chcą nauczyć się, jak od podstaw zbudować swój własny mikrokomputer o funkcjonalnościach zbliżonych do popularnych platform, ale oparty o własne rozwiązania. Zawiera zarówno szczegóły techniczne, jak i wskazówki praktyczne. Idealny dla osób zainteresowanych elektroniką, programowaniem i tworzeniem własnych urządzeń. Cel projektu: Celem projektu jest stworzenie mikrokomputera, który będzie edukacyjnym narzędziem do nauki elektroniki i programowania. Będę dokumentować cały proces: od wyboru komponentów po montaż, projektowanie PCB, instalację systemu operacyjnego oraz tworzenie prostych aplikacji. Projekt jest otwarty – możecie śledzić postępy, zadawać pytania i dzielić się swoimi pomysłami! Spis treści: Etap 1: Wybór komponentów Wybór procesora Pamięć RAM i Flash Wyświetlanie, zasilanie, interfejsy itd. Etap 2: Projektowanie schematu Procesor Pamięć operacyjna Zasilanie Pamięć Flash Wyświetlanie(HDMI) Wi-Fi Pozostałe Poprawki i weryfikacja Etap 3: Projektowanie PCB Rozmieszczenie elementów Tworzenie połączeń oraz ścieżek Weryfikacja płytki i generowanie plików produkcyjnych Zamówienie prototypu płytki oraz elementów(możliwa opcja "PCB Assembly") Etap 4: Montaż i testowanie Montowanie komponentów na płytce Testowanie stabilności Etap 5: Oprogramowanie Inicjacja Uboot(lub inne) Konfiguracja Linuxa Instalacja systemu Implementacja podstawowych aplikacji (np. edytor tekstu, terminal) Etap 6: Finalizacja projektu Ostateczne testy i poprawki Podsumowanie Koszty, czas realizacji, plany rozwoju Oszacowanie czasu: Początkujący -> 1-2 miesiące Średnio zaawansowany -> 3-6 tygodni Zaawansowany -> 2-4 tygodnie Czas całkowity: 8–12 tygodni (3–4 miesiące) Oszacowanie kosztów: Procesor -> 15-50zł Pamięć RAM -> 15-30zł Pamięć Flash -> 20-50zł Pozostałe -> 50-100zł Koszt całkowity: 150–300 zł (zależnie od wybranych komponentów) Komponenty które najpewniej użyje w moim projekcie(każdy może dostosować dla siebie): Procesor: Allwinner H3(link) Pamięć RAM: 1GB(potem zostanie dobrany odpowiedni model) Pamięć Flash: NAND Flash 8GB(potem zostanie dobrany odpowiedni model) Reszta elementów: zostaną dobrane w późniejszym etapie Podsumowanie: Ten projekt ma na celu pokazanie procesu budowy mikrokomputera od podstaw. Będę dzielił się swoimi postępami, problemami i rozwiązaniami. Jeśli chcesz się dowiedzieć, jak stworzyć coś takiego, śledź ten temat! Na bieżąco będę informować o nowościach, dodając kolejne etapy realizacji projektu.
  2. 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...