Arduino外部電源。 USBコネクタの電流保護。 ArduinoUnoを電源に接続する

この記事では、レッスンプログラムのデモ用に選択されたArduinoUNOR3コントローラーについて説明しています。 現在、この情報を注意深く調べる必要はありません。 システムのハードウェアについて理解するために、ざっと目を通すことをお勧めします。 今後、この記事は参考情報として利用できるようになります。

レッスンプログラムのコントローラーとして、ArduinoUNOR3ボードを選びました。 しかし、他のボードを使用することを妨げるものは何もありません。 UNOR3がArduinoコントローラーの最も一般的なバージョンであるというだけです。

ArduinoUnoを電源に接続する

次の図では、回路図と同じ名前のすべてのボードコンポーネントを識別しています。 コンポーネントを見つけるためのガイドとして使用できます。 疑問符でマークされた2つのコンポーネントに注意してください。 それらはボード上にありますが、プロジェクトには表示されません。

重要なのは、回路の分析と説明です。 次のセクションでは、3つの主要なブロックのそれぞれがどのように機能するかを説明します。 以下の見出しをクリックして、各トピックを展開してください。 次の図は、回路をより詳細に示しています。

コントローラに関する一般的な情報。

ArduinoUNOR3はATmega328マイクロコントローラーをベースにしています。 彼:

  • 14個のデジタル入出力ポート(そのうち6個はPWM変調モードをサポート)。
  • 6つのアナログ入力。
  • クロック周波数16MHz;
  • USBポート;
  • 電源コネクタ;
  • インサーキットプログラミングコネクタ;
  • リセットボタン。

ボードには、マイクロコントローラの動作を保証するために必要なすべてのコンポーネントがあります。 接続するのに十分 USBケーブルコンピュータに電源を入れます。 マイクロコントローラはブロックに取り付けられているため、障害が発生した場合に簡単に交換できます。

その中に存在するすべてのコンポーネントを分析します。 実際、このヒューズは、温度の上昇とともに抵抗が増加する抵抗器にすぎません。 ただし、過負荷時に溶断する従来のヒューズとは異なり、このコンポーネントには、動作状態が通常に戻ったときに自動的にリセットする機能があります。

500ミリアンペア以下の電流値の場合、ヒューズ抵抗値は低いままです。 したがって、電流は自由に流れます。 させる より最新ヒューズを通過すると、ヒューズが加熱されて抵抗が増加します。 増加した抵抗は電流を遮断し、ヒューズが飛んだように効果的に機能します。 ただし、短絡または過負荷が解消されると、ヒューズは冷却され、抵抗値は再び低下して元の状態に戻ります。

仕様。

マイクロコントローラタイプ ATmega328P
マイクロコントローラー供給電圧 5 V
推奨ボード電圧 7〜12 V
最終的に 許容電圧パワーボード 6〜20 V
デジタル入力/出力 14(うち6つはPWMをサポート)
PWM変調出力 6
アナログ入力 6
デジタル出力の許容電流 20 mA
許容出力電流3.3V 50 mA
フラッシュメモリ容量(FLASH) 32 KB(そのうち、0.5 KBはブートローダーによって使用されます)
音量 ランダム・アクセス・メモリ(SRAM) 2 kB
不揮発性メモリ(EEPROM)の量 1 kB
クロック周波数 16 MHz
ボードの長さ 68.6 mm
ボード幅 53.4 mm
重み 25 g

プログラミング。

ただし、500ミリアンペアの値は参照にすぎないことに注意してください。 ヒューズを効果的に「解除」する電流の実際の値は、少なくとも500ミリアンペアです。これは、ヒューズの解除にかかる時間と周囲温度の値によって異なります。

このヒューズの動作について詳しく知りたい場合は、データシートを参照してください。 ヒューズ保護。 静電気放電の最も一般的な例は、カーペットの上を歩いたり、ゴム底のカーペットを敷いたりして、金属製のドアノブを開こうとすると衝撃を与えることです。 この場合、カーペットに対する靴の摩擦により、身体に電荷が蓄積され、これらの負荷がドアハンドルにすばやく伝達され、わずかな衝撃が発生します。

コントローラは統合環境からプログラムされます ソフトウェア Arduino(IDE)。 プログラミングは、STK500プロトコルを使用して常駐ブートローダーの制御下で行われます。 ハードウェアプログラマーは必要ありません。

マイクロコントローラは、ブートローダーを使用せずにICSPソケットを介してプログラムできます。 ソースダウンローダーは無料で入手できます。

あなたの体が充電されていて、ドアノブの代わりにあなたが触れる場合 プリント回路基板 電子回路、ウェイトが転送され、回路が損傷する可能性があります。 静電気放電は常に発生し、ほとんどの場合、電流が低すぎてショックを感じることができないため、気付かれることはありませんが、より敏感なコンポーネントに損傷を与える可能性があります。

ヒューズと同様に、バリスタも抵抗器ですが、この場合、抵抗値は、その両端の電圧が増加するにつれて減少します。 保護バリスタの操作。 これは、これらのチップにはすでに保護構造が組み込まれているためです。ほとんどの場合、これで十分です。

他のArduinoコントローラーとは異なります。

Arduino UNO R3は、以前のバージョンとは異なり、コンピューターへの接続にUSB-UARTFTDIブリッジを使用しません。 この機能は、ATmega16U2マイクロコントローラーによって実行されます。

供給システム。

UNOボードは、USBポートまたは外部ソースから電力を供給できます。 電源は自動的に選択されます。 ACアダプターやバッテリーを外部電源として使用できます。 アダプターは2.1mmコネクターを介して接続されます(センターピンはプラスです)。 バッテリーはPOWERコネクタのGNDピンとVinピンに接続されています。

基本的に、フェライトはノイズ抑制に使用されます。 これらのコンポーネントは、「抵抗ネットワーク」または「抵抗ネットワーク」と呼ばれます。 発振器はプロセッサの心臓部であり、クロックパルスの生成を担当します。 事実上すべての既存のプロセッサはジェネレータを使用し、それらの実装は多くの場合非常に似ています。 いくつかのコンポーネントを使用していますが、この回路の動作は比較的複雑であるため、詳細には触れず、基本的な特性のみに焦点を当てます。

USBコネクタの電流保護

水晶の機能は、時計の基礎となる正弦波を作成することです。 内部的に、プロセッサは正弦波を方形波に変換します。 一部のプロセッサと集積回路では、電源投入後にこの抵抗が動作を開始する必要がありますが、これは必須ではなく、その使用はチップメーカーの方向性によって異なります。 通常、各ダイには、その動作に最適なコンデンサ値の仕様があり、値を選択するのは設計者の役割です。

外部電源の電圧は6〜20 Vの範囲にすることができます。ただし、デバイスの動作が不安定なため、電圧が7Vを下回らないようにすることをお勧めします。 また、供給電圧を12V以上に上げることは望ましくありません。 スタビライザーが過熱して故障する可能性があります。 それらの。 推奨される供給電圧範囲は7〜12Vです。

コンデンサの値が正しくないと、水晶の共振周波数が変化したり、水晶が機能しなくなったりする可能性があります。 この回路では、コンデンサは「結合コンデンサ」として機能します。 この機能を備えたコンデンサは、デジタル集積回路の動作において非常に重要です。 事実上すべてのICメーカーは、電源ピンに接続されたコンデンサの使用を推奨しており、100ナノファラッドが古典的な値です。 価値に加えて、デカップリングコンデンサを使用する場合の最も重要な問題はその場所であり、問​​題の集積回路の電源接点のできるだけ近くに配置する必要があります。

次のピンを使用して電源を接続できます。

ヴィン ボードは外部電源から給電されます。 5VUSB電源やその他のスタビライザー出力とは関係ありません。 この接点を介して、ボードにアダプタから電力が供給されている場合は、デバイスの電力を受け取ることができます。
5V ボード電圧レギュレータ出力。 それはどんな電源でも5Vの電圧を持っています。 この出力を介してボードに電力を供給することはお勧めしません。 スタビライザーは使用されていないため、マイクロコントローラーの障害につながる可能性があります。
3 V 3 ボード上の電圧レギュレータからの電圧3.3V。 この出力からの最大許容消費電流は50mAです。
GND 普通線。
IOREF ボードの動作電圧に関する出力情報について。 拡張ボードは信号値を読み取り、5Vまたは3.3V電源モードに切り替えることができます。

メモリー。

デカップリングコンデンサの主な機能は次のとおりです。 電源からのノイズを除去し、集積回路に侵入しないようにします。 さらに、集積回路内で内部で生成されたノイズをフィルタリングし、他のボードコンポーネントへの伝播を防ぎます。 デジタル回路プロセッサなどは、通常はクロックパルスと一致するピークに電流を流します。 コンデンサには、プロセッサが必要とする電流ピークを供給するのに十分なエネルギーを蓄える役割があります。 これはプロセッサのリセットピンであり、同じものがアクティブローです。つまり、ピンの電圧がゼロになると、プロセッサはリセット状態になります。

