前回はESP32でWi-Fiを使用してIoTウェブサーバを作りましたが、もう一つの選択肢として、ESP32と同じくespressif社のESP8266マイクロコントローラがあります。これは先述のESP32の一つ前の世代のマイクロコントローラです。性能面ではESP32に劣りますが、それでもArduinoのATMega328Pよりもはるかに高性能です。また、ESP32よりも長く市販されているということは、より多くの人に利用されているとも言えます。そのため、ESP32よりもESP8266の方がサンプルとなるスケッチやライブラリが見つけやすい一面もありますArduino向けのWiFiシールドにもWiFi用のチップとしてESP8266を採用しているものが数多くあります。 ESP8266モジュールはESP32よりもさらに一回り小さなサイズです。こちらにも … [もっと読む...] about ArduinoでSTEM教育 応用編:ESP8266開発ボードでIoTウェブサーバーを作る
アーカイブ2020
ArduinoでSTEM教育 応用編:ESP32開発ボードでIoTウェブサーバーを作る
ESP32開発ボードを使用してIoTウェブサーバを作ります。前回はイーサネットシールドを使った有線ケーブルによる接続でしたが、今回はWi-Fi無線で接続します。ESP32とは何か、ESP32でプログラミングするための開発環境を整える方法、ライブラリの基本的な使い方について紹介します。 ESP32とは 近年最もよく使われるWi-Fi対応マイクロコントローラは、中国のespressif社から発売されている「ESP32」です。非常に小さく、親指の爪ほどの大きさしかありません。 このチップに520kBのメインメモリ(Arduinoは32kB)、4MBのプログラムメモリ(バージョンにより異なる。Arduinoは2kB)が搭載されていて、クロックは最大240MHz(Arduinoは16MHz)で動作します。チップには38か所のピンがありますが … [もっと読む...] about ArduinoでSTEM教育 応用編:ESP32開発ボードでIoTウェブサーバーを作る
ArduinoでSTEM教育 応用編:イーサネットシールドでIoTウェブサーバーを作る
Arduinoに接続したセンサーの値をパソコンに表示したり、パソコンからLEDのON/OFFをコントロールします。どのようにするかというと、Arduinoをwebサーバーとして動かし、パソコンからアクセスできる簡単なHTMLページを作ります。LAN用のルーターとイーサネットシールドをイーサネットケーブルで接続して使用します。イーサネットシールドは、WIZnet社のTCP/IP処理専用モジュールのW5500を搭載したシールドがよく用いられます。扱い易いおすすめのシールドは、Arduino イーサネットシールド2で、Micro SDカードリーダとしても使用できます。 LEDと可変抵抗の配線図 LEDと可変抵抗を接続します。図2はArduino Unoから直接配線している図になっていますが、実際にはArduino … [もっと読む...] about ArduinoでSTEM教育 応用編:イーサネットシールドでIoTウェブサーバーを作る
Arduino初心者編:SDカードに温湿度データと時間を保存する
温湿度データのような長期間の測定値など、さらに広範囲のデータを保存したい場合は、SDカードを使用します。PCでよくデータ移動に使われるSDカードは、通常数ギガバイトのさまざまなストレージボリュームがあります。この巨大な保存領域は、Arduinoを使用する上で十分な容量です。 接続には、専用アダプタモジュールとシールド(プラグインボード)の両方を用意しています。 別々のモジュールやシールドを使用するかどうかにかかわらず、接続は通常SPIを介して行われます。シールドの場合、自由に選択できるチップセレクトラインは通常4ピンに接続されています。 … [もっと読む...] about Arduino初心者編:SDカードに温湿度データと時間を保存する
Arduino初心者編:外部EEPROMにデータを保存する
内部メモリが十分でない場合は、外部EEPROMモジュールを使用することも可能です。例えば、RTCモジュールDS3231はタイマに加えて、4096バイトのEEPROMメモリを搭載したAT24C32チップを搭載しています。タイマとEEPROMは電源とI²Cバスを共有していますが、それ以外は完全に独立しています。このモジュールは、もともとデータロガーとして使用するために開発されたものなので、このような構成になっています。 タイマとEEPROMのI²Cアドレスは異なるため、両方のチップを別々に制御することができます。さらに、AT24C32のEEPROMチップは、はんだパッドをブリッジすることでI²Cバスアドレスを変更できます。手順は液晶バックパック(HD44780)の場合と全く同じです。このように、1つのI²Cバスで最大8個のメモリを動作させることが … [もっと読む...] about Arduino初心者編:外部EEPROMにデータを保存する