Skocz do zawartości

PRZETWORNK ADC 0-10V NA TTL 0-5V ARDUINO


qulet

Pomocna odpowiedź

Proszę o poradę!

Jak można wykonać taki przetwornik . Wykorzystując ARDUINO ( problem to ograniczenie napięcia analogowego do 5V)

Ma on w praktyce zamienić sygnał analogowy 0-10V (sygnał sterujący falownikiem) na sygnał cyfrowy TTL 0-5V w całym zakresie i zachowywać się w miarę liniowo.

Pozdrawiam i liczę na pomoc w rozwiązaniu tego problemu.

Link do komentarza
Share on other sites

No w zasadzie to wystarczy zwykły dzielnik rezystorowy z dwoma takimi samymi rezystorami (np. 100k). Zakładam, że obciążenie wyjścia sygnału analogowego rezystancją 200k nie wpłynie na sygnał - musiałbyś napisać, skąd ten sygnał 0-10V masz.

Link do komentarza
Share on other sites

Gość es2
No w zasadzie to wystarczy zwykły dzielnik rezystorowy z dwoma takimi samymi rezystorami (np. 100k).

100k to za dużo. Max rezystancja wyjściowa źródła sterującego wejściem analogowym to dla AVR, jak pamiętam, 20k. Dzielnik, musi więc byc widziany jak rezystor 20k a nie 50, jak jest w przypadku 2x100k).

Link do komentarza
Share on other sites

"jak pamiętam, 20k"

Tak tylko pytam: a skąd to pamiętasz? Gdzieś w internecie przeczytałeś czy coś kiedyś liczyłeś i tylko wynik w głowie został? A jeśli tak, to na jakiej podstaiwe? I skąd takie ograniczenie, przy jakich założeniach? Mam jakiś swój pogląd na ten propblem jednak nie jest tak kategoryczny i tajemniczy jak powyższe zdanie więc ciekaw jestem Twoich uzasadnień, chętnie posłucham. Spróbuj sobie przypomnieć, bo warto takie stwierdzenia popierać merytorycznie. Nie zapominaj, że to jednak Forum techniczne.

A wsprawie głównej: co to znaczy, że zamieniamy sygnał analogowy na cyfrowy "w pełnym zakresie"? Do czego chcesz ten sygnał dalej podłaczyć? Bo jak zrozumialem, analogowe 0-10V chcesz mierzyć w Arduino, tak? To jest proste. ale gdzie tu miejsce na sygnał cyfrowy? Będzie on wychodził z tego Arduino gdzieś dalej czy jego źródłem ma być bezpośrednio sygnał wejściowy? Jeśłi nie wiesz, opisz może po prostu co chcesz zrobić całościowo, bo skupianie się na nieistotnych szczegółach to częsta przypadłość osób początkujących. Gadamy wtedy o jakimś fragmencie a okazuje się, że cała idea jest do kosza.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Gość es2
"jak pamiętam, 20k"

Tak tylko pytam: a skąd to pamiętasz?

Zamiast sie wymądrzać proszę zapoznać się z DS AVRa:

Jakkolwiek pomyliłem się i jest to 10k, to teraz proszę swoją tezę udowodnić:

Mam jakiś swój pogląd na ten propblem jednak nie jest tak kategoryczny

Kolega proponuje 5 razy większą wartość niż zaleca producent! Nie przeczę, ze to zadziała. Tak samo nie przeczę, ze AVR zasilany z 9V bedzie działać, czy taktowany 50MHz.

PS

Ja nie mam poglądów, tak napisano w DS.

Link do komentarza
Share on other sites

Gość es2
"Is optimized for" != "maximum output resistance"

(to tylko mój pogląd i można się z nim nie zgodzić).

Zalecane napięcie zasilające 1.8...5,5V. Maksymalne -0,5...6V.

Link do komentarza
Share on other sites

