Pytanie:
Chcielibyśmy zbudować konwerter poziomu sygnału w celu zmniejszenia napięcia wejściowego 20 V do 3,3 V. Czy jestem na dobrej drodze?
nageeb
2013-10-04 12:16:21 UTC
view on stackexchange narkive permalink

Pracuję nad małym projektem zwierzaka z moim RaspberryPi i szukam podłączenia go do niektórych czujników. Sygnał wyjściowy z czujników normalnie wynosi 0 V, ale po wyzwoleniu czujnika osiąga stan wysoki do 20 V. Porty gpio RaspberryPi akceptują tylko maksymalne napięcie 3,3 V, więc badałem, jak najlepiej obniżyć napięcie wejściowe z 20 V do 3,3 V, aby nie smażyło portów gpio mojego Pi. Pi nie musi niczego odsyłać, jest ściśle jednokierunkowy do Pi, a linia przejdzie do 20 V tylko po wyzwoleniu czujnika.

W moich badaniach czytałem o obwodzie składający się z regulatora zmiennego LM317 i 2 rezystorów, które mogą dać mi 20v do 3,3v, którego potrzebuję. Martwię się jednak o rodzaj ciepła, które mogłoby być wydzielane przy tak dużej różnicy napięć.

Starałem się, aby był jak najbardziej klarowny, a także załączyłem wygodny, elegancki schemat tego, co mam na myśli.

schematic

zasymuluj ten obwód - schemat utworzony za pomocą CircuitLab

Aby dodać do rzeczy, prawdopodobnie dodam więcej połączeń 20 V do inne porty io na Pi, prawdopodobnie do 15, więc zastanawiam się również, jak mogłoby wyglądać połączone ciepło ...

Czy jestem na dobrej drodze i czy ciepło jest po prostu czymś, co ja będę musiał pracować z? Czy jest tam lepsze rozwiązanie?

Jaki rodzaj linii. Czy są to dane wyjściowe, czy wejścia, czy jedno i drugie?
Urządzenie wyprowadza 20 V do Pi. Tylko jedna droga.
Potrzebujesz konwersji poziomu logiki sygnału (20 V -> 3,3 V kilka mA), a nie konwersji mocy (setki mA lub amperów)
Tak. Przeformułowałem moje pytanie, aby było trochę jaśniejsze ...
Pięć odpowiedzi:
Andy aka
2013-10-04 13:11:50 UTC
view on stackexchange narkive permalink

Jeśli są to sygnały do ​​pi, użyj rezystora dzielnik potencjału. 1 kΩ na wejściu i 0 V pi oraz rezystor 9 k od wejścia pi do sygnału logicznego wysokiego napięcia zmniejszają to napięcie o dziesięć do jednego. Powinieneś szukać zmniejszenia nieco mniej niż 10: 1. Czy możesz sam to rozwiązać? Zobacz link.

enter image description here

Czy to nie wiązałoby Vouta bezpośrednio z Vin?
@nageeb. Vout byłby oddzielony od Vin przez rezystor 9k. 1k łączy wejście pi z masą, działając w ten sposób jako tłumik dziesięć do jednego.
@nageeb Dodałem twój schemat z zamontowanymi rezystorami. Pamiętaj, że musisz obliczyć inną wartość dla 9k, aby uzyskać 3 V zamiast 2 V, ale zakładam, że jesteś w stanie to przemyśleć. Daj mi znać, jeśli potrzebujesz tutaj pomocy.
Więc szukam rezystora 5K ... Wydaje się dość proste. Spróbuję. dzięki!
Brzmi dobrze, ale po bezpiecznej stronie wybierz 5k6. Nadal będzie dobrze.
Czy to również dobry wybór, jeśli sygnał jest przebiegiem o częstotliwości powiedzmy 10-30kHZ?Czy rozwiązanie wprowadzi jakiekolwiek szumy na sygnał.Rezystory nie są tak naprawdę precyzyjnymi elementami.
Rezystory @MitjaGustin wprowadzają szum termiczny, a biorąc pod uwagę szerokość pasma 100 kHz, szum ten wyniesie około 4 UV RMS.Wystarczająco mały?Ty decydujesz.Rezystory są bardzo dokładne (lub mogą być włączone) i w razie potrzeby można zastosować rezystory 0,1%.
Oscyloskop pokazuje linię prostą dla sygnału prostokątnego bez dzielnika napięcia oraz linię zakłóconą (bardzo małe tętnienia) dla sygnału wychodzącego z dzielnika napięcia.Wygląda jak szum o wysokiej częstotliwości.Używam timera 555.
@MitjaGustin na to pytanie odpowiedziano i zaakceptowano w 2013 r. Jeśli masz podobne, ale nie identyczne pytanie, zadaj je formalnie jako nowe pytanie, zawierające schemat obwodu, z którego korzystałeś, i podaj łącze do tego pytania.
John U
2013-10-04 17:30:41 UTC
view on stackexchange narkive permalink

