So-net無料ブログ作成
検索選択

ESP-WROOM-32、ESP-WROOM-02、RTL8710を比較してみた(1) [Arduino]

手元にESP-WROOM-32、ESP-WROOM-02、RTL8710が揃ったので、比較をしてみました。


DSC04493-2.jpg


まず外形から比較します。

 縦 横 ピン数 重量 価格
 ESP-WROOM-32  25.5mm  18.0mm  38pin  1.96g  700円 
 ESP-WROOM-02  20.0mm  18.0mm  18pin  1.29g  500円 
 RTL8710  24.0mm  16.0mm  22pin  1.35g  500円 


この表を見ると、外形はESP-WROOM-02がバランスが良さそうです。

裏面を見てみましょう。ピンのピッチがよく分かります。


DSC04494-2.jpg


ピンのピッチを見ると、ピン数が多くて半田しやすいRTL8710も選択肢の中に入ってきますね。ESP-WROOM-02はピン数が少ないのがネックになることが多いので、RTL8710も悪くなさそうです。

そのうち(仕事がひと段落ついたら)、機能面やソフト面でも比較してみたいと思いますー。
(^_^)/~





waves 2個 ESP-WROOM-32 WiFi + Bluetooth 無線モジュール ESP32 技適取得済 国内発送

waves 2個 ESP-WROOM-32 WiFi + Bluetooth 無線モジュール ESP32 技適取得済 国内発送

  • 出版社/メーカー: waves(ウェイブス)
  • メディア: エレクトロニクス



waves ESP8266 WiFiモジュール(技適取得済み) ESP-WROOM-02

waves ESP8266 WiFiモジュール(技適取得済み) ESP-WROOM-02

  • 出版社/メーカー: waves(ウェイブス)
  • メディア: おもちゃ&ホビー







MOSFETでロジックレベル変換を実現する [Arduino]

最近はマイコンの駆動電圧が3.3Vや1.8Vのものが多くなってきて、周辺デバイスとの電圧レベル変換をすることが多くなってきました。

私のようなソフト屋が回路を組むと何も考えずにレベルシフター置いてしまい、レベルシフターだらけの回路になってしまいます。

レベルシフターは便利なんですが、面積食うし、お財布にも優しくないという話をしていたら、会社の同僚の電気屋さんからMOSFETでレベル変換回路を簡単につくれるよ!と教えてもらいました。

その回路がこちら。


LevelShiftbyFET.png


NチャンネルMOSFETとプルアップ用の抵抗2つで実現しています。すばらしい!

メカニズムはこうです。



(1) 初期状態ではMPUのGPIOは”H"、すなわち3.3V。このときにFETの"G"と”S"に電位差はないので、FETはオフ。Deviceとは絶縁状態ですので、DeviceのIOも"H"、すなわち5Vになります。


(2) MPUのGPIOを”L"にすると、FETの"G"と"S"に電位差が発生します。FETはオンになりますので、MPUとDeviceが通電状態になり、MPUのGPIOもDeviceのIOも"L"になります。


(3) 一方、Deviceが”L"になると、MOSFET内蔵のダイオードに”S"から"D"に電流が流れ、FETの"S"が電圧降下します。その結果、"G"と"S"に電位差が生まれ、FETがオンになりMPUとDeviceが通電状態となり両方"L"になります。



よく出来てますねぇ。目からウロコです。とっても勉強になりました。色んな場面で使ってみたいと思います。
(^_^)/~






Beautyforall 20 Pcs 2N7000 N-Channel Transistor Fast Switch MOSFET TO-92 by Beautyforall [並行輸入品]

Beautyforall 20 Pcs 2N7000 N-Channel Transistor Fast Switch MOSFET TO-92 by Beautyforall [並行輸入品]

  • 出版社/メーカー: Beautyforall
  • メディア: おもちゃ&ホビー



Grove - MOSFET

Grove - MOSFET

  • 出版社/メーカー: seeedstudio
  • メディア:







