En los últimos meses, he logrado destruir 2 computadoras portátiles perfectamente buenas mediante la programación electrónica de desarrollo a través de USB. Me he estado preguntando qué se podría hacer para evitar esto. Un par de ideas que he tenido (no estoy seguro de cuán práctico):
- Conector / hub USB con sujeción de diodos zener de 5V en líneas de alimentación y datos
- Conector / hub USB con optoaisladores en líneas de datos
- Suministro de la conexión USB con fuente de alimentación externa más la idea mencionada anteriormente
En combinación con estas ideas, quizás resistencias en las líneas 5 + D + y D- para limitar la corriente a 200 mA (suficiente para la mayoría de los dispositivos que uso).
¿Me preguntaba qué pensaban algunos ingenieros más experimentados que yo sobre estas ideas y sus implicaciones prácticas?
usb
protection
usb-device
circuit-protection
awsem_eng
fuente
fuente
Respuestas:
El verdadero problema no es el puerto USB sin protección, el problema real es que su dispositivo lo pone a usted y a sus dispositivos en riesgo de estar conectados a fuentes de alto voltaje y corriente relativamente alta.
Puede resolver la sobretensión transitoria con diodos de sujeción, pero esto no ayudará si su fuente de alimentación es lo suficientemente fuerte: simplemente fallarán, y luego estará en la misma situación que antes, solo milisegundos y el olor a semiconductores quemados más.
Su problema es grave, por muchas razones, y sus computadoras portátiles son lo de menos:
El USB está diseñado para ser manejado manualmente (es una redacción redundante), por lo que si esta falla mata a su computadora portátil, no tengo la mayor confianza de que es inherentemente salvo para la interacción humana.
Hay, por una buena razón, criterios de diseño para los circuitos que implica cambiar voltajes más altos con voltajes más bajos.
En general: necesita aislamiento galvánico entre lo que cualquier humano (incluso un técnico de servicio) pueda tocar durante la operación y los voltajes peligrosos.
Por lo tanto: separe estrictamente su controlador USB y las cosas que cambia. Es una práctica común conducir cargas inductivas o de alto voltaje utilizando optoacopladores, cuyo lado secundario es impulsado por una fuente de alimentación separada.
El diseño de la placa debe separar las regiones de alto voltaje del entorno de 5V / MCU. Solo los optoacopladores, los núcleos de transformador y los relés pueden cruzar esa frontera. Sin compromisos.
Un problema típico es que la conexión a tierra de la fuente de alimentación de su dispositivo tiene un potencial completamente diferente a la conexión a tierra USB, aunque eso no debería ser un problema para una computadora portátil, que en sí misma debe estar separada galvánicamente de cualquier otra cosa, hay muchos casos en los que se encuentra problemas con eso (por ejemplo, la conexión a tierra del portátil termina en conexión a tierra de Ethernet, conexión de audio, conexión a tierra RS-232 ...). La estricta separación (aislamiento) entre controlador y controlado hace que no sea un problema inherente.
fuente
Bueno. Como menciona el "uso de diodos zener" para protegerse contra un "alto voltaje" mal definido, ahora tenemos un punto de datos confiable: no tiene idea de lo que está haciendo.
Por lo tanto, necesita un aislador USB para proteger el puerto de la computadora portátil de usted mismo. Lo siento por ese portátil, por cierto.
Quiero decir, las computadoras portátiles están aisladas del suelo debido a que sus fuentes de alimentación no están conectadas a tierra. Entonces, volar el puerto USB de una computadora portátil es como ... difícil ... ¿Cómo exactamente lograste hacer eso exactamente? ¿Enviaste voltaje de red por el puerto USB o algo así?
fuente
Dado que está utilizando Arduino como base, la solución es fácil ... use un procesador desechable para programar y depurar. El entorno de desarrollo de Arduino se adapta muy bien a una Raspberry Pi que puede alimentar desde su entorno integrado y comunicarse a través de la red inalámbrica desde las computadoras portátiles restantes o tal vez desde una computadora de escritorio.
Esto no le impedirá freír una Raspberry Pi, pero reducirá el costo de una falla del circuito a aproximadamente $ 35.
fuente
Ok, después de una multitud de aclaraciones y varios casos presentados, permítanme ofrecer una solución al problema de cómo proteger una computadora portátil de la fritura en el entorno de servicio de campo:
Siempre conecte su equipo de prueba / diagnóstico al objeto de servicio primero y enciéndalo.
Antes de conectar el equipo a la computadora portátil, verifique si hay voltajes sospechosos entre los blindajes USB utilizando un DMM de baja impedancia (estándar de 10-20k), entre el puerto DUT y el puerto de la computadora portátil, tanto en modo CC como CA.
Si se encuentra un voltaje significativo (5 - 10 - 50 V), use un transformador de aislamiento verdadero en uno de los extremos.
fuente
Usar un Pi / Beaglebone / Tinkerbox a través de WiFi sería barato y fácil. CHIP se ve bien, consulte https://getchip.com/pages/chip . 5-9 $ por dispositivo. Puedes asesinar 7 CHIP por el precio de 1 Pi3. Obviamente, aún debe abordar el problema de que los voltajes de corte alcanzan los puertos USB, pero al menos su estación de trabajo estará segura. Sin embargo, no lo conecte a su LAN con ethernet.
La transferencia de archivos es simplemente una cuestión de usar el acceso ssh sin contraseña basado en clave para archivos scp a Pi / other y un shell remoto para cargar. Para arduino, existe el paquete arduino-mk, y hay herramientas similares para PIC. Sin duda, también puede guardar sus archivos en un recurso compartido SMB / CIFS exportado y usar el shell remoto para crearlos y cargarlos en sus tableros.
Si se produce un voltaje de muerte nuevamente, solo perderá 30-35 $.
Todavía no he descubierto cómo estos voltajes logran atravesar sus MCU e ingresar al puerto USB. ¿Es un corto? ¿De dónde viene? He destruido muchos clones de arduino, y sinceramente tengo curiosidad.
Además, los puertos USB suelen estar polifundidos contra tensiones moderadas. En realidad, debe colocar un voltaje negativo en el pin de 5V para matar el puerto (o positivo al pin de GND), el controlador y quizás la placa base. ¿Cómo te las arreglas para asesinar dos computadoras portátiles? ¿Podría ser la magia de la corriente alterna en el trabajo?
fuente