W ciągu ostatnich kilku miesięcy udało mi się zniszczyć 2 idealnie dobre laptopy, programując elektronikę programistyczną przez USB. Zastanawiam się, co można zrobić, aby temu zapobiec. Kilka pomysłów, które miałem (nie jestem pewien, jak praktyczne):
- Złącze / hub USB z zaciskającymi się diodami Zenera 5 V na liniach zasilania i danych
- Złącze / hub USB z optoizolatorami na liniach danych
- zasilenie połączenia USB zewnętrznym źródłem zasilania oraz wcześniej wspomniany pomysł
W połączeniu z tymi pomysłami być może rezystory na liniach 5 V D + i D-, aby ograniczyć prąd do 200 mA (wystarczający dla większości urządzeń, których używam).
Zastanawiałem się tylko, co niektórzy bardziej doświadczeni inżynierowie niż ja myśleli o tych pomysłach i ich praktycznych implikacjach?
usb
protection
usb-device
circuit-protection
awsem_eng
źródło
źródło
Odpowiedzi:
Prawdziwym problemem nie jest niezabezpieczony port USB, prawdziwym problemem jest to, że Twoje urządzenie naraża Ciebie i Twoje urządzenia na podłączenie do źródeł o stosunkowo wysokim napięciu i wysokim napięciu.
Przejściowe przepięcia można rozwiązać za pomocą diod mocujących, ale to nie pomoże, jeśli zasilacz jest wystarczająco silny - po prostu zawiodą, a następnie będziesz w takiej samej sytuacji jak poprzednio, tylko milisekundy i zapach spalonych półprzewodników dalej.
Twój problem jest poważny z wielu powodów, a laptopy to najmniej:
USB powinien być obsługiwany ręcznie (to jest nadmiarowe sformułowanie), więc jeśli ta usterka zabije twojego laptopa, nie mam największej pewności, że z natury może zaoszczędzić na interakcji człowieka.
Istnieją nie bez powodu kryteria projektowania obwodów, które obejmują przełączanie wyższych napięć na niższe.
Ogólnie: potrzebna jest izolacja galwaniczna między wszystkim, co człowiek (nawet technik serwisu) może dotknąć podczas pracy, a niebezpiecznymi napięciami.
Dlatego: ściśle oddziel swój kontroler USB i rzeczy, które przełącza. Powszechną praktyką jest napędzanie obciążeń indukcyjnych lub wysokonapięciowych za pomocą transoptorów, których strona wtórna jest napędzana przez oddzielne źródło zasilania.
Układ płytki musi oddzielać obszary wysokiego napięcia od środowiska 5 V / MCU. Tylko transoptory, rdzenie transformatorów i przekaźniki mogą przekroczyć tę granicę. Bez kompromisów.
Typowym problemem jest to, że uziemienie zasilania twojego urządzenia ma zupełnie inny potencjał niż uziemienie USB - chociaż nie powinno to stanowić problemu dla laptopa, który sam w sobie powinien być galwanicznie oddzielony od czegokolwiek innego, istnieje wiele przypadków, w których napotykasz problem z tym (np. uziemienie laptopa kończy się na uziemieniu ethernetowym, uziemieniu audio, uziemieniu RS-232 ...). Ścisła separacja (izolacja) między kontrolerem a kontrolowanym sprawia, że jest to nieodłączny problem.
źródło
Dobrze. Ponieważ wspominasz o „użyciu diod Zenera” w celu ochrony przed źle zdefiniowanym „wysokim napięciem”, mamy teraz jeden wiarygodny punkt danych: nie masz pojęcia o tym, co robisz.
Dlatego potrzebujesz izolatora USB, aby zabezpieczyć port laptopa przed sobą. Żal mi tego laptopa, przy okazji.
Mam na myśli, że laptopy są odizolowane od ziemi, ponieważ ich zasilacze nie są uziemione. Więc wysadzenie portu USB laptopa jest jak ... trudne ... Jak dokładnie udało ci się to zrobić? Czy wysłałeś napięcie sieciowe do portu USB czy coś takiego?
źródło
Ponieważ używasz Arduino jako podstawy, rozwiązanie jest proste ... użyj jednorazowego procesora do programowania i debugowania. Środowisko programistyczne Arduino ładnie pasuje do Raspberry Pi, które można zasilać ze środowiska osadzonego i rozmawiać przez sieć bezprzewodową z pozostałych laptopów lub komputera stacjonarnego.
Nie zapobiegnie to usmażeniu Raspberry Pi, ale obniży koszt awarii obwodu do około 35 USD.
źródło
Ok, po wielu wyjaśnieniach i różnych przedstawionych przypadkach, pozwól mi zaproponować rozwiązanie problemu, jak zabezpieczyć laptopa przed smażeniem w środowisku obsługi w terenie:
Zawsze najpierw podłącz sprzęt testowy / diagnostyczny do obiektu serwisowego i włącz zasilanie.
Przed podłączeniem sprzętu do laptopa sprawdź, czy nie występują podejrzane napięcia między osłonami USB za pomocą DMM o niskiej impedancji (standardowo 10-20 kB), między portem DUT a portem laptopa, zarówno w trybie prądu stałego, jak i prądu przemiennego.
W przypadku znalezienia znacznego napięcia (5–10–50 V) należy zastosować prawdziwy transformator izolujący na jednym z końców.
źródło
Korzystanie z Pi / Beaglebone / Tinkerbox przez WiFi byłoby tanie i łatwe. CHIP wygląda dobrze, patrz https://getchip.com/pages/chip . 5-9 $ za urządzenie. Możesz zabić 7 CHIPÓW za cenę 1 Pi3. Oczywiście nadal musisz rozwiązać problem, w którym napięcia zabójcze docierają do portów USB, ale przynajmniej twoja stacja robocza będzie bezpieczna. Nie podłączaj go jednak do sieci LAN za pomocą sieci Ethernet.
Przesyłanie plików to po prostu kwestia użycia opartego na kluczach dostępu ssh do plików scp do Pi / other i zdalnej powłoki do przesłania. W przypadku arduino istnieje pakiet arduino-mk i istnieją podobne narzędzia do PIC. Bez wątpienia możesz także zapisać swoje pliki w wyeksportowanym udziale SMB / CIFS i użyć zdalnej powłoki, aby utworzyć i przesłać ją na swoje tablice.
Jeśli napięcie zabójcze wystąpi ponownie, stracisz tylko 30-35 $.
Nadal nie dowiedziałem się, w jaki sposób napięcia te potrafią przejść przez MCU i wejść do portu USB. Czy to jest krótkie? Skąd to pochodzi? Zniszczyłem wiele klonów arduino i jestem szczerze ciekawy.
Ponadto porty USB są zwykle zabezpieczone przed umiarkowanym napięciem. W rzeczywistości musisz umieścić ujemne napięcie na pinie 5 V, aby zabić port (lub dodatni do pinu GND), kontrolera i być może płyty głównej. Jak sobie radzisz z zamordowaniem dwóch laptopów? Czy może to być magia przemiennego prądu w pracy?
źródło