Dwa opublikowane do tej pory rozwiązania pomijają jeden czynnik - izolację. Może to mieć znaczenie lub nie, ale użyłbym optoizolatora (np. 4n25) tylko dla spokoju ducha (a są tanie jak barszcz).

Strona LED może być napędzana z 20v sygnał z odpowiednim rezystorem.

Po stronie czujnika wystarczy podciągnąć lub obniżyć (w zależności od tego, jak go podłączysz) do pinu Pi. W rzeczywistości możesz uciec bez rezystora podciągającego, jeśli procesor Pi ma wewnętrzne podciągnięcia, ale podejrzewam, że byłyby bardzo słabe i nie warto polegać na tych rzeczach.

W ten sposób, jeśli sygnał wejściowy przypadkowo zmieni się na 25 V lub 50 V, lub 500 V lub -5 V, Twoje Pi nie działa „huk”.

Aby dodać przykładowy obwód, zamień 5 V na 3v3 Dostawa. D1 jest opcjonalny, ale dobrze jest go zostawić w celu ochrony przed odwrotnymi napięciami:

enter image description here

Widzę tutaj zastosowanie OptoIsolatora, ale nie jestem pewien, czy ma to zastosowanie w moim przypadku. Jak / gdzie ma wpływ 3,3 V (5 V na tym schemacie)? Myślę, że mogłem nie wyrazić się wystarczająco jasno w swoim pytaniu i przeredagowałem je i zamieściłem schemat.
OK, to działa tak: Twoje 20v idzie do końca „12v” i powoduje, że dioda LED zapala się wewnątrz opto. To sprawia, że ​​tranzystor w opto przewodzi prąd, który ściąga pin IO do masy. R2 upewnia się, że powróci do 3v3, gdy dioda LED się wyłączy. R1 ogranicza prąd płynący przez diodę LED. D1 oznacza, że ​​jeśli jakiś głupek połączy rzeczy w niewłaściwy sposób, nic złego się nie dzieje. Fakt, że łącze jest aktywowane przez światło i nie ma bezpośredniego połączenia elektrycznego, oznacza, że ​​jeśli coś pójdzie źle od końca 20 V, 4n25 może umrzeć, ale twoje Pi będzie żyło.
Podoba mi się idea izolacji, to bardzo pocieszające. Rozumiem więc, że ten obwód skutecznie odwróci I / O na Pi, więc kiedy wejście idzie w górę, na Pi, to jest niskie. Muszę też dostarczyć dodatkowe 5 V, aby ten obwód się pojawił, prawda?
@nageeb 5v jest tylko dlatego, że John ponownie użył tego schematu z innego postu. Zamiast tego użyj po prostu 3,3 V. I tak, poziomy wejściowe są odwrócone. W przeciwnym razie możesz podłączyć kolektor transoptora bezpośrednio do 3,3 V, a emiter do masy przez rezystor. Następnie podłącz wejście do emitera, na przykład http://i.stack.imgur.com/KTH7Z.png byłoby to wejście nieodwracające.
Podoba mi się to rozwiązanie, ale wydaje mi się, że jest to trochę przesada jak na moje obecne wymagania. Jeśli ten projekt trafi do produkcji, być może będę musiał podnieść grę do czegoś takiego. Dzięki za radę!
Passerby
2013-10-05 03:22:58 UTC
view on stackexchange narkive permalink

O ile transoptor może być najlepszym wyborem, jeśli potrzebujesz izolacji, dostępne są inne opcje.

Prosta dioda Zenera 3,3 V i rezystor ograniczający prąd to kolejny. W przeciwieństwie do dzielnika napięcia, którego moc wyjściowa zależy od stosunku rezystorów do napięcia wejściowego (przy 20 V dzielnik 10: 1 to 2 V, ale jeśli 20 V staje się 30 V, to 3 V. Może to być problem ze skokami napięcia), Zener dioda powinna zawsze ograniczać wyższe napięcie.

enter image description here

Wartość R1 powinna wynosić około 10k lub więcej. Powinno to ograniczyć prąd do 2 mA lub mniej.

