エントリー

カテゴリー「IoT」の検索結果は以下のとおりです。

【Arduino】ESP32 Devkitc v4 をリナックス(ubuntu)で書き込んでみた【技術メモ】

  1. はじめに

linux(ubuntu)でArduinoUNOやArduinoNanoなどの書き込みは成功していたが、ESP32だと書き込めなかったので、設定してみた。
ここでは、Lubuntuをにインストールしてみます。

20210121143719.png

ボードのインストール

ArduinoIDEを開いてCtrl+、を押すと設定画面が展開します。
そこのボードに「https://dl.espressif.com/dl/package_esp32_index.json」を追加します。

20210216124612.png
ツール>ボード>ボードマネージャ 検索で「ESP32」と入力
ボードが表示されたらインストール。

コンパイル開始

サンプルを適当にesp32に書き込むと次のエラーが表示された。

exec: "python": executable file not found in $PATH
ボードESP32 Dev Moduleに対するコンパイル時にエラーが発生しました

どうやら、Pysonモジュールが入っていないようです。

http://arduino-er.blogspot.com/2020/06/install-esp32esp8266-to-arduino-ide-on.html

LXTerminalを起動し、コマンドを順番に入力。

$ sudo apt install python-is-python3
$ sudo apt-mark hold python2 python2-minimal python2.7 python2.7-minimal libpython2-stdlib libpython2.7-minimal libpython2.7-stdlib

20210511101725.png

2番めは、古いpysonがインストールされないようにするためらしいのですが不要かと思われ混る。 

再度コンパイル

ImportError: No module named serial
exit status 1
ボードESP32 Dev Moduleに対するコンパイル時にエラーが発生しました。

またエラー

pipモジュールが入っていないからでるらしい。
んで、pipとpyserialを追加。

$ sudo apt install python3-pip
$ pip3 install pyserial

ESP32の書き込みテスト

ESP32DevKITCの場合は、ボードの「ESP32 dev modul」を選択。

20210121143718.png


ボードの選択で
ファイル>スケッチ例>ESP32 から適当なスケッチ例を開いて書き込んでみる。

heard resetting via RST pin ..... 

と表示されれば成功です。

だめなときは

ダメなときは次のコマンドを実行してみる。

  • $ sudo apt install python-pip
  • $ sudo pip install pyserial

【ESP01S】ESP01で室温、湿度をリアルタイムで測定してみる【ESP8266】

遠隔で温度測定

道具箱からこんな物が発掘されたので、遊んでみた。

20200517133259.jpg

DH11というモジュールで、温度センサー、湿度センサーを備えてます。
ESP8266にそのまま接続できるため、非常にコンパクトなwifi仕様のセンサーになります。
軽量かつ消費電力もわずかのため、電池で長時間にわたって稼働できます。

書き込みの準備をする

書き込み用に、シリアルコンバータを改造してみた。コンパクトで使い勝手が良くなった。GPIO0、ResetをそれぞれGNDに接続し、スライドスイッチ、タクトスイッチを付けただけ。

20200517133257.jpg

コードを書き込んでみる

#define BLYNK_PRINT Serial
#include
#include
#include

char auth[] = "2456789911111111";
char ssid[] = "987654321";
char pass[] = "123456789";

#define DHTTYPE DHT11     // DHT 11

DHT dht(DHTPIN, DHTTYPE);

BlynkTimer timer;

void sendSensor(){

  float h = dht.readHumidity();
  float t = dht.readTemperature();
// or dht.readTemperature(true) for Fahrenheit

  if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  Blynk.virtualWrite(V5, h);
  Blynk.virtualWrite(V6, t);
}

void setup(){

  Serial.begin(9600);
  Blynk.begin(auth, ssid, pass);

  dht.begin();
  timer.setInterval(1000L, sendSensor);
}

void loop(){

  Blynk.run();
  timer.run();
}

書き込みが終了したら、シリアルモニターで確認してみるといいです。

20200517133258.jpg

いつものBlynkに接続。

20200517133300.png

DH11モジュールと合体

センサーの上にESP01が重なると、ESPモジュールの熱を拾ってしまうので、足を曲げて使用しています。非常にコンパクト。

20200517134020.jpg

農業分野などの温度管理に活用できそうですね。

【IOT】家のエアコンをwifiで制御してみた。その2

Wifi経由の赤外線照射を考察する

【IOT】エアコンをインターネット経由で制御してみた。その1

サーバーで受信した信号によって赤外線を照射する。
手持ちの赤外線モジュールでは指向性が鋭いため、少し外れると照射強度が一気に落ちてしまうようです。1個2円なので文句は言えない。
照射角度が20度程度で照射強度が半分になるようです。
よって、送信機が多少ずれても照射できるように、複数を角度を変えて設置することとする。

