head

ESP-WROOM-32
ブレークアウト
Bタイプ
ESP-WROOM-32
ブレークアウト
Cタイプ
ESP-WROOM-32
ブレークアウト
Aタイプ

ESP8266+ATtiny85 IoT製作、センサ値送信


[概要]
前回のesp8266 初期ファームを使った
[ esp8266+LPC1114FN28連携 ] 記事と似ていますが、
小型マイコン ATtiny85(8pin ,8bit)と連携して、
安価で小型なIoTデバイス検討したいと思います。
ブレボ1枚に、WIFI+MCU+電源+周辺デバイス回路まで実装できました。

*)
RAM=512 Byteしかない為、
開発時にメモリ削減の対応等で苦労ぎみでした
さほど小型化の必要がなければ、このMCUは選択しないほうが
良いかと思います。

# 部品リスト
ESP-WROOM-02 / 500[en]前後
ATtiny85 / 160[en] (秋月電子さん)
電解コンデンサー 470マイクロ F   / 10[en] (秋月電子さん)
絶縁ラジアルリード型積層セラミックコンデンサー0.1μF50V (1個当たり)
 10[en] (秋月電子さん)
3.3Vレギュレータ-降圧 / 100[en] (秋月電子さん)
マイクロUSB (メス) / 200 [en] (秋月電子さん)
抵抗, 配線等

# 配線- レイアウト
ATtiny側のSoftwareSerial(D3/D4)を、
ESP側のUARTに接続します。



WIFI側の配線は、テスト編と同じです。

# ATtiny pin 配置




# ATtiny コンパイル
ARDUINO SDK 1.0.5 (ATtiny用の設定が必要)
書込装置= Arduino as ISP を選択
ARDUINO UNO経由で書込み

コンパイル詳細は、ATtiny-テスト編にも記載しています

# 実装面
シリアル通信速度は、
ESPの初期(15200)だと、動作できませんでした。
9600 位に下げたほうが、良さそうです。

機能的にはmbed版と同じく、センサ値取得後
WIFI側UARTに、ATコマンドをシリアル送信する
実装でよいかと思います。

ATtinyのサンプルは、ATtiny-テスト編にも記載しています。
http://knaka0209.blogspot.jp/2015/10/attiny-85-1.html

==== update : 2015-10-08 ====
参考ファームのリンク追加しました。

数ヶ所修正必要で、設定するには手間かかります。
[ AT+CIPSEND ]の
HTTP送信長さは事前に計算し、固定にする必要があります。(改行含む)
メモリ領域パンクの為、動的に計算できていません、、

自力で実装できる方は、
参考にしないほうが良いです。

*)ベータ版で、全体的に見直しが必要です。

[pythonでの計算例]
pi@raspberrypi:~/tmp$ python
Python 2.7.3 (default, Mar 18 2014, 05:13:23)
>>> s="GET /api1234.php?snum_1=1234 HTTP/1.0\r\n";
>>> s=s+"Host: your-dns.com\r\n\r\n";
>>> len(s);
61
>>> quit();

[AT設定-ESP] 
上記はTCP送信のみで、
事前にルータ設定(SSID等)などは手動で設定が必要です。

注) 初心者向きではありません。ご注意下さい。
AT関連の設定を、工場出荷-初期状態に復旧できる方を前程にしてます。
UART通信関連の設定を失敗すると、シリアル通信でAT操作できなくなります

ATコマンド例: UART通信速度変更/ 子機モード設定/ AP設定
AT+UART_DEF=9600,8,1,0,0
AT+CWMODE=1
AT+CWJAP="ssid","password"
============================

# テスト
光センサを結線して、クラウド送信してみました。

グラフ



# DIY編で、ケース作成してみました。(仮の)
材料: ケース(100均で, 3個で100[en] 。食品保存用 )
ドリル工具と、精密ニッパで側面に穴あけ。
上面からの図 



#関連の記事
ATtiny85-20PU に、スケッチを書き込む (ARDUINO SDK)

# 参考の記事

# 開発者向けのまとめ記事


コメント

FACEBOOK

人気の投稿