logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

ADC +probkowanie 200Mhz +mikrokontroler

dr_mariano 11 Sty 2010 18:02 2829 18
  • #1 7520297
    dr_mariano
    Poziom 10  
    Witam,
    chcialbym zbudowac uklad mikroprocesorowy z przetwornikiem ADC, ktory probkowalby sygnal o czestotliwosci 100Mhz (po przejsciu przez uklad kondycjonujacy dopasowany do +-1V). Uklad mialby wykonywac okolo 2000 punktow pomiarowych z czestotliwoscia max ok. 2KHz na wyznaczonym przedziale czasu tj. ok 10ms (niejednostajene probkowanie, tylko w wybranych chwilach, reszta informacji w tym sygnale mnie nie interesuje). Nastepnie informacje taka chcialbym przechowywac w pamieci mikrokontrolera(2 tys punktow pomiarowych) a dalej wysylac do komputera. Myslalem o zastosowaniu wbudowanego systemu operacyjnego aby ulatwic prace od strony programistycznej typu NutOS lub inny w zaleznosci od wybranego mikrokontrolera.Czy macie doswiadczenie w budowaniu tego typu systemu, jakie uklady mozna zastosowac? Moze jakis inny pomysl?

    Dodano po 1 [minuty]:

    aha, cena nie gra roli
  • #2 7524841
    Einherjer
    Poziom 12  
    2 tys. próbek po 2 bajty (16 bitów roz.) to 4k niespełna, nie wiem ile potzebuje nutOS, ale pewnie da się to zrobić na ATMega128 i konwerterze RS-USB, albo programowo na avrUSB. Nie widzę jednak koniecznej potrzeby używania RTOSu, to dość prosty projekt. Zastanawia mnie tylko jedno, chcesz samplować 200MHz sygnał z częstotliowością 2kHz, przecież wydzie z tego tylko "kaszana".
  • #3 7525049
    dr_mariano
    Poziom 10  
    nie nie... czestotliwosc sygnalu, ktory bedzie nadawany to max 100MHz (dlatego probkowanie 200MHz) sygnal bedzie w postaci "piku" ktory bedzie sie pojawial z max czestotliwoscia 2 kHz a ja chce zapisywac do pamieci tylko wybrany fragment z osi czasu (nie caly sygnal)takich punktow pomiarowych pojawiajacych sie wlasnie z czestotliwoscia 2kHz bedzie w moim projekcie ok 2 tys.
  • #4 7525074
    dr_mariano
    Poziom 10  
    Powinno byc teraz bardziej zrozumiale, czy ktos ma doswiadczenie z takim sygnalem?
  • #5 7525207
    Tantalos
    Poziom 18  
    Żaden ARM ani AVR nie obsłuży takiej szybkości odczytu danych z ADC i zapisu do pamięci. W grę wchodzi raczej FPGA.
  • #6 7525694
    dr_mariano
    Poziom 10  
    Z FPGA nie mam zadngo dosiwadczenia, jakies inne pomysly na realizacje tego pomiaru?
  • #7 7525943
    __Grzegorz__
    Poziom 30  
    czy te piki to jakaś nośna, czy totalnie przypadkowy przebieg?
  • #8 7526522
    dr_mariano
    Poziom 10  
    Sygnal przenosi informacje - jest to echo z systemu ultradzwiekowego, istotna jest roznica czasowa pomiedzy nadaniem sygnalu do osrodka a jego odebraniem oraz amplituda odbierango sygnalu. Sygnal nadawany bedzie z ukladu analogowego (impulsowo, na kazde miejsce pomiarowe jeden impuls-miejsc pomiarowych 2 tys.) kolejnie ma byc odebrany i przetworzony na sygnal cyfrowy i dalej analizowany w komputerze (nie moja dzialka)
  • #9 7526777
    __Grzegorz__
    Poziom 30  
    jeżeli to ultradźwięki to raczej nie będzie tam 100MHz.

    poza tym, wystarczy prosty detektor szczytowy + pomiar czasu timerkiem...
  • #10 7526958
    dr_mariano
    Poziom 10  
    Sa ultradzwieki i jest 100MHz, sprostowanie- niezbedne jest odwzorowanie tego sygnalu w komputerze (przeniesienie do postaci cyfrowej do dalszej analizy).
  • #11 7564806
    dr_mariano
    Poziom 10  
    Wracajac do mojego pytania... zaznacze, ze nie mam zadnego doswiadczenia jesli chodzi o uklady FPGA i prosze o wyrozumialosc.
    Z tego co doczytalem VHDL nie jest latwy... nie jestem tez elektronikiem zeby tyle czasu na to poswiecac, ale znalazlem cos takiego jak Labview dla FPGA , z filmikow i podstawowych opisow wynika, ze nauka tego programowania moze okazac sie szybsza i latwiejasza. Niestety koszt plytek od NI troszke wykracza poza mozliwasci mojego finansowania wiec znalazlem pewna alternatywe
    https://www.elektroda.pl/rtvforum/topic1207394.html

    Ze wstepnego opisu wynika, ze nawet ten uklad nie poradzi sobie z probkowaniem takiej czestotliwosci...(??) wiec wpadlem na kolejny pomysl, czy bylo by mozliwe zbudowanie bufora FIFO na ukladzie FPGA takiego, ktory umozliwil by nastepnie probkowanie szybkim mikrokontrolerem?

    Probkowanie to jest mozliwe przetwornikiem o nizszej czestotliowsci (w obecnym ukladzie byl to przetwornik ADS824) stasujac technike supersamplingu (wielokrotnego probkowania tego samego sygnalu) ale nie ukrywam, ze chodzi o modernizacje i przyspieszenie pracy calego urzadzenia.
  • #12 7565714
    Dr.Vee
    VIP Zasłużony dla elektroda
    W FPGA nie powinno być problemów, a jak się FIFO nie zmieści w środku, to podłączysz szybką zewnętrzną pamięć, której zawartość odczyta MCU po zakończeniu próbkowania przez FPGA. Zalety - możesz sobie dodać filtrowanie, detekcję amplitudy itp w czasie rzeczywistym.

    Poszukaj projektów oscyloskopów cyfrowych na FPGA, większość opublikowanych rozwiązań tak właśnie działa.

    Pozdrawiam,
    Dr.Vee
  • #13 7569874
    dr_mariano
    Poziom 10  
    Dziekuje za odpowiedz. Generalnie moim celem nie jest zbudowanie samodzielnie takiego ukladu (w razie koniecznosci bede musial doksztalcic sie na tyle zeby chociaz sprobowac) najlepiej bylo by kupic gotowy (mam max 3 tys zl), czy ktos na rynku widzial taka kombinacje: prztwornik ADC 200MSPS +FPGA(jako bufor) +mikrokontroler?? staram sie cos znalesc ale ciezko...
  • #14 7569956
    coberr
    Poziom 20  
    hmmm - tak sobie myslę i chyba mozna byłoby to zrobic w ten sposób:

    układ dopasowania poziomu - musiałby pracowac z pełna szybkoscią.
    za nim układ dopasowania ew. rozdzielenia na przykładowo 4 przetworniki.
    przetworniki pracowałyby sobie z f=50MHz - jednak sygnał zegara dla kazdego mogłby pochodzić z układu liczika+ dekodera 1z 4. (podział 200MHz/4)
    (czyli przesunięty byłby w fazie o 90st. w stos. do pozostałych)
    . mniejsze wymagania co do przetworników i całego układu przetwarzania.
    ale to tylko pomysł - nie wiem moze gdzies stosuje się takie rozwiazania - niestety komplikacja układu wzrasta.

    jesli sie mylę - niech mnie ktos poprawi
  • #15 7570266
    dr_mariano
    Poziom 10  
    Tez zastanawialem sie nad takim rozwiazaniem, w poprzednim modelu tego urzadzenia byla stosowana metoda supersamplingu. Charakterystyka tego sygnalu na to pozwala, moge probkowac jeden punkt pomiarowy kilka razy(jednak najlepiej raz ze wzgledu na ich ilosc i czas calosciowego pomiaru). W poprzednim modelu prztwornik pracowal na czestotliowsi ~70MHz i byl uruchamiany z odpowiednim opoznieniem po jednorazowym probkowaniu tak aby zebrac wystarczajaca ilosc probek(to bylo kilka lat temu). Nowy model urzadzenia ma pracowac szybciej dlatego pomysl z FPGA, poniewaz nie mam praktyki zadnej z tymi ukladami wymyslilem, ze sprawe moglo by ulatwic LAbview i Spartan-3E Starter Kit z czym moglbym sie sprobowac zmierzyc(niestety jeszcze nie mialem kiedy przeanalizowac czy ten uklad podola tym wymaganiom [??]).
    Najlepiej bylo by jednak znalesc gotowy uklad z przetwornikiem, duzym buforem i mikrokontrolerem ktory kosztowalby do 3 tys zl...
  • #16 7570673
    __Grzegorz__
    Poziom 30  
    Jaka jest minimalna częstotliwość ultradźwięków?
  • #17 7570780
    dr_mariano
    Poziom 10  
    Pytanie zwiazane z tematem? ..pow. 20kHz
  • #18 7571085
    __Grzegorz__
    Poziom 30  
    Pewnie, że związane.
    Gdyby była wyższa (a sygnał wąskopasmowy),
    można by było spróbować wykorzystać próbkowanie pasmowe...
    Wówczas nie potrzebowałbyś częstotliwości próbkowania rzędu 200MHz...
  • #19 7621927
    Tantalos
    Poziom 18  
    Gdyby wystarczyła częstotliwość próbkowania 100MHz, to mam taką płytkę z ADC+FPGA+uC.
REKLAMA