Arduinoのデジタルピンから直接リレーを接続することが望ましくない理由


8

Arduinoを介したリレーの制御に関するさまざまな回路図を調べた後、ほとんどの場合、リレーはIから5ボルトの出力を直接リレーに供給するのではなく、個別の電源をリレーコイルに切り替えるために使用されていることに気付きましたArduinoの/ Oピン。たとえば、5ボルトのDPDTリレーと小型のDCモーターがあります。Atmel328プロセッサを使用して、Arduino UNO(SMDクローン)から直接両方を駆動したいですか?続行することをお勧めしますか?

そうでない場合(可能性が高い):

  1. 誰かが詳細な説明をすることはできますか?現在の制限などに関する重要な注意事項もあるでしょうか?

  2. Arduinoを危険にさらすことなく、そのようなコンポーネントをどのように制御できますか?これを達成するためのいくつかの一般的な手段は何ですか?

  3. 同様に、一般的にArduinoボード(または任意のマイクロコントローラーユニット)に損害を与える可能性のある他のデバイスは何ですか?

私は非常に慎重になりたい初心者です。ありがとう。


最近では、Arduinoとの初めての出会いで、私はI / Oピンを直接使用しておもちゃのDCモーターに通電し、同じ方法でDPDTリレーをオン/オフして方向を変更しました。何も間違いではないようです。
DorkOrc、2015年

回答:


8

プロセッサピンの電流駆動能力は厳密に制限されています。

  • 定格値は、ドライブが高いか低いかによって異なります。
  • 一部のプロセッサは数mAしか供給しませんが、通常、公式に取得できるのは20〜30 mAの範囲です。

  • 通常、プロセッサには合計電流制限があり、数個のピンだけが同時にピーク電流を提供できます。

  • プロセッサピンには大きな実効抵抗があり、電流が増えると高電圧が「降下」し、負荷が増えると低電圧が上昇します。ピンは最大の短絡電流で特定される場合がありますが、その時点で、高いピンは低く引き下げられ、低いピンは高く引き下げられるため、短絡電流の適用範囲は制限されます。

ピン定格プロセッサあたり25 mAと言っても、利用できる電力はわずかです。25 mA・4Vは言う(5V Vccで1V低下)= 100 mW。ほとんどのモーターはそれよりも多くかかり、ピンでのみ電力を供給されると非常に小さなモーターのみが正常に動作します。

電気モーターとインダクターは、電流が遮断されると非常に高い電圧を生成します-数十ボルトの電圧が簡単に発生し、100以上のボルトが発生する可能性があります。インダクターのモーターをプロセッサーピンに直接接続することは破壊への誘いです。マーフィーはしばしば義務を負います。


典型的なホビーモーターを駆動するトランジスタ(バイポーラまたはMOSFET)は10セントのコスト(または機器の廃棄なし)で、ポートピンの電流ドライブをバッファリングして「増幅」することができます。1つまたはいくつかのプロセッサがあり、それらが半ランダムに死ぬことを望まない場合は、トランジスタまたは他のバッファを使用することは非常に良いアイデアです。

MOSFETモータードライバー - ここから -セクション8。

電圧と部品番号はその例です-適切に選択してください。
NPNバイプロアは、トランジスタベースに入力抵抗を追加して使用できます。

ここに画像の説明を入力してください

双方向ドライバー-ドライバーが負荷を高低に駆動できるようにしたい場合、この回路は機能します。ここから
入力ゲートは、この場合は内部プロセッサドライバです。2つのMOSFETゲートは、プロセッサピンに直接接続します。Vddは通常、プロセッサーのVmax_drive_outを超えてはなりません。適度なデザインで動作するように少し高くすることができます。この回路(または同様の回路)と1つの追加トランジスタで、はるかに高い電圧負荷を駆動できます。

ここに画像の説明を入力してください


ULN2803(および他のファミリメンバー)などのバッファは、8チャネルx 500 mA /チャネルを駆動し、いくつかを並列化できます。


ULN2803は、エミッタが共通のグラウンドに接続された8 x "ダーリントン"トランジスタ、8 x "オープンコレクタ"(未接続)コレクタ、および過電圧スパイクに対処するための8つのフライバックダイオード(オプションを使用)です。(入力特性がわずかに異なるULN280xファミリがあります)。

このデバイスは、8 x 500 mAプルダウンドライバーを提供する手頃な価格の手段を提供します。出力からV +に接続された負荷は、入力ピンがハイに駆動されるとオンになります。数回使用すると、簡単に使用できて非常に便利です。(パッケージあたり7チャネルのULN200xファミリもあります)。

YouTubeの「ハウツー」ビデオ


ステッピングモーターの駆動

ここに画像の説明を入力してください

ここもまた


小さなDCモーターの駆動 -その他の多くのこと。

ここに画像の説明を入力してください 膨大な数の例

Digikey-必要に応じて1で利用可能 $ 0.72 / 1、1000で$ 0.29。

ULN2803データシート


Sparkfunでの販売 -かなり安くできますが、これらは入手可能です


7

I / Oピンからの推奨出力(ソースまたはシンク)は20 mAです。絶対最大値は40 mAです。リレーコイルは、特に最初の通電時に、それ以上の電力を消費する可能性があります。これにより、出力ピンが損傷します。その後、最終的に失敗します。

何も間違いではないようです。

いいえ、まだです。:)

Arduinoを危険にさらすことなく、そのようなコンポーネントをどのように制御できますか?これを達成するためのいくつかの一般的な手段は何ですか?

トランジスタまたはMOSFETを使用します。

同様に、一般的にArduinoボード(または任意のマイクロコントローラーユニット)に損害を与える可能性のある他のデバイスは何ですか?

データシートに記載されている最大電圧または電流制限を超えるもの。特にコイル(リレーやモーターなど)は、オフになると逆電圧が高くなる可能性が高いため、スナバダイオードが必要です。

続行することをお勧めしますか?

上記で書いた内容に注意し、Arduinoからモーターとリレーを駆動する方法について、Web上の多くの記事を読むことをお勧めします。あなたはこれを試みた最初の人ではありません。


4

Arduino PlaygroundからこのPDFの簡単な回路を見てください。小さなリレーを駆動する単一のトランジスタを示しています。

ラッセルが彼の答えで言っているように、ULN2803または同様のチップは、複数の小さなリレーを駆動できるチップであり、必要に応じて、複数のトランジスタを使用するよりも優れています。

(また、私がリンクした回路のダイオード「D1」に注意してください-これが必要です。これは、リレーがオフになったときに発生する誘導スパイクによってトランジスタが最終的に損傷するのを防ぐためです。ULNスタイルのチップの一部には、このダイオードが組み込まれています。これが、回路図で常に表示されるとは限らない理由です。)


3

Arduinoを本当に保護するには、ピンにフォトカプラーを取り付けて、回路をそのように駆動することをお勧めします。次に、誘導性電荷の浮遊や短絡がarduinoに影響することはありません。

それらはOptoIsolatorsまたはOptocouplersとも呼ばれます。

http://forum.arduino.cc/index.php?topic=143954.0


1
あなたは全く正しいです、光アイソレータは行くのに最適な方法です。これを行うもう1つの方法は、分離は少し少なくなりますが、依然として便利ですが、オペアンプ(Op Amp)をバッファーとして使用します。これらは「フォロア」オペアンプとも呼ばれます。既製のオペアンプでこれを行うことができ、回路を特定の方法でレイアウトするだけであることに注意してください。en.wikipedia.org/wiki/Buffer_amplifier#Op-amp_implementation
Dan

3

いくつかの基本的なものとして見てみましょう。これらは多くの質問の基礎になっているようです:

コンデンサは、電源がオンになっているときに大量の電流を消費し、充電されるにつれて徐々に減少します。この曲線は、RC時定数とも呼ばれます(これは近いですが、正確ではありません " http://www.electronics-tutorials.ws/rc/rc_1.html "でより適切に説明できます)。

コンデンサをオフに切り替えると、値、充電電圧、および負荷に応じて、指数関数的レート(RC時定数)で放電します。これにより、停電時に短時間電源を保持するのに適しています。

インダクターは、最初にスイッチがオンになったときに何も消費しませんが、電流がその電圧が供給電圧に達するまで指数関数的に増加します。

スイッチを切ると、インダクタの誘導フィールドが崩壊し、極性が反転します。電圧は通常、外部から制限されるまで無制限に上昇します。オフにすると、立ち上がり時間と電圧が速くなります。誘導電荷が散逸すると、エネルギーは流れなくなります。リレーなどの誘導性負荷がポートピンに接続されている場合、この電流はどこに流れると思いますか?

このため、誘導性負荷の両端にダイオード(一般にフライホイールダイオードと呼ばれます)を配置する必要があります。Google for:「インダクター/コンデンサーの充電曲線」これを説明する素晴らしいグラフがたくさんあります。回路を見ると、電源の最も正の側に接続されている陰極+があります。この構成では、電圧が反転しない限り(誘導性負荷がオフになっている場合)導通しません。

もう1つの一般的な誤解は、マイクロプロセッサーI / Oを最大にロードできることです。これは悪いデザインです。彼らはあなたにピンごと、ポートごと、そしてチップのための最大を与えます。室温では、おそらくしばらくの間それでうまくいくでしょう。

40mA負荷のポートがあると仮定します。出力は、電源レールから0.005です。オームの法則を使用して、1つのピンで20ミリワットの電力を消費しています。この負荷率では、内部電力損失のため、デバイスの過熱に時間がかかりません。

出力ピンの状態が変化すると、内部容量と外部容量を充電または放電する必要があるため、より多くの電流が流れます。

いくつかの仕様で最高温度が得られる場合は、ケース温度ではなく、ダイのジャンクション用です。プラスチックは伝導性が悪いため、パッケージのヒートシンクではあまり効果がありません。これを周囲温度と一緒に検討してください。定格は通常25℃のデバイスで与えられます。暖かくなったときにどうなるかを推測します。

楽しんで、

ギル

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