Jeszcze raz podkreślę, że nie jestem ekspertem dlatego takie rozważania bardzo mnie ciekawią. Czy ta impedancja źródła nie dotyczy sytuacji samplowania z maksymalną częstotliwością dla danego mikrokontrolera? Co jeśli samplujemy wolniej lub dużo wolniej, albo wyzwalamy samplowanie co jakiś czas.

Link do komentarza
Share on other sites

Gość es2
Jeszcze raz podkreślę, że nie jestem ekspertem dlatego takie rozważania bardzo mnie ciekawią. Czy ta impedancja źródła nie dotyczy sytuacji samplowania z maksymalną częstotliwością dla danego mikrokontrolera? Co jeśli samplujemy wolniej lub dużo wolniej, albo wyzwalamy samplowanie co jakiś czas.

Problem impedancji będzie odczuwalny przy samplowaniu szybko zmieniających się przebiegów. Kondensator w układzie S&H musi się naładować. Duża impedancja, duża stała czasowa. Na wejściu powstaje filtr RC. Stałą czasową można (łatwo?) wyliczyć. C=14pF, r=impedancja źródła + ???. W nocie piszą, że dla wolno zmiennych przebiegów także impedancja powinna być mała. Dlaczego? Nie wiem, ale mamy eksperów (np marek1707, ethanak czy Elvis), którzy z pewnością udzielą odpowiedzi na to pytanie - ja jestem "za cienki" na to.

Link do komentarza
Share on other sites

Ha, nareszcie dyskusje zaczynają być coraz ciekawsze 🙂 Bo ile można pisać o podłączaniu diodki LED do procesora..

Nie rozumiem dlaczego posiadanie poglądów nazywasz mądrzeniem się. W odpowiedzi mógłbym posądzić ludzi sztywno trzymających się niezrozumiałych dla nich reguł głupcami lub co najmniej konformistami, ale tego nie zrobię. W swym optymiźmie podejrzewam, że jednak dlaczegoś to robisz (a nie tylko "bo tak napisali") i że pewnie jakoś tam na swój sposób to sobie tłumaczysz. Tego właśnie byłem ciekaw i tego mi zabrakło, trudno.

A moje rozumienie jest takie bliskie temu co napisał grg0:

To jest przetwornik SAR posiadający z konieczności na wejściu układ SAMPLE/HOLD. Od strony wejścia widzimy go więc jak mały kondensator ładowany przez sporą rezystancję klucza MOS. Czy taka konfiguracja coś wymusza? Tak, żeby kondensator naładował się w czasie próbkowania, rezystancja źródła nie powinna być zbyt duża. No to mamy już jedne stopień swobody: czas trwania fazy SAMPLE, w oczywisty sposób zależny od taktowania procesora. Im wolniej tym czasu mamy więcej więc źródło może być coraz "słabsze" a i tak dociągnie kondensator do pożądanego napięcia, nawet jeśli na początku trochę ono przysiadło. Zauważ, że nie musi to być idealna równość, tutejszy ADC jest tylko 10-bitowy więc błąd może wynieść nawet 0.1% i wciąż mieścimy się w wielkości najmniej znaczącego bitu (LSB).

Czy to wszystko? Nie, to jest uproszczenie. Przecież wystarczy, by na wejściu ADC dać choćby mały kondensator a sytuacja zmienia się radykalnie. Już nie ładujemy wewnętrznego układu SAMPLE/HOLD ze źródła o rezystancji R, ale z impedancji dodatkowego kondensatora która dla szybkich przebiegów jest bardzo mała. Jeśli masz do naładowania 14pF to dospawanie na pinie nawet 10nF do masy powoduje, że skok napięcia spowodowany "przelaniem" ładunku z 10nF do 14pF wyniesie tylko 0.15%. W tym momencie rzeczywista rezystancja źródła zupełnie traci na znaczeniu - możesz te 10nF ładować przez 200kΩ i też będzie dobrze. Istotne jest jednak, by w tym przypadku robić pomiary rzadko, bo każdy start przetwornika to przepływ prądu do wejścia. Może policzmy zamiast się domyślać:

Zakładamy, ze poprzednie konwersje ADC rozładowują nasz kondensator 14pF zupełnie do zera a chcemy mierzyć napięcie powiedzmy 5V. Ponieważ z drugiej strony 14pF wisi na Vcc/2 to ma tam 2.5V a różnica napięć wynosi zatem 2.5V. Za każdym razem w czasie fazy SAMPLE musimy wepchnąć do niego jednorazowy ładunek:

Qs = C * ΔV czyli 35pC

Jeżeli będziemy samplować z częstotliwością np. 20kHz to musimy zapewnić dopływ do naszego układu całkowity ładunek:

Qt = Qs * f czyli 700nC

Uśredniając to za sekundę mamy więc prąd:

I = Qs / t czyli 700nA.

Taki prąd "stały" będzie wciągał nasz ADC podczas pracy. Nawet jeśli damy na wejściu 10nF to i tak prąd będzie płynął z zewnątrz, przez rezystancję rzeczywistą źródła. Przy R=200k mamy zatem stratę napięcia:

U = I * R czyli 0.14V

Dużo, nieakceptowalnie dużo, ale zależało mi by pokazać, że to zależy od nas a nie jest wartością stałą bo gdzieś tak napisali. Przecież wystarczy rozpatrzyć przypadek samplowania 10Hz i błąd zamienia się na 70uV. Wciąż przy rezystancji źródła = 200k.

Czy to jakoś do Ciebie trafia?

Acha, zapomniałem: czy to wszystko? Nie to także jest uproszczenie. Nie uwzględniliśmy jeszcze rezystancji upływu samych wejść analogowych. ATMEL gwarantuje tam ok. 100MΩ więc trzeba o tym pamiętać przy ekstremalnie dużych rezystancjach źródeł. Błąd z tym związany zbliża się do LSB przetwornika 10-bitowego dopiero przy rezystancjach rzędu 100k i oczywiście w powyższym przykładzie (tam gdzie było 200k) powinienem go uwzględnić. Mam jednak świadomość, że czytają to nie tylko elektronicy więc postanowiłem dodatkowo nie gmatwać. A ci co rozumieją, zrozumieją działanie tego dodatkowego dzielnika w lot.

Tak więc to wszystko powyższe miałem na myśli pisząc, że mój pogląd "jednak nie jest tak kategoryczny". Po prostu uważam, że nie ma prostej odpowiedzi - ja wolałbym raczej "to zależy". Czy nadal uważasz, że się mądrzę? Jeśli choć trochę Cię przekonałem że jednak nie, to może wypadałoby przeprosić? A jeśli wciąż uważasz, że masz rację i przytyk był słuszny - sypnij liczbami, chętnie posłucham.

EDIT:

"Problem impedancji będzie odczuwalny przy samplowaniu szybko zmieniających się przebiegów"

To oczywista bzdura, widzisz to, prawda? Na pewno myślałeś o prędkości próbkowania (o czym napisałem) a nie częstotliwości przebiegów i tylko się przejęzyczyłeś - powiedz że tak.

Link do komentarza
Share on other sites

Proszę o poradę!

Jak można wykonać taki przetwornik . Wykorzystując ARDUINO ( problem to ograniczenie napięcia analogowego do 5V)

Ma on w praktyce zamienić sygnał analogowy 0-10V (sygnał sterujący falownikiem) na sygnał cyfrowy TTL 0-5V w całym zakresie i zachowywać się w miarę liniowo.

Pozdrawiam i liczę na pomoc w rozwiązaniu tego problemu.

Cześć,

wersja dla leniwych - możesz kupić gotowy dzielnik (2 zakresy pomiarowe) za około 30 PLN:

https://botland.com.pl/seria-grove-dla-arduino/4428-grove-dzielnik-napiecia-5v-43v.html

Oczywiście można taki dzielnik wykonać samemu (trzeba wtedy uwzględnić impedancję układu pomiarowego).

Pozdrawiam

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.