インターネットはスマートフォンを介してほぼすべてのポケットに到達しており、約32億人がインターネットを使用していると推定されていますが、驚くべきことに約84億台のデバイスがインターネットを使用しています。つまり、電子機器はインターネットを使用する人口の2倍以上がインターネットに接続されており、私たちの周りのものを毎日よりスマートにしています。主な理由は、一般にIOTとして知られているモノのインターネットのブームであり、2020年末までに204億台のデバイスがインターネットに接続されると推定されています。したがって、この開発に遅れずについていきたい場合は、準備を整えてIOTプロジェクトに取り組むときが来ました。幸運なことに、ArduinoやEspressifSystemsなどのオープンソースプラットフォームによって、作業が非常に簡単になりました。
Espressif SystemsはESP8266-01を発売し、多くの愛好家がIOTの世界に参入するための扉を開きました。それ以来、コミュニティは力強く発展し、多くの製品が市場に出回っています。現在、ESP32 Espressifの発売により、物事は新しいレベルに引き上げられました。この小さな安価な8ドルのモジュールは、Wi-FiとデュアルモードBluetoothを内蔵したデュアルコア32ビットCPUであり、すべての基本的な電子機器プロジェクトに十分な量の30 I / Oピンを備えています。これらの機能はすべて、Arduino IDEから直接プログラムできるため、非常に使いやすいです。十分にエキサイティングです…では、ESP32を使い始めるために深く掘り下げましょう。
必要な材料:
- ESP32モジュール
- Arduino IDE
- プログラミングケーブル(マイクロUSBケーブル)
- MCUの魂の石(冗談です)
ESP32のハードウェア情報:
ESP32モジュールを見てみましょう。ESP8266-01モジュールよりもわずかに大きく、ほとんどのピンヘッダーがI / Oピンが向かい合っているために分割されているため、ブレッドボードに適しています。これは素晴らしいことです。ボードを小さなパーツに分割して、各セグメントの目的を理解しましょう
ご覧のとおり、モジュールの心臓部は32ビットマイクロプロセッサであるESP-WROOM-32です。また、以下で説明するボタンとLEDがいくつかあります。
マイクロUSBジャック: マイクロUSBジャックは、USBケーブルを介してESP32をコンピューターに接続するために使用されます。ESPモジュールのプログラミングに使用されるほか、シリアル通信をサポートしているため、シリアルデバッグにも使用できます。
ENボタン: ENボタンは、ESPモジュールのリセットボタンです。このボタンを押すと、ESPモジュールで実行されているコードがリセットされます
起動ボタン:このボタンは、プログラムをArduinoからESPモジュールにアップロードするために使用されます。ArduinoIDEのアップロードアイコンをクリックした後に押す必要があります。ENボタンと一緒にブートボタンを押すと、ESPはファームウェアアップロードモードに入ります。何をしているのかわからない限り、このモードで遊んではいけません。
赤色LED:ボード上の赤色LEDは、電源を示すために使用されます。ボードに電力が供給されると、赤く光ります。
青色LED:ボード上の青色LEDはGPIOピンに接続されています。プログラミングによってオンまたはオフにできます。私のようないくつかの中国のクローンボードでは、このLEDも赤い色である可能性があります。
I / Oピン:ここで主要な開発が行われました。ESP8266とは異なり、ESP32では、ブレークアウトピンを介してモジュールのすべてのI / Oピンにアクセスできます。これらのピンは、デジタル読み取り/書き込み、アナログ読み取り/書き込み、PWM、IIC、SPI、DACなどの機能があります。これについては後で詳しく説明します。ただし、興味がある場合は、ESP32データシートのピンの説明から学ぶことができます。
ESP-WROOM-32:これはESP32モジュールの心臓部です。これは、Espressifシステムによって開発された32ビットマイクロプロセッサです。技術者の方は、ESP-WROOM-32データシートをお読みください。また、いくつかの重要なパラメータを以下にリストしました。
ESP32 |
|
仕様 |
値 |
コアの数 |
2 |
建築 |
32ビット |
CPU周波数 |
|
Wi-Fi |
はい |
ブルートゥース |
はい |
羊 |
512 KB |
閃光 |
16 MB |
GPIOピン |
36 |
通信プロトコル |
SPI、IIC、I2S、UART、CAN |
ADCチャネル |
18チャンネル |
ADC分解能 |
12ビット |
DACチャネル |
2 |
DAC解像度 |
8ビット |
今のところ、これはハードウェアについて知る必要があるすべての情報です。ESP32を使用してさまざまなプロジェクトに移行する際に、さらに詳しく説明します。
ESP32のプログラミング
このチュートリアルで前述したように、強力なコミュニティサポートがあるため、ArduinoIDEを使用してESP32をプログラムします。ただし、ESPツールチェーンの他のソフトウェアを使用してESP32をプログラムすることもできます。
また、このチュートリアルでは、Windowsプラットフォームの使用を開始する方法についてのみ説明します。他のプラットフォームからの場合は、以下のリンクをたどってください
- Mac用の手順
- Debian / UbuntuLinuxの説明
- Fedoraの説明
- openSUSEの手順
Arduino IDEの準備:
ステップ1:では、始めましょう。最初のステップは、ArduinoIDEをダウンロードしてインストールすることです。これは、リンクhttps://www.arduino.cc/en/Main/Softwareをたどり、IDEを無料でダウンロードすることで簡単に実行できます。すでにお持ちの場合は、最新バージョンであることを確認してください。
ステップ2: 次に、このリンクに進んでGITをダウンロードすると、「Git-2.16.2」という名前のダウンロードが自動的に開始されます。ダウンロードが完了するのを待ちます。
ステップ3: ダウンロードが完了したら、exeファイルを開いてコンピューターにGITをインストールします。何も変更せずにすべてのオプションを表示するには、[次へ]をクリックするだけでインストールを続行できます。
ステップ4:「GITGUI」という名前を検索して、インストールしたばかりの名前を見つけます。GITbashを開かないでください。デフォルトでは、GITGUIはCドライブのProgramfilesディレクトリにインストールされます。
ステップ5: GITGUIアプリケーションを起動します。次に、「 クローン終了リポジトリ 」を選択します。
ステップ6:次のウィンドウが表示されます。このウィンドウで次の操作を行う必要があります。
ソースの場所の貼り付けの下: https : //github.com/espressif/arduino-esp32.git
ターゲットディレクトリの下に貼り付け: / hardware / espressif / esp32
ArduinoIDEで [ファイル]-> [設定] をクリックすると見つかり ます
私のは C:/ Users / Aswinth / Documents / Arduino なので、ターゲットディレクトリは C:/ Users / Aswinth / Documents / Arduino / hardware / Espressif / esp32になり ます。貼り付けると、画面は次のようになりました。
ステップ7:正しいロケーションパスを確認したら、[クローン]をクリックすると、次の画面が表示されます。
ステップ8:もう一度「 GitBash 」を検索して開きます。次のウィンドウが表示されます。
ステップ9:「 cd」 と入力し、ターゲットディレクトリをここにもう一度貼り付けます。貼り付け後の鉱山は以下のようになりました。次に、Enterキーを押します。
ステップ10: git submodule update --init –recursive を貼り付け、 Enterキーを押し て次の画面を表示します。
STEP 11:今オープン 「/ハードウェア/ espressif / esp32 /ツール」 ファイルにして、ダブルクリックし get.exe 。プロセスが終了するのを待ちます。完了すると、ディレクトリに次のファイルが表示されます。
これで、ArduinoIDEがESP32で動作する準備が整いました。先に進んで、それが機能しているかどうかを確認しましょう。
Arduino IDEを使用したESP32のプログラミング:
ステップ1:マイクロUSBケーブルを介してESP32ボードをコンピューターに接続します。モジュールの赤いLEDがハイになることを確認して、電源を確保します。
ステップ2: Arduino IDEを起動し、 [ツール]-> [ボード]に 移動して、以下に示すように ESP32Devボードを選択し ます
ステップ3:デバイスマネージャーを開き、ESP32が接続されているCOMポートを確認します。以下に示すように、鉱山はCOM8に接続されています
ステップ4: Arduino IDEに戻り、 [ツール]-> [ポート] で、ESPが接続されているポートを 選択します 。選択すると、IDEの左下隅に次のようなものが表示されます。
ステップ5: Blinkプログラムをアップロードして、ESP32モジュールをプログラムできるかどうかを確認しましょう。このプログラムは、1秒間隔でLEDを点滅させる必要があります。
int LED_BUILTIN = 2; void setup(){pinMode(LED_BUILTIN、OUTPUT); } void loop(){digitalWrite(LED_BUILTIN、HIGH); delay(1000); digitalWrite(LED_BUILTIN、LOW); delay(1000); }
プログラムはArduinoのまばたきコードに非常に似ているため、詳細には説明しません。ただし、1つの変更点は、ESP32ではボード上のLEDがピン番号2に接続され、Arduinoの場合はピン番号13に接続されることです。
ステップ6:コードをアップロードするには、アップロードをクリックするだけで、すべてが期待どおりに機能する場合は、Arduinoコンソールに次のように表示されます。
注:一部のモジュールでは、エラーを回避するために、アップロード中にブートボタンを押したままにする必要がある場合があります。
これで、最初のコードがESP32ボードに正常にアップロードされました。LEDが点滅している私のモジュールを以下に示します
先に進んで、 [ファイル]-> [例]-> [ESP32]で 利用できる他のサンプルプログラムを試して、ESP32の他の機能を操作することができます。この作業を行う際に問題が発生した場合は、以下のコメントセクションにクエリを投稿してください。フォーラムを使用して技術的なヘルプを取得することもできます。