Au cours des derniers mois, j'ai réussi à détruire 2 ordinateurs portables parfaitement bons grâce à la programmation de l'électronique de développement via USB. Je me demandais ce qui pouvait être fait pour empêcher cela. Quelques idées que j'ai eues (je ne sais pas comment elles sont pratiques):
- Connecteur / concentrateur USB avec serrage des diodes Zener 5 V sur les lignes d'alimentation et de données
- Connecteur / concentrateur USB avec opto-isolateurs sur les lignes de données
- alimenter la connexion usb avec une source d'alimentation externe plus l'idée mentionnée précédemment
En combinaison avec ces idées, peut-être des résistances sur les lignes 5v D + et D- pour limiter le courant à 200mA (assez pour la plupart des appareils que j'utilise).
Je me demandais simplement ce que certains ingénieurs plus expérimentés que moi pensaient de ces idées et de leurs implications pratiques?
usb
protection
usb-device
circuit-protection
awsem_eng
la source
la source
Réponses:
Le vrai problème n'est pas le port USB non protégé, le vrai problème est que votre appareil vous et vos appareils risquent d'être connectés à des sources de tension relativement élevées et à courant élevé.
Vous pouvez résoudre les surtensions transitoires avec des diodes de serrage, mais celles-ci ne seront d'aucune utilité si votre alimentation est suffisamment puissante - elles échoueront simplement, puis vous serez dans la même situation qu'auparavant, seulement quelques millisecondes et l'odeur des semi-conducteurs brûlés plus loin.
Votre problème est mauvais, pour de nombreuses raisons, et vos ordinateurs portables sont les moindres:
L'USB est destiné à être manipulé manuellement (c'est une formulation redondante), donc si ce défaut tue votre ordinateur portable, je n'ai pas la plus grande confiance qu'il est intrinsèquement enregistré pour une interaction humaine.
Il existe, pour une bonne raison, des critères de conception pour les circuits qui impliquent de commuter des tensions plus élevées avec des tensions plus faibles.
Généralement: vous avez besoin d'une isolation galvanique entre tout ce que tout être humain (même un technicien de maintenance) pourrait toucher pendant le fonctionnement et les tensions dangereuses.
Par conséquent: séparez strictement votre contrôleur USB et les éléments qu'il commute. Il est courant de piloter des charges inductives ou à haute tension à l'aide d'optocoupleurs, dont le côté secondaire est entraîné par une alimentation séparée.
La disposition de la carte doit séparer les régions à haute tension de l'environnement 5V / MCU. Seuls les optocoupleurs, les noyaux de transformateur et les relais peuvent franchir cette limite. Aucun compromis.
Un problème typique est que la masse d'alimentation de votre appareil a un potentiel complètement différent de la masse USB - bien que cela ne devrait pas être un problème pour un ordinateur portable, qui lui-même devrait être galvaniquement séparé de toute autre chose, il y a beaucoup de cas où vous rencontrez problème avec cela (par exemple, la masse de l'ordinateur portable se retrouve sur la terre ethernet, la terre audio, la terre RS-232 ...). La séparation stricte (isolation) entre le contrôleur et le contrôlé en fait un problème non intrinsèque.
la source
Bien. Puisque vous mentionnez «l'utilisation de diodes zener» pour se protéger contre une «haute tension» mal définie, nous avons maintenant un point de données fiable: vous n'avez aucune idée de ce que vous faites.
Par conséquent, vous avez besoin d'un isolateur USB pour protéger le port de l'ordinateur portable contre vous-même. Je suis désolé pour cet ordinateur portable, btw.
Je veux dire, les ordinateurs portables sont isolés de la terre car leurs blocs d'alimentation ne sont pas mis à la terre. Donc, souffler le port USB d'un ordinateur portable est comme ... difficile ... Comment avez-vous réussi exactement à le faire exactement? Avez-vous envoyé la tension secteur sur le port USB ou quelque chose?
la source
Puisque vous utilisez Arduino comme base, la solution est simple .... utilisez un processeur jetable pour la programmation et le débogage. L'environnement de développement Arduino s'intègre parfaitement sur un Raspberry Pi que vous pouvez alimenter à partir de votre environnement intégré et parler via sans fil à partir de vos ordinateurs portables restants ou peut-être d'un ordinateur de bureau.
Cela ne vous empêchera pas de faire frire un Raspberry Pi, mais cela réduira le coût d'une panne de circuit à environ 35 $.
la source
Ok, après une multitude de clarifications et divers cas présentés, permettez-moi de proposer une solution au problème de la protection d'un ordinateur portable contre la friture dans l'environnement de l'entretien sur site:
Connectez toujours votre équipement de test / diagnostic à l'objet de service en premier et mettez la chose sous tension.
Avant de connecter l'équipement à un ordinateur portable, vérifiez toute tension suspecte entre les blindages USB à l'aide d'un multimètre numérique à faible impédance (standard 10-20k), entre le port DUT et le port d'ordinateur portable, en mode CC et CA.
Si une tension importante est trouvée (5 - 10 - 50 V), utilisez un véritable transformateur d'isolement à l'une des extrémités.
la source
L'utilisation d'un Pi / Beaglebone / Tinkerbox sur WiFi serait bon marché et facile. CHIP a l'air bien, voir https://getchip.com/pages/chip . 5-9 $ par appareil. Vous pouvez tuer 7 chips pour le prix de 1 Pi3. Évidemment, vous devez toujours résoudre le problème que les tensions de coupure atteignent les ports USB, mais au moins votre poste de travail sera en sécurité. Ne le connectez pas à votre LAN avec Ethernet, cependant.
Le transfert des fichiers consiste simplement à utiliser un accès ssh sans mot de passe basé sur des clés pour les fichiers scp vers le Pi / autre et un shell distant pour le télécharger. Pour arduino, il existe le paquet arduino-mk, et il existe des outils similaires pour PIC. Vous pouvez également enregistrer vos fichiers sur un partage SMB / CIFS exporté et utiliser le shell distant pour le créer et le télécharger sur vos cartes.
Si un kill-voltage se reproduit, vous ne perdrez que 30-35 $.
Je n'ai toujours pas découvert comment ces tensions parviennent à traverser vos MCU et à entrer dans le port USB. Est-ce un court métrage? D'où est ce que ça vient? J'ai détruit de nombreux clones Arduino et je suis sincèrement curieux.
De plus, les ports USB sont généralement polyfusés contre des tensions modérées. Vous devez réellement placer une tension négative sur la broche 5V pour tuer le port (ou positif sur la broche GND), le contrôleur et peut-être la carte mère. Comment gérez-vous le meurtre de deux ordinateurs portables? Serait-ce la magie du courant alternatif au travail?
la source