マイクロコントローラには、次の3種類のメモリがあります。

  • 32 kBフラッシュ(フラッシュ);
  • 2 kB RAM(SRAM);
  • 1 kB不揮発性メモリ(EEPROM)。

入力と出力。

14個のデジタルピンのそれぞれを出力または入力として使用できます。 出力の電圧レベルは5Vです。各出力の出力電流と入力電流を20mAのレベルに制限することをお勧めします。 このパラメータの最大許容値は40mAです。 各ピンには、20〜50kΩのプルアップ抵抗が内蔵されています。 抵抗はソフトウェアで無効にすることができます。

したがって、抵抗は電圧を5ボルトに保ち、プロセッサが誤ってリセット状態になるのを防ぎます。 しかし、なぜダイオードはこのCPUピンにのみ配置され、他のピンには配置されないのでしょうか。 ただし、リセットピンはソフトウェアの書き込み中に使用されるため特殊なケースであり、一部のプログラミング手法では、プロセス中にこのピンに12ボルトが印加されます。 したがって、チップメーカーは2つの内部保護ダイオードのうちの1つを取り外します。

このレギュレーターが正しく機能するために、メーカーは1マイクロファラッドのコンデンサーをプロセッサーのピン27に接続することを推奨しています。 シリアルプロセッサ間で通信する抵抗。 リセットラインの容量結合。 ただし、その機能に関する詳細情報は受け取っていません。


一部のピンは追加機能を実行する場合があります。

シリアルインターフェース:ピン0(Rx)および1(Tx)。 TTLシリアルデータの受信(Rx)および送信(Tx)に使用されます。 これらのピンは、USB-UARTブリッジとして使用されるATmega16U2のデータピンに接続されています。

拡張ヘッダーのように見えますが、ボードにはんだ付けされておらず、その機能に関する詳細情報はありません。 底板にあるはんだジャンパーです。 電子設計では、設計者は通常、ジャンパーを使用して「異なるベース」間でこの接続を行います。これにより、1点でのみ接続され、ボードの不要な領域に電流が流れるのを防ぎます。 このジャンパーは工場ですでに閉鎖されています。

外部電源用コネクタ

次の図は、メインの処理装置を示しています。 メインプロセッサの概略図。 次に、プロセッサの基本回路がどのように実装されているかを見てみましょう。 セラミック共振子は水晶のようなコンポーネントです。つまり、プロセッサのクロック信号の基礎となる正弦波を生成する役割も果たします。

外部割り込み:ピン2および3。これらのピンは、外部割り込み入力として使用できます。 低レベル、立ち上がりまたは立ち下がりエッジで割り込み、または信号レベルを変更するようにソフトウェアで設定できます。

PWM:ピン3、5、6、9、10、11。これらは、8ビットの分解能でPWM変調モードで動作できます。

通常、セラミック共振子は水晶よりもコンパクトで、すでにコンデンサが内蔵されているため、回路が簡素化されます。 これが、共振器が利用可能なスペースがほとんどないコンパクトなアプリケーションで最も頻繁に使用される理由です。

設計者は、推奨されているようにピン7を分離するために別のコンデンサを配置することもできますが、この回路には含まれていません。 これにより、このピンのロジックレベルが低くなり、プロセッサがリセットされます。 この図では、信号間に物理的な接続があるかどうかに関係なく、同じ名前のすべての信号が相互接続されていることに注意してください。

シリアルインターフェースSPI:ピン10(SS)、11(MOSI)、12(MISO)、13(SCK)。

LED:ピン13。 LEDはピン13に接続されています。次の場合に点灯します。 上級出力信号。

TWIインターフェース:出力A4またはSDAおよびA5またはSCL。 TWI通信インターフェース。

arduinoボード UNOは A0〜A5のラベルが付いた6つのアナログ入力。 アナログデジタル変換の分解能は10ビットです。 デフォルトでは、入力電圧は0〜5Vの範囲のグランドを基準にして測定されますが、AREFピンとソフトウェア設定を使用して変更できます。

図に示されているコネクタをボード上のコネクタと一致させてください。 次の図は、このブロックに存在するコンポーネントを示しています。 12ボルトを超える電圧を使用すると、レギュレーターが過熱する可能性があるため、お勧めしません。 このコネクタはメスタイプで、2.1mmに設定されています。つまり、中央のピンの直径は2.1mmです。 これは、使用するソースにオスコネクタが必要であり、これも2.1ミリメートルで中心が正であることを意味します。

