ESP32&Arduino 電子工作 プログラミング入門
- 藤本壱 著
- 定価
- 3,278円(本体2,980円+税10%)
- 発売日
- 2020.4.15
- 判型
- A5
- 頁数
- 400ページ
- ISBN
- 978-4-297-11205-9 978-4-297-11206-6
概要
電子工作ファンに人気のマイコンArduino,そしてWiFiとBluetooth内蔵でネットワーク接続しやすいESP32。それらのマイコンでプログラムを組む際に使うのが「Arduino言語」です。
「電子工作は好きだけどプログラミングはよくわからない」あるいは「プログラミングの経験がある。それを活かして電子工作を楽しみたい」--そんなみなさまのための電子工作プログラミング入門が本書です。
ESP32とArduinoに両対応。電子工作を始めるために必要なものから,電子工作とプログラミングの関係,はじめてのプログラム作り,開発環境のインストールと,スタートから丁寧に解説します。
変数/制御構造/配列/関数/ライブラリと,確実にプログラミングの力をレベルアップしていき,実践編では「GPSロガー」「ラジコンカー」「環境計」の制作にチャレンジ。
プログラミングで,電子工作の楽しさと世界を広げましょう。
本書で身につく知識
- 電子工作の始め方,Arduinoの開発環境の使い方
- 変数,配列,ポインタ,条件分岐,繰り返しなどの必須構文
- 関数を使ったデジタル/アナログの入出力制御,割り込み処理など
- クラスとライブラリの使い方,作り方
- サーボモーターの制御,WiFi接続など目的ごとのライブラリの使い方
- GPSロガー,ラジコンカー,環境計の作り方
本書で作って動かすもの
- ログを収集してディスプレイに表示するGPSロガー
→緯度/経度/日付/時刻/速度/標高のデータを記録してOLEDディスプレイにアウトプット - Bluetoothで通信,衝突防止機能付きのラジコンカー
→パソコンやAndroidからコマンドを送ってコントロール。超音波センサーによる衝突防止機能付き - 温度や空気の状態を知らせてくれる環境計
→ 周囲の環境(温度/湿度/気圧/空気状態)をチェックして液晶ディスプレイに表示。Google Homeを使って空気の状態を音声で通知する機能も
こんな方にオススメ
- ESP32&Arduinoのユーザーの方
- ESP32&Arduinoのユーザーでプログラミングを始めたい方
- プログラミング経験を活かして電子工作を楽しみたい方
目次
- Arduino言語をマスターして電子工作の幅を広げよう
第1章 Arduinoプログラミングの第一歩
- 今どきの電子工作の始め方
- プログラミングで電子工作の世界が広がる
- Arduinoの開発環境(Arduino IDE)のインストールと使い方
- Arduinoの最小限のプログラムの構成
- シリアルモニタにメッセージを表示する
- Arduino IDEで純正Arduino以外の開発を行う
- Column Webブラウザ上で電子工作を体験できる「Circuits on Tinkercad」
第2章 Arduino言語の基本的な構文をマスターする
- データを変数で扱う
- さまざまな計算を行う(算術演算子の使い方)
- 条件によって処理を分ける
- 同じような処理を一定回数繰り返す
- 条件を満たす間,繰り返しを続ける
- 多数のデータを配列で効率よく扱う
- ポインタの利用
- 変数にアクセスできる範囲(スコープ)と寿命を理解する
- 定数に名前を付ける
- そのほかの便利な構文
- Column 配線図を描くのに便利な「Fritzing」
第3章 関数の使い方
- 関数の仕組みを知る
- 数値を扱う関数
- 文字列関係の処理を行う
- データ型を変換する
- デジタル/アナログの入出力を制御する
- ユーザー定義関数を作る
- 割り込みで処理を実行する
- ESP32のDeepSleep機能を使う
- そのほかの組み込み関数
- Column AliExpressでパーツを安く手に入れる
第4章 ライブラリやクラスの利用と作成
- 既存のライブラリをインストールして利用する
- 自分でライブラリを作る
- データをまとめる「構造体」
- 新しいクラスを作る
- ライブラリをクラスの形で作る
- 既存のクラスを継承する
- Column ESP32のそのほかの開発環境
第5章 各種のライブラリを使う
- シリアル通信を行う
- サーボモーターを制御する(Servo/ESP32Servoライブラリ)
- タイマー割り込みを行う
- キャラクタ液晶ディスプレイを使う
- SDカードを読み書きする
- ESP32のFlashメモリにファイルを格納する(SPIFFS)
- ESP32をWiFiに接続する
- ESP32をWebサーバーとして動作させる
- ESP32から外部のWebサーバーにアクセスする
- ESP32にローカルな名前でアクセスできるようにする
- WiFiでESP32にプログラムを書き込む(OTA)
- Bluetoothシリアルで通信する
- Column データの蓄積に便利な「Ambient」
第6章 プログラム制作事例
- GPSロガーを作る
- ラジコンカーを作る
- 環境計を作る
- Column 3Dプリンタで電子工作をより楽しくしよう
プロフィール
藤本壱
1969年兵庫県伊丹市生まれ。中学生の頃にBASIC言語でプログラミングを始め,機械語,C言語,PHP,JavaScriptなど,さまざまな言語でプログラミングを行ってきた。1993年からPC関係のフリーライターとなり,また2005年頃からCMSソフトのMovable Typeのプラグイン開発なども行っている。
2016年にRaspberry Piで電子工作を始め,その後Arduinoも使うようになり,現在では主にESP32で電子工作を行っている。「水槽の水温が下がりすぎたらスマホに通知する水温計」など,生活をちょっと便利にできそうなものを作って楽しんでいる。
また,2018年初めに3Dプリンタを導入し,本書内のラジコンカーの事例をはじめ,タンク型ロボットやライントレースロボットなど,電子工作で作ったものの筐体を出力するのに活用している。