ESP32の使い方入門【20個のチュートリアル】

1400円のWi-Fi付きマイコン『ESP32』で始めるIoT電子工作入門

こんにちは!この記事では私がESP32を2018/12月に購入して1か月で出来るようになったことを、チュートリアル形式で紹介します。

ESP32とは?

ESP32シリーズは Wi-FiとBluetoothを内蔵する低コスト、低消費電力なSoCのマイクロコントローラである。
wikipediaより

より簡単に説明すると、「Wi-FiやBluetooth等が使えるIot電子工作に便利で安価なマイコン」です。
特に良いのが、Arduino開発環境を使えるという点です。開発コミュニティも活発で、すぐに情報が見つけられるのでIot電子工作初心者だけでなく、電子工作自体をしたことがない人もESP32を使えます。(twitterで「esp32」と検索するといかに活発化が分かりますよ!)

ESP32で出来ること

できることが多すぎて一部の紹介になります。ご了承ください。

スマホから電子回路を操作

ESP32はただWi-Fiに繋ぐだけではなく、webページを動作させるwebサーバーとしても動作できます。これを利用して、スマホから電子回路を操作できるのです!

web上のデータを表示する

httpリクエストを利用して、web上のデータを取得できます。以下の例では天気予報のデータをESP32で取得して、それをディスプレイに表示しています。

今まではスマホを見て天気予報を確認していたので、普通に生活の質が上がりました。ディスプレイを合わせても2000円行きません。

タッチセンサでピアノ

ESP32はその前に出たESP8266というWi-Fi接続可能なマイコンの後継です。その際に加わった新機能として「タッチセンサ」があります。端子に電気を通すものをつなぐだけでセンサーになってしまうのです。バナナを接続しても動きます。
ということでこれを利用してピアノを作ってみました。IoTとかもう関係ない。普通にタッチセンサが楽しい。

ラジコン飛行機

これは私が作ったものではない&ESP8266の物ですが、ESP32でも動作するはずです。

このように、Wi-Fiに接続できるという利点から様々な電子工作が可能になります。
市販されているArduinoの価格は3000円近くしますが、スペック的にはESP32の方が圧勝でしかも単体なら700円と激安。扱いやすい開発ボードでも1400円程度とかなりお得になっています。

以下のチュートリアル一覧では、この開発ボードを使う前提で解説しています。Amazonでも同等の商品が発売されているので要チェックです。(動作確認はしていないので、なるべく秋月電子さんの開発ボードを購入したほうがいいかもです)

チュートリアルで出来るようになること

以下の入門チュートリアルでは、上記のラジコン飛行機以外のものを実際に作っていきます。最後にはオリジナルのお天気ステーションが出来上がります。
かなりステップを区切って記事にしていますので、ご安心ください。

チュートリアル記事一覧

チュートリアル記事をやるべき順にまとめました。

ESP32のセットアップ

ESP32で出来ることを確認する

ここではスマホから操作できるLEDを実際に作りますが、コードの内容が初心者には難しくなっています。ですので、回路を組んでコードをコピペしてとりあえず動かしてみましょう!
初心者に大事なのは「よくわからんけど動いた!すごい!なんで動くんだろうか」⇒「詳しく知りたい」というモチベーションの出し方です。
以下の記事でも、

①まず動いている様子を見せる ②コードの解説

という流れをとっています。ワクワクしながら作りましょう。

基本部品の制御

LEDやモーターなど、一般的な部品の制御をしていきます。

タッチセンサ

ESP32で実装されたタッチセンサを使っていきましょう。

以下の二つは若干番外編。3つのタッチセンサだけでドレミファソラシドが鳴らせるのかを検討したものです。飛ばしても全く構いません。

フォトトランジスタ(明るさセンサ)

LEDの逆の原理を利用して、光で起電力が発生する「フォトトランジスタ」を使って明るさを検知しましょう。

組み合わせ応用編

いよいよここでスマホから操作可能なRGBLEDを作っていきます。

文字・グラフィック表示をしてみよう

マイコンの醍醐味と言えば小さなLCD(液晶ディスプレイ)などへの数値出力。この項では一般的な文字表示LCD「AQM1602A」と、より自由に文字や絵が出力可能なグラフィック液晶「SSD1306」の使い方から応用までまとめました。

文字出力LCD「AQM1602A」編

ここで、ESP32らしくネット上の天気予報を取得してLCDに表示してみましょう。

グラフィック液晶「SSD1306」

お天気ステーションを作ろう

いよいよこのチュートリアルの目的である「お天気ステーション」を作ります。

今後の予定

最近サーボモーターを購入したので、それとESP32を使って現実に物理的に干渉するような工作をしていきます。

物理で起こしに来る目覚まし時計とか、Twitterに通知が来たら何か動きをするとか、いろいろ思いつきますね。

新着情報がある場合は必ずTwitterで通知しますので、フォローお願いしますm(__)m

「役に立った」「工作の続きを見たい」と思ってくださった方、もしよろしければnoteもやっておりますので、少しでもご支援いただければと思います。よろしくお願いします。

1件のコメント

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です