Saya memiliki sepasang, konektor kustom lama yang digunakan oleh apa yang akan menjadi sejumlah besar sistem. Konektornya adalah ibu / ayah dan simetris, karena di dalamnya tidak ada panduan mekanis agar pengguna memasangnya di posisi "benar".
Saya tidak dapat mengubah perangkat dan konektor ayah dengan cara apa pun.
4 pin adalah: VCC GND Rx Tx. Saya memiliki tegangan tinggi pada pin daya dan logika Rx / Tx pada 5V. Jam Rx / Tx sudah diatur sebelumnya pada nilai tertentu.
Oleh karena itu, konektor ayah dapat dicolokkan dalam 4 cara yang mungkin.
Ibu memasok ayah dengan VCC di bawah 1000V dan di bawah 100A jika dan ketika pin "sejajar". Sampai saat itu, perangkat dapat berbicara melalui Rx dan Tx @ 5V (ada baterai isi ulang kecil pada perangkat akhir konektor ayah).
Kasing konektor dan perangkat tidak konduktif.
Saya harus dapat mendeteksi orientasi / cara konektor ayah dimasukkan sehingga saya dapat menyampaikan arus dan sinyal dengan benar, sehingga perangkat akan terhubung dan berbicara terlepas dari bagaimana konektor dicolokkan.
Apa cara terbaik untuk mencapai ini? Yang dimaksud dengan "cara terbaik" adalah jumlah komponen / FET / relay / dioda paling sedikit. Saya dapat menggunakan semua jenis MCU pada akhirnya, sedang melihat kelas L0 dari STM.
NB: perangkat elektro-mekanis di belakang konektor ibu, dalam bentuk disk diputar oleh motor dalam langkah 90 'searah jarum jam (pada dasarnya hingga 4 "mencoba" dibuat sampai sinyal disejajarkan dengan benar) telah diusulkan melalui saluran lain, saya tidak mencari solusi semacam ini, membutuhkan sesuatu yang solid, tanpa bagian yang bergerak.
Jawaban:
Karena hal yang Anda tancapkan mendorong keluar tegangan relatif ke pin ground pada garis Tx (dan mungkin pullup pada Rx) Anda harus dapat menggunakan sirkuit seperti yang di bawah ini sebagai permulaan.
mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab
Tarik masing-masing pin ke tanah satu per satu dan periksa pin lainnya yang mendorong kembali. Anda harus bisa mengetahui pin mana yang merupakan pin ground aktual seperti itu. Setelah Anda mengetahuinya, aktifkan sinyal TX / RX ke pin yang benar (tidak ditampilkan) dan verifikasi komunikasi sebelum menyalakan P-MOSFET daya yang sesuai.
Setelah Anda tahu yang mana yang ditanami, dan menyalakannya, mendeteksi colokan yang dicabut seharusnya hanya masalah memonitor transistor pada jalur Vcc.
sumber
Anda dapat menggunakan sirkuit yang mirip dengan shifter barel dua tahap untuk memungkinkan memutar sinyal dengan 0, 90, 180 atau 270 derajat:
mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab
Anda dapat menggunakan solid state atau relay mekanis untuk sakelar. Hanya ada dua sinyal kontrol, yang memungkinkan 4 pengaturan yang sesuai dengan 4 orientasi yang mungkin.
Untuk menemukan orientasi yang benar, hanya beralih melalui pengaturan sampai Anda mendapatkan sinyal RX / TX yang valid. Karena suplai tegangan tinggi tidak diaktifkan sebelum Anda menemukan orientasi yang benar, logika hanya menangani + - 5V pada sinyal rx / tx. Sebuah resistor seri sederhana dan klem dioda bisa cukup.
(Tentu saja akan pintar untuk memiliki semacam perlindungan mundur jika tegangan tinggi berakhir pada pin yang salah, tapi itu cukup topik untuk pertanyaan lain.)
sumber