Dalam beberapa bulan terakhir saya telah berhasil menghancurkan 2 laptop yang sangat baik melalui pemrograman pengembangan elektronik melalui USB. Saya bertanya-tanya apa yang bisa dilakukan untuk mencegah hal ini. Beberapa ide yang saya punya (tidak yakin seberapa praktis):
- Konektor / hub USB dengan dioda penjepit 5V zener pada saluran listrik dan data
- Konektor / hub USB dengan opto-isolator pada jalur data
- memasok koneksi usb dengan sumber daya eksternal plus ide yang disebutkan sebelumnya
Dalam kombinasi dengan ide-ide ini mungkin resistor pada 5v D + dan D-line untuk membatasi arus hingga 200mA (cukup untuk sebagian besar perangkat yang saya gunakan).
Hanya ingin tahu apa yang dipikirkan oleh beberapa insinyur yang lebih berpengalaman daripada saya tentang ide-ide ini dan implikasi praktisnya?
usb
protection
usb-device
circuit-protection
awsem_eng
sumber
sumber
Jawaban:
Masalah sebenarnya bukanlah port USB yang tidak terlindungi, masalah sebenarnya adalah bahwa perangkat Anda menempatkan Anda dan perangkat Anda berisiko terhubung ke sumber tegangan tinggi, arus relatif tinggi.
Anda dapat mengatasi tegangan lebih sementara dengan dioda penjepit, tetapi ini tidak akan membantu jika catu daya Anda cukup kuat - mereka hanya akan gagal, dan kemudian Anda berada dalam situasi yang sama seperti sebelumnya, hanya milidetik dan aroma semikonduktor yang terbakar semakin jauh.
Masalah Anda adalah yang buruk, karena banyak alasan, dan laptop Anda adalah yang paling tidak:
USB dimaksudkan untuk ditangani secara manual (itu kata-kata yang berlebihan), jadi jika kesalahan ini membunuh laptop Anda, saya tidak memiliki keyakinan terkuat bahwa itu secara inheren disimpan untuk interaksi manusia.
Ada, untuk alasan yang baik, kriteria desain untuk sirkuit yang melibatkan perpindahan voltase lebih tinggi dengan voltase lebih rendah.
Secara umum: Anda perlu isolasi galvanis antara apa pun yang dapat disentuh manusia (bahkan teknisi servis) selama operasi dan voltase berbahaya.
Oleh karena itu: pisahkan pengontrol USB Anda dengan ketat dan hal-hal yang dihidupkannya. Merupakan praktik umum untuk menggerakkan muatan induktif atau tegangan tinggi menggunakan optocoupler, yang sisi sekundernya digerakkan oleh catu daya terpisah.
Tata letak papan harus membuat daerah bertegangan tinggi terpisah dari lingkungan 5V / MCU. Hanya optocoupler, core transformator, dan relay yang diizinkan melewati batas itu. Tidak ada kompromi.
Masalah khasnya adalah bahwa catu daya perangkat Anda memiliki potensi yang sama sekali berbeda dari ground USB - meskipun itu seharusnya tidak menjadi masalah untuk laptop, yang itu sendiri harus terpisah secara galvanis dari hal lain, ada banyak kasus di mana Anda mengalami masalah dengan itu (mis. ground laptop berakhir pada ground ethernet, ground audio, ground RS-232 ...). Pemisahan yang ketat (isolasi) antara pengontrol dan pengontrol menjadikannya tidak menjadi masalah.
sumber
Baik. Karena Anda menyebutkan "penggunaan dioda zener" untuk melindungi dari "tegangan tinggi" yang tidak jelas, kami sekarang memiliki satu titik data yang andal: Anda tidak tahu apa yang sedang Anda lakukan.
Oleh karena itu, Anda memerlukan isolator USB untuk melindungi port laptop dari diri Anda. Saya merasa kasihan dengan laptop itu, btw.
Maksudku, laptop terisolasi dari tanah karena catu daya mereka tidak di-ground. Jadi, meniup port USB laptop itu seperti ... sulit ... Bagaimana tepatnya Anda bisa melakukannya? Apakah Anda mengirim tegangan listrik ke port USB atau sesuatu?
sumber
Karena Anda menggunakan Arduino sebagai basis, solusinya mudah .... gunakan prosesor sekali pakai untuk pemrograman dan debugging. Lingkungan pengembangan Arduino sangat cocok dengan Raspberry Pi yang dapat Anda gunakan dari lingkungan tertanam Anda dan berbicara dengan nirkabel dari laptop Anda yang tersisa atau mungkin desktop.
Ini tidak akan mencegah Anda menggoreng Raspberry Pi, tetapi itu akan mengurangi biaya kegagalan sirkuit hingga sekitar $ 35.
sumber
Ok, setelah banyak klarifikasi dan berbagai kasus yang disajikan, izinkan saya menawarkan solusi untuk masalah bagaimana melindungi laptop dari penggorengan di lingkungan servis lapangan:
Selalu sambungkan alat uji / diagnostik Anda ke objek layanan terlebih dahulu, dan nyalakan kembali.
Sebelum menghubungkan peralatan ke laptop, periksa apakah ada tegangan yang mencurigakan antara pelindung USB menggunakan DMM impedansi rendah (standar 10-20k), antara port DUT, dan port laptop, baik dalam mode DC dan AC.
Jika tegangan signifikan ditemukan (5 - 10 - 50 V), gunakan transformator isolasi sejati di salah satu ujungnya.
sumber
Menggunakan Pi / Beaglebone / Tinkerbox melalui WiFi akan menjadi murah dan mudah. CHIP terlihat bagus, lihat https://getchip.com/pages/chip . $ 5-9 per perangkat. Anda dapat membunuh 7 CHIP dengan harga 1 Pi3. Jelas Anda masih perlu mengatasi masalah yang mematikan tegangan mencapai port USB, tetapi setidaknya workstation Anda akan aman. Namun, jangan menghubungkannya ke LAN Anda dengan ethernet.
Mentransfer file hanyalah masalah menggunakan akses ssh tanpa kata sandi berbasis kunci ke file scp ke Pi / lainnya dan shell jarak jauh untuk mengunggah. Untuk arduino, ada paket arduino-mk, dan ada alat serupa untuk PIC. Tidak diragukan lagi Anda juga dapat hanya menyimpan file Anda pada pangsa SMB / CIFS yang diekspor, dan menggunakan remote shell untuk membuat dan mengunggahnya ke papan Anda.
Jika tegangan mati terjadi lagi, Anda hanya akan kehilangan $ 30-35.
Saya masih belum mengetahui bagaimana voltase ini bisa melintasi MCU Anda dan masuk ke port USB. Apakah ini singkat? Dari mana asalnya? Saya telah menghancurkan banyak klon arduino, dan saya benar-benar ingin tahu.
Juga, port USB biasanya disatukan dengan voltase sedang. Anda sebenarnya perlu menempatkan tegangan negatif pada pin 5V untuk mematikan port (atau positif ke pin GND), controller dan mungkin motherboard. Bagaimana Anda mengelola pembunuhan dua laptop? Mungkinkah itu keajaiban arus bolak-balik di tempat kerja?
sumber