このため、バージョンにはネジ留め式端子タイプのコネクタが含まれています。 したがって、適切な接続がなくても、使用している任意のソースを使用できます。 この場合、ソースからプラグを切り取り、ワイヤを端子にまっすぐねじ込みます。 入力ジャックから流れる電流は、保護ダイオードである最初のコンポーネントをすぐに検出します。 極性が反転したソースは、負の中心のモデルになります。 逆極性のソースが保護されていない電子カードに誤って接続されると、フローが発生します 逆電流、これによりいくつかのコンポーネントが燃焼し、ほとんどの回路が破壊されます。

ボードのさらに2つのピンには、次の機能があります。

AREF。マイクロコントローラのADCの基準電圧。

リセット。 低レベルこのピンをオンにすると、マイクロコントローラがリセットされます。

通信インターフェース。

Arduino UNOモジュールには、コンピューター、別のUNOボード、または他のマイクロコントローラーと通信する手段があります。 これを行うために、ボードにはTTL(5 V)ロジックレベルのUARTインターフェイスがあり、ピン0(RX)と1(TX)に接続されています。 ボード上のATmega16U2チップは、UARTインターフェイスをコンピューターのUSBポートに接続します。 コンピュータポートに接続すると、 仮想COMコンピュータプログラムがArduinoと連携するためのポート。 ATmega16U2ファームウェアは標準のUSB-COMドライバーを使用し、追加のドライバーのインストールは必要ありません。 Windowsオペレーティングシステムの場合、適切な.infファイルが必要です。 Arduino統合ソフトウェア環境(IDE)には、ボードとの間で簡単なテキストデータを送受信できるシリアル通信モニターが含まれています。 ボードには、USB通信に対応する信号のステータスを示すRXおよびTX LEDがあります(ただし、ピン0および1のシリアルインターフェイスにはありません)。

つまり、ダイオードは、極性が正しいソースの場合は閉じたスイッチとして、極性が反転したソースの場合は開いたスイッチとして機能すると言えます。 ボードを逆接続から保護するダイオード。 ただし、このダイオードの両端の電圧降下は大きく、1.1 Vに達するため、熱放散の増加という望ましくない影響が発生し、効率が低下する可能性があります。 この場合、ショットキーダイオードの両端の電圧降下が小さかったため、ショットキーダイオードの方が適しています。

これらのマップのデザインをダウンロードして、図の違いを比較してみてください。 さらに、レギュレータはフィルタとしても機能し、電源によって生成される電圧に存在する可能性のあるノイズを減衰させます。 5ボルトのコントローラー。 このレギュレーターはリニアレギュレーターと呼ばれ、電源電圧を下げるために使用する媒体は、単に余分なエネルギーを放散し、熱として捨てることです。 このため、効率が低く、通常は非常に高温になる場合があります。

ATmega328マイクロコントローラーはI2C(TWI)およびSPI通信インターフェースもサポートします。

自動(ソフトウェア)リセット。

プログラムをロードする前に毎回リセットボタンを押す必要がないように、UNOボードには接続されたコンピュータから開始されるハードウェアリセット機能があります。 ATmega16U2のデータフロー制御(DTR)信号の1つは、0.1uFコンデンサを介してATmega328のリセットピンに接続されています。 DTR信号がローになると、マイクロコントローラのリセットパルスが生成されます。 このソリューションでは、Android統合プログラミング環境(IDE)からワンクリックでプログラムをダウンロードできます。

しかし、そのような機能は否定的な結果につながる可能性があります。 UNOボードを操作しているコンピュータに接続する場合 Macシステム OS XまたはLinuxの場合、プログラムがボードに接続するたびにマイクロコントローラーがリセットされます。 0.5秒以内に、ブートローダーがUNOボードで起動されます。 ダウンローダープログラムは無関係なデータを無視しますが、接続が確立された直後にパケットから数バイトを受信する場合があります。 Arduinoボード上のプログラムが最初の起動時にデータを受信することを提供している場合、接続後約1秒の遅延でデータを送信する必要があります。

UNOモジュールには、自動リセット機能を無効にするためにカットできるトラックがあります。 トラックには「RESET-EN」の刻印があります。 自動リセットは、5V電源ラインとRESETピンの間に110オームの抵抗を接続することによって無効にすることもできます。

USBポートの過負荷保護。

