1-1.ArduinoIDE環境構築

2020年8月12日

開発環境の概要

電子工作にはハードウェアとソフトウェアがありますので、各々の設計と開発を行う必要があります。
ハードウェアについては電気回路を設計し製作する必要があります。また、ハードウェアを制御するためのソフトウェアを製作する必要がありますので、大きく以下の2つの工程があります。

(1) ハードウェア:電気回路の設計と製作
(2) ソフトウェア:制御ソフトウェア製作

(1)電子回路の作成に関してはブレッドボード上に電子部品を配置・接続して製作していきます。また、(2)制御ソフトウェアはパソコン上に開発アプリケーションとしてAruinoIDEを用いてプログラムを作成し書き込みを行なっていきます。
工作する環境の全体イメージは以下のようになります。

《参考1》回路図作成ソフト「Fritzing」

回路図はフリーのソフトウェア「Fritzing」で記載しています。グラフィカルに作成できますので初心者でも扱いやすいと思います。このソフトで回路図を作成する場合はこちらよりDownloadして利用して下さい。

《参考2》Fritzing ESP32-DevKitC等のパーツ

今回、Fritzingで利用しているESP32-DevKitC及びブレッドボードですが標準では用意されていないため、DEKO様がパーツを作成され公開されていますので紹介させて頂きます。こちらより取得可能です。

環境構築

ArduinoIDEのインストール

制御ソフトウェアの作成や書き込みにはAruinoIDE (Integrated Development Environment:統合開発環境)を用います。ArduinoIDEはWindowsやMacな異なるOS上でも同じように操作できるクロスプラットフォームのJavaアプリケーションです。パソコンにインストールする必要がありますので以下に手順を説明します。ArduinoIDEは多くのOSに対応していますが、インストール方法はどれも同じですので今回はWindows環境で説明します。

(1) ArduinoIDEのダウンロード
Arduinoダウンロードサイトにアクセスしダウンロードしてください。

Windowsの場合は上図のところをクリックして下さい。(自分のOS環境にあったところをクリックしてください。)

「Contribute to the Arduino」画面に遷移しますので、寄付する場合は上図の金額を選んで右側をクリックして下さい。無料ダウンロードは左側の「JUST DOWNLOAD」をクリックして下さい。

(2) ArduinoIDEのインストール
2-1) ダウンロードしたファイル(以下のアイコン)をダブルクリックして下さい。

2-2) ライセンスの承認を求められるので「I Agree」をクリックして下さい。
2-3) インストールオプションも特に変更の必要はなく、そのまま「Next」をクリックして下さい。
2-4) インストールフォルダ先も特に変更の必要はなく、そのまま「Install」をクリックして下さい。

2-5) インストールが完了すれば「Close」をクリックして下さい。

これでインストールが完了します。
デスクアップ上に以下のアイコンが作成されダブルクリックでArduinoIDEが起動されます。

ArduinoIDEの各部役割と基本操作

ArduinoIDEを起動すると以下の画面が立ち上がってきます。主に利用する各部の役割を以下に説明します。

① 検証ボタン
ボタンを押すとプログラムを問題ないかチェックします。
② 書き込みボタン
Arduino本体へプログラムを書き込みます。
③ 新規ファイル作成
新しいウィンドウが開き、新しいプログラムが表示されます。
④ ファイルを開く
保存しているプログラムを開くことができます。
⑤ ファイルへ保存
作成したプログラムをファイルに保存します。
⑥ シリアルモニター表示
スケッチ(プログラム)上で「Serial.println()」などのプログラムによりパソコンにPrint表示します。
⑦ 編集エリア
作成するプログラムを記載します。
⑧ ステータスエリア
検証や書き込みボタンを押した場合に状態などが表示されます。
⑨ メッセージエリア
プログラムを検証や実行した場合に情報やエラーなどが表示されます。

ArduinoIDEの初期設定

今回は標準のArduinoボードではなく、互換機である「ESP32-DevKitC」(ESP32)をボードとして利用します。そのため、ArduinoIDEに以下の設定が必要となります。