指向性についてはマルマツさんを参考にしてください。

赤外線の回路を考える

とりあえず、赤外線モジュールが1個の回路図はこんな感じです。
赤外LEDは1.35V で100mAなので

R3≒(3.2v-1.35v)/100mA

17Ωになるので、10Ωで代用。対して変わらんだろ!?

トランジスタはS8050を使ったので、稼働電圧が0.6v、hFEがコレクタ100mAで85~400.

R4=(3.2v-0.6v)/0.1mA

2.6kΩになるので、2kが欲しかったのだが、手持ちがなかったので1Kで代用。
ほとんど電流が流れていないので、熱もなく動くみたい。
実際にテレビで試してみたが、テレビの赤外線受信部に確実に当たらないと反応しなかった。

20200529211544.jpg

赤外線LEDモジュールを3個角度を変えて設置する。電圧が足りないので、5Vに接続することとします。

20200529212528.jpg

wifiエアコンをモニタリングする

こんな感じで行けるかと。試作品が完成。

モニタリングは、以前に制作したWIFI温度モジュールまたは、Webカメラを使用する。

参考【IoT】ESP32で撮った写真をgoogleドライブに転送してみた。最終回

20200530003311.jpg

送信成功。

20200530003310.jpg

巨大だったエアコン信号

エアコンのリモコン信号を解析してみたところ、ONとOFFで信号の違いがあった。しかも容量がかなり大きいので、旧タイプのarduinoでは、制御できないと思われる。
ON、OFFはリモコン側で制御されてたんだね~。そんで、信号の中身はというと、電源だけでなく、運転種別、設定温度、風量、風向きなどの情報が運転開始時に一斉に送信される仕組みでした。
データ量が大きくなる訳です。

スマホでエアコンを制御してみる

とりあえず、室内温度26℃、風量弱で問題なく運用しています。室温を計測してオン、オフ制御だけで十分でした。
モニタリングはDH11と自作webカメラを運用していますが、まったく問題なく稼働しているので不要かと思います。
ただし、電源のON,OFFを確実に知りたい場合は、あってもいいかもね。
帰宅前にONできるので、部屋はヒエヒエ~。wifiでできることがまた一つ増えました。

【IOT】エアコンをインターネット経由で制御してみた。その1【Wifi】

スマホでエアコンを制御?

ArduinoもWifiモジュールが強化され、使い勝手もかなり良くなってきました。
いつかやろうと思っていた、スマホによるエアコンの制御に挑戦してみました。

制御の範囲を検討してみる

制御といっても、電源のオン、オフのみです。
設定温度や風量など、細かい設定も可能ですが、エアコンは普段から自動制御されているので、オン、オフのみで十分だと思います。

リモコン信号の読み取り

とりあえず、実験用にテレビのリモコン信号を受信、解析する装置を作成。

20200524215630.jpg

スケッチはサンプルがあるので迷うところはないです。

ファイル → スケッチ例 → IRremote → IRrecvDumpV2

迷うところがあるとすれば、接続するピンかな。
英語ですが、説明はあります。

4番ピンに接続するとありますが、ボードによってはD2になります。接続して反応がなかったら、接続し直してみてください。
シリアルモニターを開いておくと、受信した赤外線の信号が表示されます。表示されたコードをメモ帳などにコピペしておきましょう。

学習リモンになる

今回、初めて赤外線を取り扱ったけど、簡単で汎用性が高く、低コスト、低電力と良いことずくめの技術ですね。スバラシイ!!!
これで、様々な赤外線の解析が可能となりました。場合によっては部屋のリモコンを全てまとめることに可能になると思います。
また、赤外線による制御なので、ハード面をなんらいじることなく、使えるので安全性も抜群。

次回は、送信機の作成編です。



【IoT】ESP32を使ったWebカメラの電圧を下げてみた。

 電源周りをリチウムイオン電池18650の3本並列に変更してみた。
これにより、稼働時間が大幅に伸びた。

20200502215950.jpg

しかし、依然として稀にgoogleドライブのスクリプトを叩かないことがある。
また、依然として発熱量が多い。

20200502213753.jpg

試しに、固定観念を捨て去り、電圧を5.3v低下させてみた。

意外とイイ。最初に使った電源モジュールがおかしかったのか?

発熱量ほぼなし。ヒートシンク不要。

経過観察してみます。

ページ移動

  • ページ
  • 1
  • 2
  • 3

ユーティリティ

サイト内検索

twitter

ありがとうございます

新着画像

過去ログ

Feed