Mengapa MOSFET saluran-P saya terus mati di jembatan-H ini?


9

Jadi ini jembatan-H saya: masukkan deskripsi gambar di sini Setiap kali saya mulai menggunakannya dalam satu arah, MOSFET saluran-P dan NPN BJT yang menjadi milik arah yang digunakan akan mati dalam hitungan detik. MOSFET yang terbunuh dan BJT mengembangkan korsleting sehingga saya tidak bisa menggunakan arah yang lain lagi. Mereka mati tanpa panas atau asap!
Pengontrol adalah arduino uno, dan hanya MOSFET kanal-N yang digerakkan dengan sinyal PWM, saluran-P terhubung ke pin output digital sederhana. Frekuensi PWM adalah 490Hz default untuk pin digital 9 dan 10(setiap output PWM adalah individu). Saya sudah membunuh pasangan 4-5 P-channel MOSFET + BJT, itu bisa terjadi di kedua sisi. (Tergantung arah mana yang saya gunakan pertama.) Motor adalah motor wiper DC 12 V mobil, catu daya 12V 5A. Sumber catu daya 12V dan 5V terhubung.

Ada dua hal yang mungkin benar, tetapi saya tidak 100% yakin karena saya tidak mengujinya secara menyeluruh:

  • dalam versi sebelumnya saya menggunakan resistor 1k untuk R7 dan R8, dan saya tidak punya masalah. Saya akan mencobanya lagi tapi saya kehabisan MOSFET P-channel sekarang.
  • ketika saya memotong pasangan MOSFET + BJT goreng, saya bisa menggunakan arah lain tanpa membunuh pasangan MOSFET + BJT yang tersisa.

Tolong bantu saya, apa yang terjadi di sini :)

  • Haruskah saya menggunakan resistor antara NPN BJT dan MOSFET saluran-P?
  • Haruskah saya menggunakan 2n7000 MOSFET dan bukan 2N2222 BJT?

PEMBARUAN: Saya baru saja menguji jembatan-H dengan bohlam 12V 55W sebagai ganti motor penghapus. P-FET dan NPN terbunuh selama tes. Sisi N-channel digerakkan dengan sinyal PWM 40%. Tanpa memuat itu tidak punya masalah.

UPDATE2: Saya mengubah kembali R7 dan R8 ke 1r dari 150R. Sekarang jembatan berfungsi lagi tanpa ada komponen yang gagal. (Saya tidak menjalankannya selama berhari-hari, tetapi dengan resistor 150R mereproduksi kesalahan hanya butuh beberapa detik.) Saya akan menambahkan beberapa kapasitor decoupling di jembatan antara GND dan + 12V tetap seperti yang disarankan Brian. Terima kasih atas jawaban untuk semua orang!


Sudahkah Anda mengesampingkan kesalahan pemrograman? Apakah masih mati ketika Anda secara manual mengontrol H-bridge Anda?
rve

Saya mencoba mengesampingkannya. Saya tidak mencobanya secara manual tetapi saya melakukan banyak tes dengan catu daya yang lebih kecil tanpa beban yang menghubungkan H-bridge. Saya akan mencoba mengendalikan jembatan secara manual lain kali.
gOldie_E36

1
Untuk pengujian, dan untuk mengurangi kemungkinan Anda membunuh MOSFET lain, coba ganti motor Anda dengan sesuatu yang jauh lebih kecil. Seperti sepasang leds, atau motor mainan kecil atau semacamnya.
Pejalan kaki

Jawaban:


11

Bagaimana Anda memisahkan pasokan 12V?

Salah satu mode kegagalan yang mungkin adalah bahwa lonjakan induktif dari mematikan arus motor (yaitu pada tingkat PWM) dibuang ke pasokan 12V melalui dioda flyback. Ya, itu seharusnya terjadi, tapi ...

Jika suplai 12V tidak dipisahkan, dan bersumber dari PSU bukan baterai yang dapat diisi ulang, atau bersumber dari kabel panjang (induktif), sebenarnya bukan suplai 12V, tetapi sesaat didorong ke tegangan lonjakan induktif. Yang bisa jauh di atas peringkat MOSFET ...

Pantau pasokan 12V dengan osiloskop cepat. Jika itu menunjukkan tanda-tanda lonjakan tegangan tinggi, naikkan decoupling-nya sampai tidak. (Itu harus mencakup 0,1uF kapasitor keramik untuk impedansi HF rendah serta kapasitor reservoir elektrolit. Dan mungkin dioda zener 16V atau 25V untuk berjaga-jaga ...).

Saya tidak tahu bahwa ini adalah masalah Anda yang sebenarnya, tetapi ini adalah satu dasar yang HARUS Anda bahas.


1
Ini adalah penjelasan yang paling masuk akal. Lonjakan seperti itu dapat dengan mudah melebihi spesifikasi 20V absolut Vgs maksimum dari IRF4905. Gerbang ke sumber pendek yang dihasilkan kemudian akan memungkinkan arus besar mengalir melalui driver NPN, menghancurkannya juga.
Dave Tweed

Poin baiknya, saya tidak menggunakan decoupling. Saya punya osiloskop 20Mhz yang murah. Saya akan coba memonitor persediaannya. Saya memiliki beberapa kapasitor keramik dan elektrolit sehingga saya dapat menghubungkan mereka. Saya tidak punya zener. (Saya akan mendapatkan beberapa.)
gOldie_E36

Tahan zeners; dalam aplikasi otomotif, 16V zener tidak akan cukup karena semua hal lain yang dapat menaikkan pasokan (saat pengisian daya, itu akan mendekati 16V hampir berbahaya). Dan jika FET itu benar-benar 20V Vgs mereka tidak akan bertahan lama di mobil, meskipun mereka akan baik-baik saja di PSU lab 12V (dipisahkan).
Brian Drummond

Motor itu berasal dari mobil tapi saya berencana untuk menggunakannya dengan pasokan "lab" 12V (sebenarnya itu adalah AC Cina murah ke DC switching PSU).
gOldie_E36

1
Saya belum menambahkan kapasitor karena saya ingin tahu apa yang akan terjadi dengan rangkaian yang sama tetapi beban induktif dengan bola lampu. Masih berperilaku dengan cara yang sama.
gOldie_E36

6

R1 R2 terlalu besar untuk semua kecuali MOSFET terkecil yang tidak ada. Ini berarti mereka berputar jauh lebih lambat daripada yang dinyalakan. Ini berarti bahwa bahkan jika Anda berpikir bahwa Anda telah memasukkan beberapa deadtime yang masuk akal, Anda masih akan bisa menembak dan makan fets. Saya menggunakan transistor ekstra untuk melakukan mematikan cepat, nilainya.


Saya menggunakan waktu mati 100 ms antara mengubah arah, tetapi pada percobaan terakhir saya tidak mengubah arah sama sekali. (Untuk mengesampingkan kemungkinan menembak melalui mengubah arah.) Dan transistor tetap saja goreng. Berapa ukuran resistor yang Anda rekomendasikan untuk R1 dan R2? Dan bagaimana saya harus menghubungkan transistor ekstra untuk mematikan?
gOldie_E36

5

Salah satu MOSFET saluran P teratas aktif - ini menentukan arah. Ketika Anda menerapkan PWM ke kedua MOSFET saluran N (seperti tersirat dalam sirkuit Anda), Anda mendapatkan shoot-thru pada setengah dari jembatan H.

Anda TIDAK harus menerapkan PWM ke kedua perangkat saluran N - hanya menerapkannya di kanan bawah ketika perangkat saluran P kiri atas diaktifkan ATAU hanya menerapkannya ke kiri bawah ketika perangkat saluran P kanan atas diaktifkan.

EDIT - juga, MOSFET saluran P Anda terbalik.


1
Dan lain kali, uji dengan catu daya terbatas saat ini sehingga jika karena alasan tertentu Anda memiliki kesalahan, setidaknya transistor Anda tidak merusak diri mereka sendiri.
Bimpelrekkie

Saya tidak menerapkan PWM ke kedua N-channel dalam waktu bersamaan. Hanya satu per satu. Saya dapat menggunakan kedua arah untuk pertama kalinya, tetapi selama operasi P-channel MOSFET dan BJT yang dimiliki oleh arah yang digunakan mati.
gOldie_E36

Tidak ada tembakan-thru yang terjadi, dan untuk beberapa kali terakhir saya menggunakan bola lampu 12V 55W secara seri dengan catu daya. Jadi saya dapat mendeteksi shoot-thru (bohlam menjadi terang) dan pada saat yang sama saya dapat melindungi MOSFET saya dari situasi shoot-thru. Masalahnya adalah bahwa transistor mati selama operasi normal.
gOldie_E36

@ gOldie_E36 jika demikian mengapa Anda mengatakan ini "MOSFET N-channel digerakkan dengan sinyal PWM" dan mengapa diagram Anda menunjukkan "PWM" sebagai nama pada kedua MOSFET kanal N? Juga, MOSFET saluran P Anda terbalik.
Andy alias

1
Orang hanya dapat membantu Anda jika Anda memberikan informasi yang akurat. Jika Anda memberikan informasi buruk, Anda membuang waktu orang. Mengingat apa yang telah terjadi, bagaimana mungkin orang percaya bahwa penempatan komponen fisik Anda lebih akurat daripada diagram Anda?
Andy alias

3

Satu hal yang menonjol bagi saya adalah kurangnya dioda flyback di seluruh FET Anda. Karena motor Anda adalah beban induktif, motor ini dapat dengan mudah menghasilkan tegangan tinggi di seluruh FET Anda saat ada perubahan arus (V = L dI / dT dalam induktor). Tegangan-tegangan ini dapat dengan mudah melebihi nilai kerusakan dari persimpangan sumber-saluran di FET Anda.

Untuk mengatasi ini, sebuah dioda biasanya diletakkan sejajar dengan persimpangan untuk menjaga voltase tetap di cek seperti:

Dioda jembatan H

(Gambar dari: http://www.modularcircuits.com/blog/articles/h-bridge-secrets/mosfets-and-catch-diodes/ )

Ini "menjepit" tegangan melintasi FET.


Ah maaf itu salahku. Saya lupa dari gambar. Ada dioda flyback untuk masing-masing MOSFET antara sumber dan saluran. Dioda 1N4007 bertujuan ke arah yang benar. Saya akan memperbarui gambar. Saya sudah menguji dan mengganti dioda pada P-channel MOSFET tetapi situasinya sama. :(
gOldie_E36

MOSFET memiliki dioda bawaan yang biasanya cukup. The 1N4007 adalah dioda penyearah frekuensi rendah yang tidak cocok untuk switching cepat. Jika Anda menggunakan dioda eksternal mereka harus tipe Schottky.
Bruce Abbott

Jadi MOSFE tidak perlu dioda flyback sama sekali? Saya hanya menggunakan ~ 490Hz, apakah ini terlalu cepat untuk dioda 1N4007?
gOldie_E36

1

@ Otis benar tentang R1 dan R2 - pengaturan ini akan menyebabkan waktu switching yang sangat lambat pada P fets. Anda dapat mempertimbangkan untuk menggunakan pompa pengisian driver P Fet khusus alih-alih BJT + Pullup.

Beberapa pemeriksaan kewarasan

Bisakah Anda memeriksa sinyal mengemudi? Sangat penting untuk mengaktifkan atau menonaktifkan FET.

forward: 
p1 on    p2 off 
n1 off   n2 on

backwards: 
p1 off    p2 on 
n1 on     n2 off

brake: 
p1 off    p2 off
n1 on     n2 on

Coba yang berikut ini:

  • hentikan PWM apa pun
  • lepaskan semua beban
  • berkendara dari kode Anda sebagai: p1 on n1 off, tunggu 500ms, p1 off n1 off 100ms (dead time), p1 off n1 on 500ms, p1 off n1 off 100 ms (dead time) dan ulangi. Ini menghasilkan sinyal uji yang mudah di-debug.
  • sekarang output p1 n1 dari h-bridge akan beralih dari GND ke 12V dengan baik. Gunakan cakupan untuk mengujinya, atau Anda dapat menggunakan bola lampu kecil juga. Hubungkan bola lampu antara GND dan output p1 n1 - itu akan berkedip sehingga p1 baik. Hubungkan ke output 12V dan p1 n1 - itu akan berkedip sehingga n1 baik.
  • jika Anda memiliki ruang lingkup, verifikasi apakah p1 dan n1 tidak melakukan lintas silang. Memeriksa sinyal ini Anda tidak akan melihat nilai selain GND bersih, 12V bersih, dan beberapa GND mengambang dalam waktu mati 100 ms.
  • jika Anda tidak memiliki ruang lingkup, Anda dapat mengatur waktu mati yang cukup besar, misalnya 500 ms - tidak ada salahnya :) tetapi dapat menghemat P fet Anda.
  • sekarang hubungkan motor Anda, bukan bohlam, itu akan berjalan dan lambat / berhenti seperti bohlam. Ini memverifikasi bahwa Fets ok.

Masalah

  • Berhati-hatilah dengan pengaturan PWM di atas. Anda dapat dengan mudah menggoreng fets Anda. Anda dapat menyalakan sisi P saat Anda mengganti sisi N, oleh karena itu Anda membuat celana pendek (lebih kecil atau lebih besar - itu dapat bertahan dengan 20% PWM tergantung pada kualitas sumber daya Anda).

Biasanya, mikrokontroler memiliki driver PWM 4 output khusus dengan kontrol deadband. 4 sinyal PWM dapat menggerakkan 4 fets, dan sinyal ini disinkronkan dan dibalik, ditambah waktu mati diperhitungkan. Lihat PWM mikrokontroler PIC untuk lebih lanjut. http://www.ermicro.com/blog/wp-content/uploads/2009/01/picpwm_03.jpg

Karena Arduino tidak dibuat untuk tujuan itu, Anda mungkin ingin menggunakan beberapa logika dasar untuk menghasilkan sinyal PWM yang tepat. Tujuannya adalah untuk memastikan bahwa n1 dan p1 selalu didorong saling melengkapi, serta n2 dan p2. Anda bisa mendapatkannya dengan menggunakan beberapa BJT lagi: http://letsmakerobots.com/files/YG_H-Bridge1.jpg Kemudian Anda memiliki dua pin yang dapat Anda drive PWM.

Anda mungkin lebih suka menggunakan beberapa gerbang logika, seperti ini: https://e2e.ti.com/blogs_/b/motordrivecontrol/archive/2012/03/26/so-which-pwm-technique-is-best-part-2 dan kemudian Anda memiliki maju / mundur bersih, ditambah satu pin PWM yang mendorong kecepatan.

Artikel ini mungkin layak untuk diperiksa: http://www.modularcircuits.com/blog/articles/h-bridge-secrets/h-bridge_drivers/


Terima kasih atas jawabannya. Bagian ini masih belum jelas bagi saya: "JANGAN coba pengaturan PWM di atas. Itu hanya salah. Anda tidak dapat mengontrol sisi P saat Anda mengganti sisi N, karena itu Anda membuat celana pendek." Apakah ini masih berlaku jika saya tidak mengganti sisi P dengan PWM, hanya sisi N, dan jika saya menggunakan tenggat waktu yang besar antara mengubah arah? Jika ya, bagaimana caranya?
gOldie_E36

1
Maaf saya harus tegas soal itu. Ada beberapa cara untuk menggerakkan PWM. Cara standar untuk menggerakkan P1 N2 dari output PWM komplementer, dan mengusir P2 N1 dari sepasang output PWM komplementer lainnya, dengan cara ini Anda memerlukan output 4 pwm yang mengendalikan semuanya dengan benar. Solusi Anda bisa berhasil, jika Anda sangat berhati-hati, dan tidak perlu mengerem motor. Misalnya p1 on, n1 off, p2 off, n2 PWM adalah pengaturan yang valid - meskipun Anda tidak dapat mengerem motor, dan kecepatan motor akhir akan tergantung pada PWM plus beban mekanis. (Jika n2 mati selama PWM, tidak ada tegangan drive pada motor.)
Gee Bee

Saya telah mengulangi jawaban saya. Jika ini bukan tugas pendidikan, saya sarankan menggunakan pengontrol H-bridge yang sudah jadi, atau pengontrol H-bridge dengan FET eksternal.
Wah Bee

0

Apakah Anda yakin Anda beralih di P-FET kiri atas ketika Anda menerapkan PWM ke kanan bawah N-FET?

Anda harus mengecek orientasi P-FET Anda. Sepertinya P-FET mundur dan Anda mendapatkan disipasi daya yang berlebihan ketika dioda tubuh P-FET melakukan. Ukur tegangan pada P-FET dalam kondisi kesalahan Anda. Jika Anda melihat sekitar 0,6 V di seluruh FET ketika 2N2222 aktif, maka P-FET terbalik. Periksa juga tegangan gerbang P-FET selama kondisi gangguan untuk memastikannya melihat kurang dari 0,2 V.

Apakah Anda masih melihat arus gangguan jika Anda melepas motor dari sirkuit?


Hai, terima kasih atas jawaban Anda. Saya akan memeriksa orientasi lagi. Masalahnya adalah saya tidak bisa melakukan apa pun selama reproduksi, karena hanya butuh beberapa detik untuk membunuh MOSFET (dalam hati, tanpa panas yang berlebihan). Dan tentu saja saya harus membayar MOSFET :) Tanpa motor dan dengan catu daya 1A saya melakukan banyak pengukuran. Jika saya menyalakan P-FET, tegangan yang melintasi sumber-drain minimal (sekitar 0,01 V). Saya akan menguji ulang rangkaian di malam hari dengan catu daya 5A dan tanpa beban induktif (motor). Saya berencana menggunakan bola lampu saja.
gOldie_E36

Cobalah untuk tidak menyalakan P-FET (jangan drive 2N2222) dan lihat apakah Anda mencapai batas saat ini ketika Anda PWM N-FET. Jika demikian, dioda tubuh P-FET sedang melakukan. Coba juga ganti beban motor Anda dengan resistor 100 ohm DAN letakkan resistor 10 ohm antara catu daya dan sirkuit Anda. Anda akan membatasi arus jika N-FET memendekkan dioda tubuh P-FET ke ground. Resistor juga akan memberi Anda waktu untuk melakukan pengukuran sebelum dipanaskan.
user2661956

Ide bagus untuk pengujian, terima kasih. Saya sudah menggunakan resistor antara PSU dan H-bridge untuk perlindungan.
gOldie_E36
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.