(1) ESP32ボード情報を取得
ESP32はESP32-DevKitCに搭載れているコントローラです。このESP32をArduinoマイコンとして利用するためArduinoIDEに設定を行いますが、最初にこちらからESP32のボード情報を取得します。

上図のように「Installation Instructions」の「Instructions for Boards Manager」をクリックし次の画面へ遷移します。
「Stable release link」の項目をコピーします。(コピー内容は以下となります)

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
《上記URLがサイト情報と異なっている場合は更新されていますのでサイト情報を利用して下さい。》

(2) ArduinoIDEにボードマネージャ情報を設定
ArduinoIDEの上部メニュー「ファイル」から「環境設定」を選択し、「追加のボードマネージャーのURL」に先ほどコピーした内容を下図のようにペーストしOKをクリックします。

(3) ArduinoIDEボードマネージャでESP32ボードをインストール
ESP32ボードをインストールし利用できるようにします。「ツール」から「ボード:xxx」、「ボードマネージャー」を選択します。

インストールできるボード種別一覧になりますので、検索窓に「esp32」を入力し以下の「esp32 by Espressif Systems」の最新をインストールして下さい。

(4) 「ESP32 Dev Module」ボードを設定
「ツール」から「ボード:xxx」、「ESP32 Arduino」、「ESP32 Dev Module」を選択します。

【ArduinoIDE1.8.12以前は「ツール」から「ボード:xxx」、「ESP32 Dev Module」を選択します。(「ESP32 Arduino」の階層はありません)】

また、ボードの設定を以下の通りに合わせて下さい。

ボード設定内容を以下に一覧で示します。

項目設定値
ボードESP32 Dev Module
Upload Speed921600
CPU Frequency240MHz(WiFi/BT)
Flash Frequency80MHz
Flash ModeQIO
Flash Size4MB(32Mb)
Partition SchemeDefault 4MB with spiffs(1.2MB APP/1.5MB SPIFFS)
《初期値で利用します》
Core Debug Levelなし
PSRAMDisabled

USBシリアル変換IC用ドライバインストール

パソコンのUSBポートとESP-WROOM-32(D)のシリアル端子とデータ通信を行うため、ESP32-DevKitC内部のシリアル変換ICを利用します。このICはSILICON LAB社の「CP2102」が実装されていますので制御するためのソフトウェア(ドライバ)が必要です。
Windows端末は認識できない場合、もしくは、Mac端末の場合はこちらを開き、OSに合致した「Download for XXXXX」の欄から「VCPダウンロード」を選択しダウンロードして下さい。

ダウンロードしたファイルはダブルクリックして、パソコンにインストールして下さい。
パソコンとESP32-DevKitCをUSBケーブルで接続しArduinoIDEメニューの「ツール」の「シリアルポート」に認識されることを確認して下さい。

《確認方法》
●Windowsの場合 :「COMx」等が表示されること
●Macの場合 :「/dev/cu.SLAB_USBtoUART」等が表示されること
(Windows端末でもCOMポートが表示されない場合は上記のダウンロードサイトから環境に合うドライバをダウンロードしインストールして下さい。)

《ドライバ認識の確認方法》
●Windowsの場合
デバイスドライバのポートに「Silicon Labs…」と表示されていることを確認します。(下図参照)

●Macの場合
ターミナルを立ち上げ、コマンド「ls /dev/cu.SLAB*」を入力し「/dev/cu.SLAB…」と表示されていることを確認します。(下図参照)

注意1(ESP32開発ボード接続)

ESP32開発ボードを接続されている場合のみ「COMx」や「/dev/cu.usbserial-xxx」が表示されます。(ESP32開発ボードを接続しない場合は「COMx」や「/dev/cu.usbserial-xxx」は表示されません)
そのため、逆にESP32開発ボードをUSBケーブルで抜いた状態から接続することで「COMx」や「/dev/cu.usbserial-xxx」が表示され確実に認識していることが確認できます。

注意2(ケーブルについて)

パソコンとESP32開発ボードを接続するケーブルについてデータ通信ができるものが必要となります。
電源のみしか使えないケーブルは利用できませんので確認をお願いします。

《ケーブルコネクタ形状》
(1)Type A(パソコン側)
(2)Micro-B(ESP32開発ボード)