Arduino UNOボードでは、USBインターフェースからの電力線はリセット可能なヒューズで保護されています。 電流が500mAを超えると、短絡が解消されるまでヒューズが回路を遮断します。

ArduinoUNOコントローラーの概略図。


ATmega328Pマイクロコントローラーに基づくフラッグシップ開発プラットフォーム。 に Arduino Unoマイクロコントローラーでの便利な作業に必要なすべてが提供されます:14個のデジタル入力/出力(そのうち6個はPWM出力として使用できます)、6個のアナログ入力、16 MHzの水晶発振器、USBコネクター、電源コネクター、インサーキットプログラミング(ICSP)とリセットボタン。

接続とセットアップ

手術室でArduinoUnoボードを操作するには Windowsシステム統合環境をダウンロードしてコンピューターにインストールします Arduinoの開発-ArduinoIDE。

何かがうまくいかなかった?

ボード要素


マイクロコントローラーATmega328P

Arduino Unoプラットフォームの心臓部は、8ビットAVRマイクロコントローラーATmega328Pです。

マイクロコントローラーATmega16U2

ATmega16U2マイクロコントローラーは、ATmega328PマイクロコントローラーをコンピューターのUSBポートに接続します。 PCに接続すると、ArduinoUnoは仮想COMポートとして定義されます。 16U2ファームウェアは標準のUSB-COMドライバーを使用するため、外部ドライバーをインストールする必要はありません。

電源ピン

    VIN:外部電源からの電圧(USBからの5Vまたは他の安定した電圧とは関係ありません)。 この出力を通じて、両方を送信できます 外部電源、および外部アダプタがデバイスに接続されている場合は電流を消費します。

    5V:出力はボードスタビライザーから5Vの電圧を受け取ります。 このスタビライザーは、ATmega328マイクロコントローラーに電力を供給します。 5V出力を介してデバイスに電力を供給することはお勧めしません。この場合、電圧安定器は使用されないため、ボードの障害につながる可能性があります。

    3.3V:ボードレギュレータから3.3V。 最大電流出力-50mA。

    GND:根拠のある結論。

    IOREF:このピンは、マイクロコントローラの動作電圧に関する情報を拡張ボードに提供します。 電圧に応じて、拡張ボードは適切な電源に切り替えるか、レベルコンバーターを使用できます。これにより、5Vデバイスと3.3Vデバイスの両方で動作できるようになります。

I/Oポート

    デジタル入力/出力:ピン0〜13
    1の論理レベルは5V、0は0Vです。最大出力電流は40mAです。 プルアップ抵抗はピンに接続されています。ピンはデフォルトで無効になっていますが、ソフトウェアで有効にすることができます。

    PWM:ピン3、5、6、9、10、11
    8ビットのアナログ値をPWM信号として出力できます。

    ADC:ピンA0〜A5
    6つのアナログ入力。それぞれがアナログ電圧を10ビットの数値(1024の値)として表すことができます。 ADCのビット深度は10ビットです。

    TWI /I²C: SDAピンとSCLピン
    同期プロトコルを使用して、2本のワイヤを介して周辺機器と通信します。 動作するには-Wireライブラリを使用します。

    SPI:ピン10(SS)、11(MOSI)、12(MISO)、13(SCK)。
    これらのピンを介して、SPIインターフェースを介して通信が実行されます。 動作するには-SPIライブラリを使用します。

    UART:ピン0(RX)および1(TX)
    これらのピンは、USB-UARTコンバーターとして機能するATmega16U2マイクロコントローラーの対応するピンに接続されています。 シリアルクラスを介してArduinoボードをコンピューターまたは他のデバイスと通信するために使用されます。

LED表示

USBType-Bコネクタ

USB Type-Bコネクタは、コンピュータを使用してArduinoUnoプラットフォームをフラッシュするように設計されています。

外部電源用コネクタ

7 V〜12Vの外部電源用コネクタ。

ATmega328P用のICSPコネクタ

ICSPコネクタは、ATmega328Pマイクロコントローラのインサーキットプログラミングを目的としています。 SPIライブラリを使用すると、これらのピンはSPIインターフェイスを介して拡張ボードと通信できます。 SPIラインは6ピンコネクタにルーティングされ、デジタルピン10(SS)、11(MOSI)、12(MISO)、および13(SCK)にも複製されます。

ATmega16U2用のICSPコネクタ

ICSPコネクタは、ATmega16U2マイクロコントローラのインサーキットプログラミングを目的としています。