MOSFETで動作するソレノイド回路がArduino入力を破壊する


14

外部電源を使用するいくつかのソレノイドバルブに電力を供給するために、一連のPCBを作成しました。Arduinoをゲート信号として使用して、BS170 MOSFETでそれらを切り替えますJason Sによるソリューションをベースにしまし

これは私の回路がどのように見えるかの実例です: MOSFET作動バルブ回路

PCBをテストすると、それらのほとんどが正常に動作することに気付きましたが、一部は動作しません。問題ありません。おそらくはんだ付けの問題です。

しかし、これらの欠陥のあるものは、2つのArduinoデジタルピンを破壊することに成功しました!1つは5 Vの定電圧を取得し、もう1つはHIGH信号を送信すると0.2 Vを出力し、LOW信号を送信すると0.5 Vを出力します。奇妙なもの。

だから、欠陥のある回路が何らかの形で16 VをArduinoに流して破壊したと思います。

このシナリオでArduinoを高電流から保護するにはどうすればよいですか?

ツェナーダイオードについては知っていますが、入力を保護するためにそれらを配置する方法がわかりません。

技術的な案内:


その図面を作成するためにどのソフトウェアを使用しましたか?本当によさそうです!
mjh2007

3
フリッツティング。この種のもの、PCBデザインにも無料で非常に便利です:)
Dyte

12V(> Vgate_drive)のゲート-ソースツェナーダイオードは、誘導性負荷を持つすべての回路で実際に非常に良いアイデアです。ツェナーをMOSFETの近くに取り付けます。アノードはソースに、カソードはゲートに接続されるため、ツェナーは通常は導通しません。|| 26c / 10 Digikeyのはるかに優れたMOSFETは、たとえばIRLML6346 SOT23です。またはNDT3055 48c / 10 TO251リード、またはRFD14N05 71c / 10 TO220。
ラッセルマクマホン

...When MOSFETs fail they often go short-circuit drain to gate...ここから引用。
アブドラkahraman

16Vを適用すると、Arduinoポートが停止する場合があります。
アブドラkahraman

回答:


7

回路は理論的には問題ありません。
実際の改善が必要です。

12V(> Vgate_drive)のゲート-ソースツェナーダイオードを追加することは、誘導性負荷のあるすべての回路で実際に非常に良いアイデアです。これにより、ドレイン電圧の予期しない変動または極端な変動の際に、「ミラー容量」がドレインに結合することにより、ゲートが破壊的に高く駆動されるのを防ぎます。

ツェナーをMOSFETの近くに取り付けます。
ツェナーが通常は導通しないように、アノードをソースに接続し、カソードをゲートに接続します。

10kのゲート駆動抵抗(図を参照)は大きく、ターンオフとオンが遅くなり、MOSFETでより多くの電力が消費されます。これはおそらくここでは問題ではありません。

このアプリケーションでは、選択したMOSFETは非常にわずかです。
Digikeyの在庫から入手できるはるかに優れたMOSFETには次のものがあります。

26c / 10 Digikey IRLML6346 SOT23 パッケージ、30V、3.4A、0.06オームの場合、Vgsth = 1.1V =ゲートしきい値電圧

NDT3055 48c / 10 TO251は60V、12A、0.1オーム、Vgsth = 2Vをリード

RFD14N05 71c / 10 TO220 50V、14A、0.1オーム、2V Vgsth。


追加されました

3Vゲート駆動用の適切なMOSFET:

システムは、ちょうど私の長い答えをゴミ箱に移動:-(ので- 。MOSFETは、3V3電源コントローラと適切にこれ以上2Vよりも仕事へのVthの(しきい値電圧)を持たなければならない。
提案FETのいずれもが、この要件を満たしていません。
彼らは、上のファッションの後に動作する可能性があり現在の負荷が、underdrivenれ、過度ロッシー、溶液を大きな荷重に十分に延びていない。
サイズ範囲のIRF FETは(Vgsthの)のVthを持っていることを懸念しているようです<= 2ボルトALL IRF3708以外7で始まる4桁の数字コードを有します。

OK FETにはIRFxxxxが含まれ、xxxx = 3708 6607 7201 6321 7326 7342 7353 7403 7406 7416 7455 7463 7468 7470

他にもありますが、提案されているものはすべて、Vth = 4Vまたは5Vであり、このアプリケーションでは限界またはそれよりも悪いようです。

VgsthまたはVthは、実際のゲート駆動電圧より少なくとも1ボルト低く、理想的には数ボルト低くする必要があります。


ええ、私は安全な方法に行きます、そして別のMOSFETを使用します。それとツェナーダイオードはおそらくトリックを行う必要があります。私が住んでいる場所の近くにある電化製品店には、あなたが提案したMOSFETはありませんが、IRF520、IRF530、IRL530、IRF540、IIRF730、IRF740、IRF830、IRF840、IRF9140、IRF9530、IRF9540、IRF9610、IRFBC620、 IRFDD110、IRFD9120、IRFP50、IRFP054、IRFP140、IRFP150、IRFP450、IRFP520、IRFP9140、IRFZ44、IRFZ46。たとえば、IRF520に行くことができると思いますか?連続ドレイン電流は6.5〜9.2 Aです。最小Vgsは2V、最大4Vですが、arduinoでは大丈夫ですか?
ダイテ

IRF520はArduinoを運転するのに適しています。最小Vgsと「最大Vgs」は、あなたが思うほど正確ではありません。それは、MOSFETが導通を開始する「しきい値」電圧です。最大Vgsは大幅に高くなっています(Arduinoが出力する5v以上)。その高い定格(20V?)を超えると、FETが破壊されます。
ブライアンベッチャー

IRF520 MOSFETと5.1 Vツェナーダイオードを使用して動作し、おそらく今回も動作し続けるでしょう:)助けてくれてありがとう。すべての答えは私を助けましたが、あなたはツェナーダイオードと特定のタイプのMOSFETについて詳しく説明しましたので、あなたの答えを受け入れます。
ダイト

@Russell McMahon:私のarduinoが出力する電圧は(3V3ではなく)5Vです。それで状況は変わりませんか?
ダイテ

10

バルブの定格は12Vで500mAです。16Vを供給すると、500mA以上の電流が流れます。抵抗であると仮定すると、667mAを消費します。

使用したMOSFETの絶対最大電流は連続500mAです。絶対最大定格を超えるものはデバイスを破壊する可能性があります。これがおそらく信頼性の問題に直面している理由です。

MOSFETの故障モードは保証されていないため、Arduinoの出力を損傷するような故障が発生することは驚くことではありません。

リンクされた回答でJasonが言及したように、BS170はMOSFETの選択として不適切です。より良いものが必要です。数アンペアの定格のTO-220ケースのいずれかを選択します。また、Vgsの定格が5Vロジックレベルドライブであることを確認する必要があります。

どのダイオードを使用していますか?


こんにちはマーク、私が使用するダイオードは1N4001です:fairchildsemi.com/ds/BS/BS170.pdf
Dyte

5

バルブの定格は最大500 mAです。BS170の定格も500 mAですが、これはセールスピッチの数値です。ここでは(かなり)定格の高いFETを使用しますが、TO92を介して500mAを使用すると緊張します。そして、ほとんどの場合、1kのゲート抵抗がありますが、これは貧弱なFETのスイッチングが遅すぎて0.5Aに耐えられない可能性があります。

どのダイオードを使用していますか?0.5Aに対応する必要があるため、1n4148では対応しません。確かではありませんが、値の可動部分がプレーンコイルよりもさらに大きなスパイクを引き起こす可能性があるため、実際には0.5を超える可能性があります。

あなたの写真では、Arduinoの接地接続を流れる値の戻り電流があります。私はそれをスターに変えます:arduinoのグラウンドを直接電源に接続します。または、はるかに良い:オプトカップルを使用して、Arduinoから大電流回路を分離します(2つの別個の電源を使用します)。


私が使用するダイオードは1N4001です。diode.com/datasheets/ds28002.pdf光カプラーについては考えていませんでした。それは調査するのに良いシナリオです:)
Dyte

5

Arduino出力が高インピーダンスの場合にゲートが浮かないように、MOSFETにゲート-ソース抵抗を付ける必要があります。ソレノイド電源とArduino電源は分離されているため、このシナリオが発生する可能性があります(Arduinoが常に最初にオンになっていることを設計で保証していない限り)。

MOSFETは実際にはソレノイドから遠く離れていますか?もしそうなら、もっと近くに移動する必要があります。ドレインがプロトボードストリップに直接差し込まれ、赤いワイヤがソレノイドとダイオードにつながるように移動します。次に、GNDストリップへの短いソース接続を行います。電力を運ぶ長いループではなく、長いゲート信号ループ(低電力時)を使用することをお勧めします。Arduinoをソ​​レノイドに近づけて、これらのループをすべて短くすることもできます。


ゲート-ソース抵抗とは、MOSFETのゲートとソース間の抵抗を意味しますか?これが馬鹿げた質問ならごめんなさい:)。どのような価値を提案しますか?距離については、いや、すべてのコンポーネントが互いに近いので、この回路を自己エッチングPCBにはんだ付けします。arduinoへのワイヤのみが長くなります。私は言わなければならない、私はこれが違いを生むという考えがなかった。電流がさらに数センチ進む時間の差は無視できると思いました。
Dyte

@Dyteはい、ゲートとソース間の抵抗。
アダムローレンス

@Dyte、私は10kのゲートソース抵抗がうまくいくと思います。目標は、MOSFETのゲートが浮かないようにすることです。寄生回路素子に対して「勝つ」ことができるほど低く、MOSFETをオンにする必要があるときにArduino出力が「勝つ」ことができるほど高いものが必要です。
ajs410

3

図の回路は、Arduinoボードと+16電源のマイナス端子間の唯一の接地接続が短い青色のワイヤである場合、正常に見えます。一方、偶発的なショートにより、悪いことが起こる可能性があります。実際の問題のあるボードがどのようにレイアウトされているかを見ずに、何が起こったのかを正確に推測することは困難です。

MOSFETの仕様をプッシュしている場合、ゲートから+16を送信するような方法で簡単に失敗する可能性がありますが、抵抗が図のようになっている場合、Arduinoはかなり適切に保護されるはずです。


1

まず、モーターやコイルを使用する場合、これらの安価な2n4001-4ダイオードではなく、超高速スイッチングダイオードが必要です。スイッチングが速いほど、BEMFが大きくなります。また、arduinoからMOSFETゲートへの914スイッチングダイオードと、ゲートからグランドへの10kプルダウン抵抗を使用します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.