Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

USB power booster na LM2596S

Sam Sung 29 Sep 2022 12:23 2874 16
Altium Designer Computer Controls
  • USB power booster na LM2596S
    Postanowiłem podzielić się prostym rozwiązaniem problemu z zasilaniem urządzeń USB w dwóch przypadkach:
    - zasilanie prądożernego urządzenia USB (np. modemu LTE/UMTS czy kamerki) na kablu do 8 m (na zwykłym przedłużaczu nie działa)
    - zasilanie modemu LTE/UMTS, który w pewnych przypadkach pobiera więcej prądu, niż pozwala specyfikacja USB; zawiesza się i trzeba go resetować - nawet, kiedy jest wpięty wprost do portu USB w komputerze (bez przedłużacza)

    A rozwiązaniem tym jest USB power booster - urządzenie dostarczające zasilanie 5 V z innego źródła niż port USB w komputerze, ale poza tym przezroczyste dla magistrali USB.
    Takie coś łatwo zrobić na gotowym module regulowanej przetwornicy DC-DC step down na LM2596S, jaki można kupić za kilka złotych:
    USB power booster na LM2596S
    Opis: https://www.elektroda.pl/rtvforum/topic3420289.html
    Zasilanie można wziąć z zasilacza zasilającego komputer - w PC mamy linię 12 V, a w laptopach, terminalach czy innych komputerach jednopłytkowych zdarza się 12-20 V i kilka amperów do dyspozycji.
    Idea jest taka:
    - w przypadku zasilania modemu blisko komputera chodzi tylko o zasilenie z mocniejszego źródła niż port - z LM2596S mamy do 3 A zamiast 0,5 A
    - urządzenia oddalone możemy podłączyć skrętką ekranowaną, w której jedną parą (lub nawet jedną żyłą) puścimy napięcie 12 V, a dopiero przy samym urządzeniu przetwornica obniży to, co z tych 12 V zostało, do 5 V
    W ten sposób spadek napięcia nawet o 4 V to żaden problem (12 V -> 8 V), podczas gdy przy zasilaniu przedłużaczem spadek o ćwierć wolta (do 4,75 V) = dyskwalifikacja.

    Schemat połączeń:
    USB power booster na LM2596S

    Potrzebne są:
    1. Moduł przetwornicy
    2. Kabel z wtyczką USB-A (USB 2.0)
    3. Gniazdo USB-A
    4. Gniazdo zasilania DC np. 5,5/2,5 mm (jeśli chcemy doprowadzać zasilanie w taki sposób)
    5. Kawałek uniwersalnej płytki drukowanej
    6. Tranzystor BC547
    7. 2 oporniki 10k
    8. <1m pojedynczego przewodu do połączeń
    9. Cyna z topnikiem
    10. Plastikowa obudowa lub jej namiastka
    11. 4 śrubki do przykręcenia płytek do obudowy
    USB power booster na LM2596S

    A z narzędzi: miernik uniwersalny, lutownica, trzecia ręka, wkręcarka/wiertarka z wiertłem, piłka do plastiku, pilnik, kleszcze, śrubokręty, być może pistolet na klej.

    Przetwornica jest regulowana, więc pierwsze, co trzeba zrobić, to nastawić jej napięcie, jakim chcemy zasilać nasz modem czy co tam będzie podłączone, np. 5,2 V.
    USB power booster na LM2596S
    Płytka z przetwornicą ma tylko wyprowadzenia IN+, IN-, OUT+ i OUT- (IN- zwarte z OUT-). Jednak dobrze by było, żeby urządzenie USB dostawało zasilanie nie przez cały czas, a tylko wtedy, kiedy komputer wystawia napięcie na port USB. W tym celu możemy wykorzystać wejście shutdown układu LM2596S, które trzeba odlutować od masy na płytce. Jest to pierwsza nóżka od prawej strony.
    USB power booster na LM2596S
    Następnie wlutowujemy gniazdo USB-A w płytkę i podłączamy kabel z wtyczką USB - wszystko poza VUSB, tj. ekranowanie, masę, D+ i D-. Żeby się nie pomylić, najlepiej włożyć wtyczkę do gniazdka, sprawdzić miernikiem, gdzie jest przejście, i tak przylutować.
    USB power booster na LM2596S
    Na płytce montujemy banalny układ z powyższego schematu:
    USB power booster na LM2596S USB power booster na LM2596S
    Łączymy płytki ze sobą (IN+, SD, OUT+, OUT-) i podłączamy gniazdo zasilania do przetwornicy (IN+, IN-):
    USB power booster na LM2596S
    Montujemy w namiastce obudowy, aby się porządnie trzymało, a niekoniecznie wyglądało:
    USB power booster na LM2596S USB power booster na LM2596S
    Podłączamy i cieszymy się stabilnym działaniem modemu w miejscu, gdzie jest najlepszy zasięg :)
    USB power booster na LM2596S

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    Sam Sung
    Level 32  
    Offline 
    Has specialization in: oprogramowanie systemowe
    Sam Sung wrote 1647 posts with rating 251, helped 205 times. Been with us since 2005 year.
  • Altium Designer Computer Controls
  • #2
    czareqpl
    Level 32  
    1. Czy pin SD jest od spodu podklejony kaptonem/izolacją aby uchronić od przypadkowego zwarcia?
    2. Jak już we wspomnianym temacie na temat przetwornicy koledzy wspominali: Ten układ dosyć mocno syfi na wyjściu i podłączanie do niego elektroniki wrażliwej na zakłócenia wymaga dobrego filtrowania. Co z tego, że mamy zapas zasilania na odległym kablu, skoro wtłaczamy mnóstwo zakłóceń w liniach zasilania?
  • #3
    LEDówki
    Level 38  
    Nie chcesz zakłóceń, to zrób stabilizator z inną przetwornicą albo z LM7805/LM317. W liniowych układach trzeba 3W mocy oddać do otoczenia jako ciepło.
  • Altium Designer Computer Controls
  • #4
    Sam Sung
    Level 32  
    czareqpl wrote:
    1. Czy pin SD jest od spodu podklejony kaptonem/izolacją aby uchronić od przypadkowego zwarcia?
    Nie
    czareqpl wrote:
    2. Jak już we wspomnianym temacie na temat przetwornicy koledzy wspominali: Ten układ dosyć mocno syfi na wyjściu i podłączanie do niego elektroniki wrażliwej na zakłócenia wymaga dobrego filtrowania. Co z tego, że mamy zapas zasilania na odległym kablu, skoro wtłaczamy mnóstwo zakłóceń w liniach zasilania?
    To z tego, że modemy Huawei działają długo i stabilnie, a przy zasilaniu wprost z portu się wieszały, a na długim przedłużaczu w ogóle nie chciały działać, tylko w kółko pojawiały się i znikały, albo były błędy typu "usb 1-9: device descriptor read/64, error -71". Zatem najwyraźniej takie modemy (ani kamerki) nie są elektroniką wrażliwą na zakłócenia na zasilaniu. Problemy miałem z kiepskimi kablami USB (np. z urządzeń USB 1.1, jak klawiatura), ale nie z powodu zasilania taką przetwonicą.
  • #5
    Mlody_Zdolny
    Level 23  
    LEDówki wrote:
    ie chcesz zakłóceń, to zrób stabilizator z inną przetwornicą

    Inna przetwornica może nie pomóc. Żeby były zakłócenia EM musi być antena. Wystarczy więc wyeliminować tą antenę poprzez poprawny projekt PCB lub ekran.
  • #6
    CosteC
    Level 35  
    Sam Sung wrote:
    Postanowiłem podzielić się prostym rozwiązaniem problemu z zasilaniem urządzeń USB w dwóch przypadkach:
    - zasilanie prądożernego urządzenia USB (np. modemu LTE/UMTS czy kamerki) na kablu do 8 m (na zwykłym przedłużaczu nie działa)
    - zasilanie modemu LTE/UMTS, który w pewnych przypadkach pobiera więcej prądu, niż pozwala specyfikacja USB; zawiesza się i trzeba go resetować - nawet, kiedy jest wpięty wprost do portu USB w komputerze (bez przedłużacza)

    Czyli postanowiłeś rozwiązać problemy stworzone przez użytkownika albo projektanta :)
    O ile pamiętam, specyfikacja USB 2.0 zakłada maksymalną długość przewodu 5 m, a jakość projektów modemów na USB zbywam milczeniem, bo to tragedia.

    Miło, że przewidziałeś wyłączanie wyjściowego 5V przez wejściowe - przynajmniej reset ma prawo się udać. Czy sprawdzałeś czy użyta przetwornica jest odporna na zwarcie?

    Niestety @Mlody_Zdolny zapomniał, że zakłócenia nie muszą przenosić się drogą radiową, do czego potrzebna jest antena, i mogą przenosić się przewodowo i tak dotrzeć do ofiary. Moduły przetwornic często zakłócają, bo projektant oszczędził na filtrach, użyte układy są podróbkami, albo projekt jest błędny. Normą jest też używanie tanich elektrolitów, które szybko tracą parametry bo są przeciążane.
  • #7
    żarówka rtęciowa
    Level 37  
    Witam

    CosteC wrote:
    Niestety @Mlody_Zdolny zapomniał, że zakłócenia nie muszą przenosić się drogą radiową, do czego potrzebna jest antena, i mogą przenosić się przewodowo i tak dotrzeć do ofiary. Moduły przetwornic często zakłócają, bo projektant oszczędził na filtrach, użyte układy są podróbkami, albo projekt jest błędny.


    Nie tak dawno sprawdziłem częstotliwość pracy zakupionego przeze mnie modułu urządzeniem DSO-138, który pożyczyłem od znajomego i wyszło to co na zdjęciu poniżej. Tak więc siedzi przemalowany LM2576S. Niska częstotliwość klucza w połączeniu z dławikiem o małej indukcyjności może być przyczyną wytwarzania dość silnych zakłóceń.

    USB power booster na LM2596S
  • #8
    CosteC
    Level 35  
    żarówka rtęciowa wrote:
    Nie tak dawno sprawdziłem częstotliwość pracy zakupionego przeze mnie modułu urządzeniem DSO-138,

    Jeśli mierzyłeś składową AC napięcia wyjściowego to pulsacja rzędu 1.2 Vpp jest straszna! Kondensatory wyjściowe są za małe albo złego typu. Albo jedno i drugie.
    No ale skoro główny układ to podróbka to cóż...

    DSO-138 ma znikome pasmo. "Prawdziwy" oscyloskop zapewne pokazałby więcej problemów, chociaż już zabawka typu DSO-138 wykazała, że z modułem jest bardzo źle. To bardzo fajny przykład, jak nawet tanie narzędzia pomagają ustalić bardzo ważne fakty.
    EDIT: Oryginalny LM2576S od Texas Instruments pracuje pomiędzy 47- 58 kHz w temperaturze pokojowej, więc w tym przypadku częstotliwość nie jest "zła". Natomiast tętnienia są tragiczne.

    Zakłócenia przewodzone zazwyczaj się mierzy między 150 kHz - 30 MHz, potem rozmawiamy o zakłóceniach przenoszonych radiowo wspomnianych wcześniej, chociaż granica jest umowna.
  • #9
    jarekgol
    Level 30  
    @Sam Sung Fajnie że zrobiłeś takie próby i wyszła poprawa. Kiedyś miałem problem z modemem na znacznie krótszym przedłużaczu, ale zwaliłem to na "dane" i nie przyszło mi do głowy że problem może być z zasilaniem.
    Widzę że masz tam Linuxa, używasz modemów przez AT i PPP czy w trybie karty?

    CosteC wrote:
    Miło, że przewidziałeś wyłączanie wyjściowego 5V przez wejściowe - przynajmniej reset ma prawo się udać.

    Czy da się takie polecenie wydać programowo?

    A z taką przetwornicą raz miałem problem w drugą stronę, jak zostało napięcie w elektrolicie (dodatkowym) po stronie niskiej i obciążyłem wysoką (wyłączyłem zasilacz, chyba nawet nie zwarłem) to się przetwornica zepsuła. Zdaje się zapięcie diody zaporowo między niską a wysoką potrafi pomóc.
  • #10
    CosteC
    Level 35  
    jarekgol wrote:
    CosteC wrote:
    Miło, że przewidziałeś wyłączanie wyjściowego 5V przez wejściowe - przynajmniej reset ma prawo się udać.

    Czy da się takie polecenie wydać programowo?

    Zależy do sprzętu i softu. Dobre układy Hosta USB mają możliwość wyłączenia zasilania "DEVICE". Ale potem jeszcze soft/driver musi ci dać dostęp do takich luksusowych opcji.
  • #11
    jarekgol
    Level 30  
    @CosteC No właśnie kiedyś szukałem i wyszło na to że nie bardzo, łącznie z tym że widziałem projekty specjalnych "hubów" które umożliwiały odcięcie konkretnych gniazd własnymi komendami (o ile się same wcześniej nie zwiesiły ;) ) coś jak przekaźnik do jednego poru, sterowany z drugiego portu.
    Ale skoro temat tu wypłynął, to chciałem spytać, może coś nowego na rynku / w standardach zaszło, bo kilka lat się tym już nie zajmowałem.
  • #12
    CosteC
    Level 35  
    jarekgol wrote:
    Ale skoro temat tu wypłynął, to chciałem spytać, może coś nowego na rynku / w standardach zaszło, bo kilka lat się tym już nie zajmowałem.

    Nie mam pojęcia, zapytam mądrych ludzi i zdam relację, ale w hur hur "naszym sprzęcie" implementujemy taką funkcjonalność. Mam nieśmiałe wrażenie, że w dobrych switchach to jest.
  • #13
    Sam Sung
    Level 32  
    jarekgol wrote:
    Widzę że masz tam Linuxa, używasz modemów przez AT i PPP czy w trybie karty?
    Używam komend AT do nawiązania i utrzymania połączenia, monitorowania jego stanu, poziomu sygnału, ID BTS-a i temperatury chipa oraz do obsługi SMS-ów i USSD, ale nie używam już PPP, tylko urządzenia USB CDC NCM, którego driver w Linuksie zgłasza urządzenie sieciowe np. wwan0. Po nawiązaniu połączenia komendą AT^NDISDUP wystarczy skonfigurować tą "kartę sieciową" przez DHCP i nie trzeba żadnego PPP.
    Do działania kluczowy jest wybór właściwego urządzenia ttyUSB* lub cdc-wdm0 do wydawania komend AT :) Być może zależy to od firmware'u i/lub konfiguracji portów (którą można zmieniać komendą AT^SETPORT). Z tego, co zaobserwowałem, to:
    - na Huawei E3131 tryb NDIS działa tylko, gdy komendy AT wysyłam na urządzeniu cdc-wdm0
    - na Huawei E3272 tryb NDIS działa na ostatnim z dwóch zgłoszonych ttyUSB (o ile dobrze pamiętam, to na cdc-wdm0 też, tylko coś innego tam nie działa, chyba AT^CHIPTEMP, ale głowy teraz nie dam)
    - na Huawei E3372h-153 tryb NDIS działa na pierwszym z dwóch zgłoszonych ttyUSB, nie działa na cdc-wdm0
    - na Huawei E3372h-320 (nowszy wynalazek, po cięciu kosztów o slot na kartę µSD) tryb NDIS działa na obu zgłoszonych ttyUSB, ale na pierwszym - w przeciwieństwie do drugiego - nie działają powiadomienia o przyjściu SMS-ów (+CMTI) ani raporty o ilości przesłanych danych (^DSFLOWRPT). W tym modelu w ogóle jest jakaś bieda z komendami, bo nawet ATZ ani AT+CLAC nie działają. To chyba zależy od firmware'u. Oprócz tego jest cyrk z przełączaniem trybu modemu - nie wystarczy zwykła konfiguracja usb_modeswitch'a. Niemniej jak się odpowiednio z nim pogada, to Internet i SMS-y/USSD chodzą. Tylko wciąż nie wiem, jak na nim odczytać numer ICCID karty SIM, więc karta SIM musi być bez pinu. Ewentualnie możnaby wbić pin na stałe, ale jak się potem zmieni kartę i zapomni wpisać nowy pin, to nieszczęście gotowe.

    jarekgol wrote:
    CosteC wrote:
    Miło, że przewidziałeś wyłączanie wyjściowego 5V przez wejściowe - przynajmniej reset ma prawo się udać.

    Czy da się takie polecenie wydać programowo?
    Niejaki md5crypt pokazał układ do automatycznego resetowania USB przez odcięcie zasilania: https://www.elektroda.pl/rtvforum/topic3307559.html
    i tam też podałem sposób na programowe wyłączenie zasilania na USB:
    Code:
    echo +60 > /sys/class/rtc/rtc0/wakealarm && poweroff
    Tylko, że to jest słaby sposób, bo wiąże się z wyłączeniem i włączeniem całego komputera :)
    O wiele lepszym sposobem na reset modemu Huawei jest wysłanie mu komendy AT^RESET. Oczywiście o ile przyjmuje jeszcze komendy.

    Aktualnie stosuję taki oto mechanizm automatycznego ratowania się po zawieszeniu modemu. Mam 2 źródła informacji o tym, że coś jest nie tak:
    1. Klient DHCP na urządzeniu CDC-WDM modemu (np. wwan0) zgłasza brak dzierżawy adresu IP (leasefail). Zawieszony modem nie poda nam nowego adresu IP. Niestety, dowiemy się o tym dopiero, gdy poprzednia dzierżawa wygaśnie, czyli co 518400 sekund = 6 dób. (Prawdopodobnie dałoby się wymusić na kliencie DHCP odnawianie dzierżawy wcześniej.)
    2. Przez ponad pół godziny nie udaje się połączyć z serwerem chmury z powodu błędu DNS (couldn't resolve host).
    Po pierwszym takim sygnale (obojętnie którym z powyższych) wysyłam AT^RESET, a gdyby to nie pomogło i przez co najmniej 6 minut było dalej źle, to robię tą sztuczkę z poweroff/on.
  • #14
    jarekgol
    Level 30  
    Sam Sung wrote:
    echo +60 > /sys/class/rtc/rtc0/wakealarm && poweroff

    to ustawia jakieś budzenie i potem wyłącza kompa? i każdy PC tak potrafi się "programowo" obudzić bez grzebania w biosie? U siebie w Ubuntu widzę że mam te katalogi, muszę spróbować :)

    Co do modemów to mi się jeszcze jakieś QMI trafiło, poza NCM i potwierdzam że działanie portów com jest zmienne i losowe :) a za zwyczaj pojawia się kilka.
  • #15
    CosteC
    Level 35  
    CosteC wrote:
    jarekgol wrote:
    Ale skoro temat tu wypłynął, to chciałem spytać, może coś nowego na rynku / w standardach zaszło, bo kilka lat się tym już nie zajmowałem.

    Nie mam pojęcia, zapytam mądrych ludzi i zdam relację, ale w hur hur "naszym sprzęcie" implementujemy taką funkcjonalność. Mam nieśmiałe wrażenie, że w dobrych switchach to jest.

    Sprawa jest skomplikowana.
    Ciekawa dyskusja jest na przykład tu: https://stackoverflow.com/questions/1925237/control-usb-ports-power
    Ogólnie sporo układów HOST dostarcza taką funkcjonalność, ale implementacja jest bardziej zależna od implementacji niż standardu, bo zbyt silnie zależna od konkretnego produktu. Standard mówi coś niecoś o sytuacjach typu przeciążenie HOST'a przez DEVICE.
  • #16
    jarekgol
    Level 30  
    @CosteC Czyli lipa jak od dłuższego czasu. Przyznam że to by była kusząca funkcjonalność dla masy urządzeń które lubią się zawiesić, ale po wyjęciu i włożeniu do kompa wszystko sobie dalej działa. Swoją drogą zagadką jest dla mnie dlaczego ten standard tak słabo wykrywa zawieszone urządzenie... Miałem raz przelotkę USB-RS która potrafiła "zawiesić" port w PC, dopiero restart pomagał, ale większość zachowuje się jak wyżej pisałem.
  • #17
    CosteC
    Level 35  
    @jarekgol Lipa jest ale nie z USB jako standardem tylko z jakością softu i sprzętu. Programiści nie ogarniają, że ramka może się zgubić albo spóźnić i soft zawisa. Sprzęt się przegrzewa i wiesza, albo o badaniach EMC słyszano tylko ale żadnych nie wykonano i komórka na drugim końcu biurka zawiesza urządzenie. Interfejs USB PD (power delivery) istnieje, ale jak go implementuje krzem to jedna rzecz a jak sterowniki systemowe to rzecz druga. Rzeczą trzecią jest jak to robi programista na poziomie aplikacji :) Jak te trzy rzeczy się nie zgrają to jest lipa... tu pełna zgoda.

    Standard typu komercyjnego tego nie ogarnie do końca nigdy, bo i po co miałby?. A jak chcesz lepsze urządzenia to kupuj te z listy certyfikowanych. Wiele ich nie ma :)
    Standard typu przemysłowego to ogarnie ale nie ogarną programiści - za wysokie progi dla nich i przeważającej ilości firm na rynku.