to jest to, co strony internetowe rasp pi zalecają, o ile wiem. Wydaje się też, że ograniczenie prądu poniżej 0,5 mA też jest dobrym pomysłem i być może pomoże rezystor wyjściowy o wartości kilkuset omów. Wygląda na to, że z tego, co mogę powiedzieć, RP to delikatna mała rzecz, ale nie wydaje się, aby była to specyfikacja producenta.
Broadcom @Andyaka nie lubi publikować specyfikacji swoich SOC. Albo coś naprawdę.
bardzo dziwne - i myślałem o zdobyciu jednego.
@Andyaka naprawdę nie. Broadcom uważa tylko, że ich bezpośredni klienci, producenci OEM, powinni mieć dostęp do arkuszy danych i zgodnie z umową o zachowaniu poufności. Z tego samego powodu routery Broadcom są słabo obsługiwane, jeśli w ogóle są obsługiwane przez dd-wrt lub openwrt.
Matt Young
2013-10-05 03:00:00 UTC
view on stackexchange narkive permalink

Robię to dość regularnie w projektowanych przeze mnie produktach.

schematic

Symuluj ten obwód - Schemat utworzony przy użyciu CircuitLab

W swojej aplikacji będziesz chciał użyć diody Schottky'ego, aby zagwarantować obniżenie logiki. Jeśli chcesz być naprawdę bezpieczny, dodaj parę diod zaciskowych.

@ThePhoton Dlatego powiedziałem, że używanie Schottky może mieć niewielką przewagę. Zaproponowałem to, bo wiem, że to działa.
Jeśli zwarłeś diodę, najniższe napięcie widoczne na wejściu wyniesie 1,65 V, ponieważ dwa rezystory 10k zmniejszają o połowę szynę 3,3 V.
@Andyaka Byłoby tak, ponieważ źle narysowałem, naprawiłem.
johnfound
2013-10-04 13:06:13 UTC
view on stackexchange narkive permalink

Do konwersji poziomów sygnału z 20V na 3,3V nie potrzebujesz LM317. Najprostszy (i bardzo dobry) schemat takich rzeczy jest następujący:

schematic

Symuluj ten obwód - Schemat utworzony za pomocą CircuitLab

Ten schemat ma dodatkową zaletę, która chroni wejście 3,3 V przed wpływami zewnętrznymi, na przykład wysokimi ujemnymi lub dodatnimi szczytami napięcia, wyładowaniami statycznymi itp.

W zależności od mocy znamionowej R1, schemat może wytrzymać sygnały wejściowe do kilkuset woltów przez krótki czas i kilka tysięcy woltów wyładowania statyczne bez szkody dla logiki niskiego napięcia.

Działa to w następujący sposób:

  1. Jeśli napięcie wejściowe jest wyższe niż 3,3 V + 0,6 V = około 4 V, dioda D1 otworzy się i zmniejszy napięcie w punkcie 1 do około 4 V

  2. Jeśli napięcie wejściowe jest niższe niż -0,6V, dioda D2 otworzy się, a napięcie w punkcie 1 zostanie ustawione na około -0,6V. Jeśli sygnał nigdy nie spadnie poniżej zera, D2 jest zawsze zamknięty i można go bezpiecznie usunąć. (Ale wtedy nie będzie ochrony dla ujemnych sygnałów wejściowych)

  3. W ten sposób napięcie wejściowe z 0..20 V zostanie zmniejszone do -0,6 ... + 3,9 V, co jest bezpieczny dla wszystkich urządzeń 3.3V CMOS. Dopóki to napięcie jest nieco wyższe niż napięcie zasilania logiki CMOS, niewielki prąd będzie przepływał przez diody zabezpieczające wejścia układów scalonych CMOS - jest to określone przez różnicę między napięciem przewodzenia diod krzemowych (D1 i D2 ) oraz diody zabezpieczające Schottky'ego stosowane w technologii CMOS i rezystancji R2. Ten prąd będzie wynosił około kilku mA. Jeśli jest za duże, D1 i D2 można zamienić na diody Schottky'ego o niskim prądzie iw ten sposób sprawić, że prąd wejściowy będzie bliski zeru.

Więcej informacji na temat ochrony CMOS schematy w następującej notce aplikacyjnej Fairchild.

Dodatkowe informacje: Dopóki niektórzy uważają, że powyższy schemat może spowodować awarię Raspberry Pi GPIO IO, poczyniłem trochę wysiłku i znalazłem specyfikacje elektryczne GPIO. Zgodnie z tym dokumentem diody zabezpieczające wejście nie są diodami Schottky, ale silikonem. W ten sposób powyższy schemat będzie działał nawet przy mniejszym prądzie wejściowym niż oczekiwano.

Dodatkowo zwiększyłem wartość R2 do 10k, aby zwiększyć rzetelność schematu (w cenie maksymalnej prędkości ).

W każdym razie to moja ostatnia edycja tej odpowiedzi.

Chociaż jest to dobra informacja do obniżania źródła zasilania, OP w rzeczywistości wymaga konwersji poziomu sygnału. LDO z regulacją mocy lub zasilacz impulsowy nie byłby tutaj dobrym ani tanim rozwiązaniem.
@Passerby: Przepraszam, że słowo LM317 wprowadziło mnie w błąd. To jest teraz naprawione.
Sygnał wyjściowy będzie wynosić + 3,9 V, a nie 3,3 V.
@Andyaka - tak, oczywiście. Dlatego jest tam R2. (BTW, sprawdź dopuszczalne napięcia wejściowe dla logiki 3,3 V).
Może możesz podać link, który to opisuje?
Pamiętaj, że mówimy tutaj o RaPi, a nie o starym CMOS lub TTL - myślę, że może się okazać, że twój obwód może uszkodzić pi.
@johnfound Czy możesz wyjaśnić, dlaczego dwie diody są zamienione?
@1p2r3k4t - edytuję odpowiedź, próbując wyjaśnić, jak działa ten schemat. Przy okazji, jestem trochę zdezorientowany. Ten schemat jest klasyczny i bardzo szeroko stosowany. Myślę, że każdy może sobie wyobrazić, jak to działa.
@johnfound Dziękuję, myślałem, że próbujesz używać ich jako zenerów, i pomyliłem się. Teraz jest to bardzo jasne
Naprawdę myślę, że musisz zbadać, jak wrażliwy jest RaPi na przepięcia i prąd. Wszystko, co widziałem, wskazuje na ten obwód jako potencjalnie szkodliwy dla urządzenia.
@johnfound Atakowanie użytkowników jest niedopuszczalne, dyskusja techniczna nie obejmuje dzwonienia do kogoś, kto jest ignorantem.
@Kortuk - nie staram się być niegrzeczny ani nikogo „atakować”. Schemat wyjaśniłem szczegółowo i moja odpowiedź zawiera nie moje wynalazki, ale klasyczne rozwiązanie, opisane w każdej porządnej książce o elektronice. Jeśli więc ktoś uważa, że ​​to rozwiązanie nie działa, prawdopodobnie nie czytał tych książek. Jak więc mam nazwać taką osobę? Czy „analfabeta” jest lepszy?
Moim problemem i prawdopodobnie problemem @Andyaka jest to, że wiele nowych układów ma bardziej rygorystyczne bezwzględne maksymalne napięcia niż 0,6 V + vdd. Na przykład arkusz danych serii msp430 podaje maksymalne napięcie na dowolnym pinie jako VDD + 0,3 V. Niestety, specyfikacje elektryczne RPI nie są jawne, więc pozostaje nam zgadywać. Jak nazwałbyś kogoś, kto nie czyta arkusza danych? ;)
@W5VO - To ważne ** dlaczego ** istnieje taki limit? Ponieważ przy wyższych napięciach diody Schottky'ego wejściowego układu scalonego otwierają się i prąd wejściowy staje się zbyt wysoki. Dlatego na powyższym schemacie zastosowano R2. Ogranicza prąd wejściowy układu scalonego do dopuszczalnych zakresów. Ponadto, jak już napisałem w odpowiedzi, można zastosować schottky D1 i D2, które jeszcze bardziej ograniczą napięcie wejściowe.
@johnfound Chociaż to ogólne rozwiązanie jest wystarczająco powszechne dla klasycznej, ogólnej logiki 3,3 V CMOS, jest nieuzasadnione jako zalecenie dla urządzenia, dla którego absolutne wartości maksymalne nie są publikowane. O ile nie masz dostępu do jakiegoś zastrzeżonego arkusza danych dotyczących umowy o zachowaniu poufności dla określonego SoC BroadComm, ta odpowiedź opiera się na założeniu, które może potencjalnie zaszkodzić RPi: Takie założenia nie są podstawą do odpowiedzi inżynieryjnej. -1.
@AnindoGhosh - przeczytaj dodatkowe uwagi w odpowiedzi. Właśnie dodałem link do specyfikacji elektrycznej RPi GPIO.
@johnfound Nie znalazłem oficjalnej specyfikacji i wartości absmax w podlinkowanej witrynie. Być może źle odczytałem tę stronę, więc zacytuj (nie spekulacyjną) specyfikację oceny absmax.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...