Arduino – DIY マイクロコントローラ デバイスの紹介
最近では、Arduin で何でもコンピューターに変えることができます。キーパッド付きの LED または LCD が表示されている場合は、おそらく誰かがそのデバイスの中にラップトップを入れています。これらの中には、マイクロコントローラーと呼ばれる 6 つ、7 つ、またはそれ以上の小さなコンピューターが含まれているものもあります。
それらの中で、Arduinoが最も人気があります。コンピューターを内蔵した電子デバイスを作成することを想定している場合は、それらが何であり、どのように機能するかを理解する必要があります。
そうして初めて、PCB ショップに行っていくつかのキットを購入し、プロジェクトを開始できます。
Arduino とは?
これらの小さなマイクロコントローラ コンピュータは、通常、組み込みコントローラまたはマイクロコントローラ ユニット (MCU) と呼ばれます。これらは、コンピュータに組み込まれると想像できるすべてのものを備えた完全なコンピュータ システムです。それらはすべて、プログラムを実行するための中央処理装置、一時的な RAM ストレージ、永続的なストレージ システム、および周辺機器とアクセサリ用のポートを備えています。
マイクロコントローラーは、いくつかの特定のタスクのみを実行するように構築および設計された、単なる個人用のコンピューターです。ほとんどの場合、これらのデバイスは、ROM に格納された単一のプログラムのみを実行します。ただし、外部ストレージを接続することもできます。いずれにせよ、それらは低電力デバイスと見なされており、これがその魅力です。 1 台を完全に電池で動かすことができます。
Arduino は、マイクロコントローラのオープンソース版です。独自のデバイスを設計および構築するために使用できるハードウェア開発ボードとして提供されます。いじくり回す人、愛好家、メーカーに最適な Arduino は、特定のタイプのボード設計とそれらを製造する会社、およびそれらを使用する開発者のコミュニティの両方を指します。このため、ほぼすべての電子機器または PCB 部品ショップやカタログでそれらを見つけることができます。
プラットフォームは、物理的なプログラム可能な回路基板、マイクロコントローラー自体、およびデバイスが実行するプログラムの作成に使用するソフトウェアまたは IDE (統合開発環境) として提供されます。新しい開発者の間で人気のある Arduino は、別のプログラマ デバイスを必要としないため、市場に出回っている他のマイクロコントローラ キットよりもはるかにユーザー フレンドリーです。 C++ プログラミング言語の簡略化されたバージョンも使用しているため、プログラミングが簡単です。
1.1 Arduino を構成するものは何ですか?
Arduinos ボードには、マイクロコントローラ キットとして、単一のプリント回路基板 (PCB) にいくつかのコンポーネントとインターフェイスがプリインストールされています。これらのコンポーネントは、マイクロコントローラーへのアクセスを容易にする標準的なフォーム ファクターを設定します。
基本コンポーネント
デザインは何年にもわたって変更されてきましたが、基本的な Arduinos キットには次のコンポーネントが含まれています。
ピンコネクタ
ピンには 2 つのタイプがあります。特定のパターンで配置されたこれらのピンを使用すると、MCU をカスタム デバイスの一部である他のボードに接続できます。また、「シールド」と呼ばれるドーター アドオン ボードをデバイスに取り付けることもできます。
デジタル – オンまたはオフに設定できる単一状態の入出力 (I/O) コネクター。ほとんどの Arduino には 14 個のデジタル ピンがあります。
アナログ – 値の範囲を読み取ることができるマルチステート コネクタ。これらを使用して、よりきめ細かい制御を行うことができます。通常は 6 つあります。
グラウンド – GND とラベル付けされたこれら 3 つのピンを使用すると、デバイスを接地できます。
パワー – 4 つの 5 ボルト ピンと 5 つの 3 ボルト ピンは、アドオンやその他のアタッチメントに電力信号を提供します。
パルス幅変調 (PWM) – 8 つのデジタル ピンは PWM コネクタとしても機能します。 LED の調光などのアプリケーションのアナログ出力信号をシミュレートできます
アナログ リファレンス (AREF) – 外部電圧を調整するために使用されることもありますが、これらの 9 つのピンはめったに使用されません。
電源コネクタ
このコネクタは、デバイスに電力を供給し、LED、センサーなどに低電圧電力を生成します。このコネクタは、AC アダプターまたは小型バッテリーのいずれかで使用できます。
メイン プロセッサ
マイクロコントローラ CPU は、プラットフォームの心臓部です。これにより、Arduino はコマンドを実行し、さまざまな入力と実行中のプログラムに基づいて決定を下すことができます。同じチットは Arduino のタイプによって異なりますが、ほとんどのキットは Atmel チップセットに異なるオンボード メモリを提供します。標準プロセッサ モデルには以下が含まれます:
- ATmega8
- ATmega168
- ATmega328
- ATmega1280
- ATmega2560
シリアル コネクタ
ほとんどの Arduino ボードには、MCU をコンピュータに接続して新しいプログラムをロードできる標準の USB ポートが付属しています。一部のボードでは、USB ポートは電源コネクタとしても機能します。
リセット ボタン
Arduino ボードには、リセット ボタンも含まれています。ボタンを押すと、リセットピンがトリガーされます。現在実行中のコードを再起動します。何かをテストしたいが、プログラムに再起動機能がない場合に最適です。
電源 LED インジケータ
一部の Arduino MCU には、ユニットがオンになっているかどうかを示す電源 LED が付属しています。通常、チームを電源に接続すると LED が点灯します。このライトが点灯しない場合は、何か問題がある可能性があります。
信号送受信 LED
TX (送信) および RX (受信) としてラベル付けします。これらの LED は、シリアル通信アクティビティを示します。ユニットがデータを受信または送信しているときに、微妙な視覚的手がかりを提供します。
電圧調整器
ユーザーがプログラムすることはできませんが、Arduino ボードには電圧レギュレータが付属しています。レギュレータは、ボードを通過する電圧の量を制御します。もちろん制限はありますが、ほとんどのプロジェクトでは電圧が 20 ボルトを超えることはありません。
1.2 Arduino アドオンとアクセサリ
上記のコンポーネントはすべての Arduino MCU に付属していますが、プラットフォームで使用できる電子コンポーネントはこれらだけではありません。ボードはすべての IEEE および ISO 規格に準拠しています。したがって、市販の部品を使用して、Arduino を価値のあるプロジェクトにすることができます。ただし、Arduinos プラットフォームの仕様では、プラットフォームに準拠したアドオンが必要です。このため、ほとんどの Arduino サプライヤは、いくつかの Arduino センサーとシールドも搭載しています。それらがなければ Arduino プロジェクトは完成しません。
センサー
少しのコードを使用して、Arduinos に一連のセンサーを制御および操作させることができます。
ほとんどの Arduino ベンダーは、測定用のセンサーを提供しています:
- 光
- 気温
- 屈曲度
- プレッシャー
- 近さ
- 加速
- 一酸化炭素
- 放射能
- 湿度
- 気圧
Arduino ブレッドボード
プロジェクト用の無はんだブレッドボードを入手することもできます。このボードを使用すると、コンポーネントを PCB に恒久的にはんだ付けすることなく、回路設計とレイアウトのプロトタイプを作成して実験することができます。レイアウトとデザインのアイデアを実験してテストできます。ブレッドボードには電源アダプターがありません。したがって、ジャンパー線を使用してメインボードから電源を供給していただけると助かります。
盾
Arduino パズルの最後のピースは Arduino シールドです。これらの構築済みのドーター ボードは、メインの Arduino ボードの上に取り付けて、追加機能を提供します。
いくつかの標準シールド機能には以下が含まれます
モーターの制御
インターネット接続
モバイルおよびセルラー ネットワーキングと通信
LCD スクリーン コントローラ
Arduino の開発者は、公式の Arduino 統合開発環境(IDE)を使用して Arduino プログラムを作成しました。オープンソースの Java ベースの IDE は、Windows、Mac、および Linux を実行するすべてのプラットフォームで動作します。デバイスにアップロードする前に、Processing プログラミング言語で記述されたコードを記述およびテストするための独自の環境が提供されます。
Arduino Uno – 最も人気のある Arduino
2 つとして同じプロジェクトはないため、Arduino グループはいくつかの Arduino ボード タイプの仕様をリリースしました。これらのボード タイプの中で最も人気のあるものの 1 つが Arduino Uno です。
初心者向けの優れた選択肢として、22 ドルの Arduino Uno MCU はベアボーン ボードです。必要なコンポーネントのみが付属していますが、プロジェクトを独自の方法で設計できます。 25 グラムのこの 68.5 x 53.4 ミリの PCB は、筐体内にも収まるほど軽量です。
現在のバージョンである Arduino Uno R3 には以下が付属しています:
- ATmega328P マイクロプロセッサ
- 14 個のデジタル入出力ピン
- 6 つの PWM 出力
- 内蔵 LED (ピン 13 に接続)
- 5 ボルト、3.3 ボルト、アースピン電圧出力
- 6 つのアナログ ピン
- USB ポート
- 電源ジャック
- リセット ボタン
- 5 ボルトの動作電圧
- 32 KB のフラッシュ メモリ
- 2 KB の SRAM と 1 KB の EEPROM
Uno は最初の Arduino ボードではないかもしれませんが、最も積極的に使用されています。また、インターネット全体に数多くのプロジェクト チュートリアルやフォーラムがあり、最も文書化されたフォーム ファクターでもあります。
Arduino Mega – BIG プロジェクト向け MCU
事実上 4 つの Uno MCU を 1 つにまとめた Arduino Mega は、大規模なプロジェクト向けのボードです。 Atmel ATmega2560 チップを搭載した Mega は、4 つのシリアル ポートと、電源用の個別の USB ポート、およびコンピューターとのインターフェイスをテーブルにもたらします。追加の USB ポート専用の ATmega16U2 プロセッサも備えています。電池で MCU に電力を供給することもできます。
メガには以下があります:
- 54 個のデジタル入出力 (I/O) ピンと 14 個の PWM 互換ピン
- 16 個のアナログ IO ピン
- USB ポート
- パワージャック
- リセット ボタン
メガの多数のピンがボードを作ります。多くのデジタル I/O 接続、LED、またはボタンを必要とするプロジェクトで使用できます。
Mega MCU の残りのパワーは、プロセッサから供給されます。 ATmega2560 マイクロプロセッサは、投げられることは何でもできます。 16 MHz のクロック速度、256 KB のフラッシュ、8 KB の SRAM、および 4 KB の EEPROM を備えています。これらすべてにより、Arduino Mega は 3D プリンターとロボット工学の頼りになるボードになっています。
Arduino ESP8266 でプロジェクトをワイヤレスに
ボード自体にワイヤレス ネットワークが搭載されている Arduino ボードはありません。利用可能なシールドのいずれにもありません。プロジェクトをワイヤレスにしたい場合は、Arduino ESP8266 Wi-Fi モジュールが必要です。
より新しいモジュールがありますが、ESP2866 がオリジナルです。スタンドアロン MCU として動作するように設計されていない可能性がありますが、今日のモバイル市場ではプロジェクトに必要です。
ただし、まともなワイヤレス接続を提供します。このボードには、これらの機能を中央の Arduino に接続するための電源、グランド、送信および受信ピンと、オン/オフの「チップ制御パワーダウン」(CH_PD) ピンが付属しています。リセットと 2 つの GPIO データ ピンもあります。
欠点が 1 つあります。 ESP8266 には 5 ボルトの電源信号が必要です。 Arduino 標準の 3.5 ボルトでは動作しません。
PWM サブシステムとフレームワーク
5.1 Arduino PWM
パルス幅変調(PWM)は、周波数と振幅が変化する方形波信号を使用してアナログ信号をシミュレートします。 Arduino プラットフォームは、これらの信号を使用して、デジタル出力でアナログ回路を調整します。
Arduino PWM プラットフォームは、独立したハードウェアではありません。すべての Arduino ボードには、システム コールが組み込まれています。それらを使用するプログラムを作成する必要があります。このコマンドは、互換性のあるピンを介して方形波を作成します。
5.2 Arduino Nano – 小型デバイスやプロジェクトに最適
Arduino プラットフォームの最も小型のバージョンである Arduino Nano は、ATmega328P プロセッサと Atmega168 コプロセッサを搭載したはるかに小さなパッケージで、Uno と同じ機能を提供します。他の Arduino ボードと同じ Arduino IDE ソフトウェアも使用します。
ナノには以下が付属しています:
- 14 個のデジタル I/O ピンと 6 個の PWN 互換ピン
- 8 つのアナログ ピン
- 5 ボルトの動作電圧
- リセット ボタン
- USB ポート
- シリアル ポート
- 32 KB のフラッシュ メモリ
- 8 KB SRAM
- 1kb EEPROM
そのサイズにもかかわらず、Nano は次のプロジェクト タイプで優れた機能を発揮します:
- 組み込みシステム
- 自動化
- ロボット工学
- 制御システム
- 計装
Raspberry Pi ではなく Arduino を選ぶ理由
市場に出回っている MCU は Arduino プラットフォームだけではありません。同じ機能を提供する他の MCU の多くは、Raspberry Pi を含む Arduino です。ただし、PI は Arduino とは大きく異なる製品です。
1 つには、Raspberry PI は完全なコンピューターです。 Arduinoはそうではありません。マイクロコンピュータは、コンピュータを構成する小さなコンポーネントの 1 つです。このため、Arduino プラットフォームは、PI が提供する機能のごく一部しか提供していません。たとえば、本格的なコンピューター オペレーティング システムではなく、小さなアプリケーションを実行することしかできません。
6.1 の長所と短所
だからといって、Arduino が役に立たないわけではありません。機能するためにコンピュータ全体を必要としない電子プロジェクトに最適です。コンポーネントやセンサーに直接接続して、セットアップをほとんど、またはまったく行わずに、箱から出してすぐにすべてを機能させることができます。
Arduino ファームウェアがどのように機能するかにより、Arduino はこれを行うことができます。ファームウェアは、Arduino ラインのボードを実行するコア ソフトウェアです。また、USB 経由でコンピュータと通信して、プログラム可能なすべての機能にアクセスできます。ファームウェアはいつでも交換できますが、その必要はありません。再起動する必要さえありません。コードをアップロードしたら、どこでもすぐに実行できます。キーボード、ディスプレイ、またはアプリケーションを選択する手段は必要ありません。取締役会は、あなたが与えた 1 つの仕事を実行します。
6.2 Raspberry Pi は完全なコンピューターです
対照的に、Raspberry Pi は完全に機能するコンピューターです。実行するにはオペレーティング システムが必要であり、動作を維持するには再起動が必要です。ボードには内部ストレージもありません。実行したいプログラムを保存するために、外部のマイクロ SD ケアを提供していただけると助かります。イーサネットが内蔵されていますが、カードを取り外さずにソフトウェアを更新できます。
Pi は、メモリと HDMI グラフィック プロセッサを備えた Broadcom Arm-v6 CPU で動作します。このボードはキーボードとマウスでもうまく機能し、Linux の変種をロードして、そのような小さなマシンを使用してすべてを駆動したことが誰にもわからないようにすることができます。それはそれがどれほど強力かです。これは、完全なユーザーの対話性とすべての処理能力を必要とするプロジェクトに最適なプラットフォームです。
ただし、この能力により、Pi は小規模なプロジェクトには不向きです。たとえば、わずか 8 行のコードで、Arduino ボードに LED を接続して点灯させる必要があります。 Pi は、開始するだけで、コードに加えて追加のライブラリが必要になります。これは、オペレーティング システムが既にボードにインストールされている場合です。
これは、Raspberry Pi と Arduino を同じ種類のプロジェクトに使用できないという意味ではありません。 Pi に Arduino と同じ機能を提供するフレームワーク ライブラリをインストールできます。プロジェクトで Pi を使用するには、より多くの時間と労力が必要です。
Arduino には、より大きな開発者コミュニティもあります。エレクトロニクス プロジェクトで最も人気のあるプラットフォームである Arduino には、初心者向けのチュートリアルが多数用意されており、作業を開始するのに役立ちます。
とにかく、これら 2 つのボードのどちらかを選択する必要はありません。彼らは一緒にうまく機能します。適切なアタッチメントを使用すると、Arduino は Raspberry Pi のドーター拡張ボードになり、両方のカードが互いの機能にアクセスできるようになります。
結論
Arduino は、日曜大工のエレクトロニクス プロジェクト専用に設計されたマイクロコントローラー プラットフォームのファミリーです。これらの使い捨てボードには、タスクを自動化するために必要なものがすべて付属しています。コンピューターにプラグインし、コードを作成して実行するだけです。残りはそれが行います。
プロジェクト用のコンポーネントを入手するには、すぐにご連絡ください。当社の担当者は Arduino を理解しており、どのボードとアドオンが適切かを判断するお手伝いをする準備ができています。 Arduino を Raspberry Pi に接続してデバイスを次のレベルに引き上げるのに必要な部品を入手することもできます。
産業技術