ESP32(ESP-WROOM-32)の環境設定がめんどくさそう [Arduino]

会社の同僚から借りてきた ESP-WROOM-32 ことESP32。仕事が忙しくてなかなか手をつけられませんが、せめて環境くらいは揃えておこうかなと思い、少し調べてみました。


DSC04446.JPG


まだ日本では発売されていないので、あまり記事がないかなと思ったのですが、いつの世にも切り込み隊長はいるものですね。


Arduino IDEでESP32(ESP-WROOM-32)を使用する方法・途中版
http://blogs.yahoo.co.jp/bokunimowakaru/55621949.html


で、環境設定はESP-WROOM-02 のようにURLを入力してボタン一発かと思いきや、、、 


やりたくねー.png


め、面倒くさすぎる。もうちょっと時間が出来てからにしようかなぁ。。。
σ(^_^;





ESPr Developer(ESP-WROOM-02開発ボード)

ESPr Developer(ESP-WROOM-02開発ボード)

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス



ArduinoとESP8266ではじめる IoTプログラミング

ArduinoとESP8266ではじめる IoTプログラミング

  • 出版社/メーカー:
  • 発売日: 2016/04/22
  • メディア: Kindle版



ESP8266で始めるWi-Fi IoTプロジェクト

ESP8266で始めるWi-Fi IoTプロジェクト

  • 出版社/メーカー:
  • 発売日: 2016/08/10
  • メディア: Kindle版




噂のESP3212 (ESP-WROOM-32) を入手! [Arduino]

今日は会社の同僚から嬉しいプレゼントをいただきました!なんと ESP-WROOM-32 をまとめて入手したので、一台評価してみる?と貸してもらっちゃいました!eBay から入手したそうです。


DSC04446.JPG


このブレイクアウトボードはUSB端子もついていて、PCにつなげてすぐ使えるようになっています。WiFiだけでなくBLEも内蔵しているので楽しみです。おいおい評価レポートを上げたいと思います。
(´∀`)ノ





waves ESP8266 WiFiモジュール(技適取得済み) ESP-WROOM-02 キット 赤基盤

waves ESP8266 WiFiモジュール(技適取得済み) ESP-WROOM-02 キット 赤基盤

  • 出版社/メーカー: waves(ウェイブス)
  • メディア: おもちゃ&ホビー



ArduinoとESP8266ではじめる IoTプログラミング

ArduinoとESP8266ではじめる IoTプログラミング

  • 出版社/メーカー:
  • 発売日: 2016/04/22
  • メディア: Kindle版



ESP8266 Weather Station: Getting Started Guide (English Edition)

ESP8266 Weather Station: Getting Started Guide (English Edition)

  • 出版社/メーカー: Daniel Eichhorn
  • 発売日: 2016/09/01
  • メディア: Kindle版




ESP8266(ESP-WROOM-02)でコアレスモーターを直接駆動してみた [Arduino]

ESP-WROOM-02 のPWMでコアレスモーターを直接つないで試しに動かしてみることにしました。


DSC04439.JPG


モータードライバーがないと回らないだろうなぁと思いつつ、下記のようなスケッチを試してみました。


static unsigned int motor = 13;
static unsigned int led   = 12;

void OTA_setup()
{
  analogWriteFreq(2000);
  analogWriteRange(1000);
}

unsigned int duty=0;
bool inc = true;
void OTA_loop()
{
  analogWrite(motor, duty);
  analogWrite(led, duty);
  if (inc) {
    if (duty++ == 1000) inc = false; 
  } else {
    if (duty-- == 0) inc = true;
  }
  delay(1);
}



OTA_setup()、OTA_loop() はなんぞやという方はこちらの記事を参照ください。

さて、意外や意外の結果はこちら。





なんと、GPIO でコアレスモーター動かせちゃいました。

ただモーターが発生させる逆起電力がIOにダメージを与えそうで怖いですし、四つのモーターを動かすドライブ能力はないので、ドローン用回路ではモータードライバーを追加します。

しかし、このモーターの音、近未来的でかっこいい。
・:*:・( ̄∀ ̄ )。・:*:・





ESP-WROOM-02ピッチ変換済みモジュール《フル版》

ESP-WROOM-02ピッチ変換済みモジュール《フル版》

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス






PXYNANOプロペラセット(8枚入)

PXYNANOプロペラセット(8枚入)

  • 出版社/メーカー: G-FORCE(ジーフォース)
  • メディア: おもちゃ&ホビー





ESP8266のPWMを試してみる [Arduino]

今回はモーターコントロールをするためのESP8266のPWM機能を試してみます。


DSC04434.JPG


ESP8266でPWMを使うには、他のArduinoボードと同じように analogWrite を用います。その他に、ESP8266独自のAPIとして、PWMの周波数を設定する analogWriteFreq()、 制御のレンジを決める analogWriteRange() Iが用意されています。


下記のようなスケッチをOTAで書き込んでみました。OTA_setup()、OTA_loop() なんぞやという方は、こちらの記事を参照してください。


static unsigned int led = 13;

void OTA_setup()
{
  Serial.begin(115200);
  analogWriteFreq(2000);
  analogWriteRange(1000);
}

unsigned int duty=0;
bool inc = true;
void OTA_loop()
{
  analogWrite(led, duty);
  if (inc) {
    if (duty++ == 1000) inc = false; 
  } else {
    if (duty-- == 0) inc = true;
  }
  delay(1);
}



実際に動かしてみました。




しかし、下の記事によると、ESP8266のPWMは実はソフトPWMなので多少の誤差がある上に、Duty比も90%までという制約があるようです。


ESP8266 PWM revisited (and reimplemented
https://lurchi.wordpress.com/2016/06/29/esp8266-pwm-revisited-and-reimplemented/


その対策もこちらの記事にあったので試してみたのですが、どうもうまく動かないんだよなぁ。
σ( ̄ε  ̄;)





HiLetgo OTA WeMos D1 CH340 WiFi 開発ボード ESP8266 ESP-12F For Arduino IDE UNO R3

HiLetgo OTA WeMos D1 CH340 WiFi 開発ボード ESP8266 ESP-12F For Arduino IDE UNO R3

  • 出版社/メーカー: HiLetgo
  • メディア: エレクトロニクス






ArduinoとESP8266ではじめる IoTプログラミング

ArduinoとESP8266ではじめる IoTプログラミング

  • 出版社/メーカー:
  • 発売日: 2016/04/22
  • メディア: Kindle版




今更ながら ESP8266 (ESP-WROOM-02) のOTAを試す [Arduino]

世の中はESP8266からESP3212へ移行しつつありますが、今更ながらESP8266のOTAを試してみました。


DSC04428.JPG


ドローンのマイコンにESP-WROOM-02を考えているのですが、ソフトウェアアップデートをOTAで出来れば便利かなと思った次第です。

OTAを行うには、OTA用のスケッチを書き込む必要があります。「スケッチの例」から「BasicOTA」を選択します。

BasicOTA.png

BasicOTAの"ssid" と"password" を変更します。


BasicOTA2.png


BasicOTAをESP-WROOM-02へ書き込み、ブートモードで起動します。ここで、コンソールにIPアドレスが出てくれば準備完了です。


BasicOTAConsole.png


ここで、一度 Arduino IDE を閉じて再起動します。(←ここ重要)

すると、メニューのシリアルポートにネットワークポートが追加されています。

BasicOTAPort.png


このポートで、ソフトをアップデートをしますが、OTAをするソフトウェアは常にBasicOTAのルーチンが必要になります。省いてしまうと、一度OTAをしたら二度目からOTAが出来なくなります。(ここも重要)

BasicOTAの中に処理を追加するのは見通しが悪いので、BasicOTAにAPIを追加します。追加するのは、OTA_setup()、OTA_loop() の二つです。

#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <WiFiUdp.h>
#include <ArduinoOTA.h>

const char* ssid = "your ssid";
const char* password = "your password";

void setup() {
  Serial.begin(115200);
  Serial.println("Booting");
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  while (WiFi.waitForConnectResult() != WL_CONNECTED) {
    Serial.println("Connection Failed! Rebooting...");
    delay(5000);
    ESP.restart();
  }

  // Port defaults to 8266
  // ArduinoOTA.setPort(8266);

  // Hostname defaults to esp8266-[ChipID]
  // ArduinoOTA.setHostname("myesp8266");

  // No authentication by default
  // ArduinoOTA.setPassword((const char *)"123");

  ArduinoOTA.onStart([]() {
    Serial.println("Start");
  });
  ArduinoOTA.onEnd([]() {
    Serial.println("\nEnd");
  });
  ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
    Serial.printf("Progress: %u%%\r", (progress / (total / 100)));
  });
  ArduinoOTA.onError([](ota_error_t error) {
    Serial.printf("Error[%u]: ", error);
    if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed");
    else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed");
    else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed");
    else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed");
    else if (error == OTA_END_ERROR) Serial.println("End Failed");
  });
  ArduinoOTA.begin();
  Serial.println("Ready");
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());

  OTA_setup(); // ←追加
}

void loop() {
  ArduinoOTA.handle();
  OTA_loop(); // ←追加
}


新規にタブ「MainOTA」を追加し、処理を記述します。試しにボードに書き込んでみました。


BasicOTANewTab.png


WiFiで動作していることを確認するためにバッテリーで駆動してみます。


DSC04434.JPG


動画でアップロードの様子を映してみました。最初は BasicOTA の状態なのでLED点灯はありません。LEDを1秒間隔で点灯するソフトをOTAし、その後、0.5秒間隔の点灯のソフトに変更してみました。





これは便利ですね。どんどん活用していきたいと思います!
(^_^)/~





HiLetgo OTA WeMos D1 CH340 WiFi 開発ボード ESP8266 ESP-12F For Arduino IDE UNO R3

HiLetgo OTA WeMos D1 CH340 WiFi 開発ボード ESP8266 ESP-12F For Arduino IDE UNO R3

  • 出版社/メーカー: HiLetgo
  • メディア: エレクトロニクス



ESPr Developer(ESP-WROOM-02開発ボード)

ESPr Developer(ESP-WROOM-02開発ボード)

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス



ESP8266ではじめるIoTプログラミング

ESP8266ではじめるIoTプログラミング

  • 出版社/メーカー:
  • 発売日: 2016/06/05
  • メディア: Kindle版




0.5インチのOLEDディスプレイって売ってるんだ… [Arduino]

ここ数日、咳こみながらも会社に行き、早めに帰って10時間以上寝るという生活を続け、ようやく体調が復活してきました。やれやれ・・・。


glico.png


そんな寝こんでいる合間に、マイコンで駆動できる極小ディスプレイが欲しいなと思いネットを漁っていたら、0.5インチのOLEDディスプレイってあるんですねぇ。


0-5-inch-oled-display.jpg
https://www.dfrobot.com/wiki/index.php/0.5_Inch_OLED_Display_SKU:DFR0376#Specification


SPIなのでArduinoにもつながります。これで何か面白いウェアラブルガジェットを考えられないかな・・・。
σ(^_^)?





1.27インチ 16ビット色のOLEDディスプレイ(microSDスロット付き)

1.27インチ 16ビット色のOLEDディスプレイ(microSDスロット付き)

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス






Gikfun 0.91

Gikfun 0.91" 128x32 OLED White LCD Display Module IIC I2C for Arduino EK1826

  • 出版社/メーカー: Esooho
  • メディア: エレクトロニクス




タグ:OLED Arduino 0.5inch

IoT向け SoC の市場がレッドオーシャン化!エンドユーザーにはうれしい悲鳴。 [Arduino]

少し前から話題沸騰していた ESP8266 のバージョンアップ版、ESP3212 がいつの間にか出荷されていたようです!


ESP3212.png


ファーストロット 600個は瞬殺!次のロット3000個もすでに売り切れ。ものすごい注目度です。スマホの SoC ベンダーも真っ青のスペックは以下!


ES3212_spec.png
https://www.seeedstudio.com/ESP3212-Wifi-Bluetooth-Combo-Module-p-2706.html


I2S や CAN までサポートしているとはびっくりです。電話も車載もばっちりですね。WiFi に BLE までついてお値段は、驚きの $6.95!

すごい・・・。


しかし、イーサーネットチップの老舗 RealTek も負けていません。ESPに対抗するモジュール RTL8710 で迎え撃っています。


RTL8710.png


WiFi モジュールがたったの$3! 攻めてますね~。


ESP8266 との比較表をみつけてしまいました。IOの数が多いのがうれしいですね。


RTL8710 vs ESP8266.png
http://www.cnx-software.com/2016/07/28/an-alternative-to-esp8266-realtek-rtl8710-arm-cortex-m3-wifi-iot-modules-sell-for-2-and-up/


どんなマジックを使ってここまで安くできるのか分かりませんが、エンドユーザーにとっては安いは正義! いずれも技適が通ったモジュールが出てくるのが楽しみです!
(^_^)/~





ESP-WROOM-02ピッチ変換済みモジュール《T型》

ESP-WROOM-02ピッチ変換済みモジュール《T型》

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス



ArduinoとESP8266ではじめる IoTプログラミング

ArduinoとESP8266ではじめる IoTプログラミング

  • 出版社/メーカー:
  • 発売日: 2016/04/22
  • メディア: Kindle版



Internet of Things with Esp8266

Internet of Things with Esp8266

  • 作者: Marco Schwartz
  • 出版社/メーカー: Packt Publishing
  • 発売日: 2016/07/31
  • メディア: ペーパーバック




CLIP DISPLAY(仮)開発、いよいよ追い込み!(`・ω・´) [Arduino]

この週末のMFT2016に向けて、CLIP DISPLAY(仮)の開発もいよいよ追い込み!と言いたいところなのですが、仕事がいきなり修羅場と化して、帰宅は毎日午前様。まさに寝る間を惜しんで開発しています。


DSC04218.JPG


残る課題は速度計測なのですが、加速度センサーは相対的な動きをとらえるにはよいのですが、絶対値はどうも使い物にならない。

ということで、歩数計で速度を測定することに方針転換しました。(間に合うのか?オレ。。。)グーグル師匠に聞いてみると、アナログデバイスさんのホームページですごく参考になる論文を発見!


3軸デジタル加速度センサーを使用したフル機能の歩数計の設計
http://www.analog.com/jp/education/landing-pages/003/analogdialogue/contents/ad4406_jp.html


ソースコードはないですが、考え方はそのまま応用できそうです。早速、アルゴリズムの検討のために、Z軸のデータを取ってみると・・・・


walkandRunwithSpikeNoize.png


なぜかスパイクノイズがところどころ乗っている。速度がまともに出なかった問題のひとつはこれだったのか。今までこんなノイズ出てなかったけどなぁ・・・。(´・ω・`)


データを注意深く解析していくと、どうもOLEDの点灯タイミングでノイズが出る頻度が高いようです。排他処理はしていたのですが、十分ではありませんでした。また、FIFOに残っているゴミデータも読みだしているようなので、適宜FIFOリセットを入れるようにしました。

これらの工夫を加えて得られた波形がこちら。


walkandRunwithNoNoize.png


とってもきれいな波形が読みとれるようになりました。あとはアナログデバイスさんのアルゴリズムを参考に歩数計から速度計、距離計を作るのみ!できれば万歩計機能も追加したいところですが、難しいかな。
(;^Д^)








心拍センサ

心拍センサ

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス



ESP-WROOM-02ピッチ変換済みモジュール《シンプル版》

ESP-WROOM-02ピッチ変換済みモジュール《シンプル版》

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス