ESPresso Lite V2 ESPert MQTTブローカー

ESPertが提供しているクラウドサービスを利用することにより、インターネットに接続されたESPresso Lite V2の温度・湿度センサーの値を遠隔地のパソコン等で見ることができます。

ESPresso Lite V2 の初期状態では、このMQTT機能がインストールされています。

ESPresso Lite V2をインターネットに接続します。

参照
ESPRESSO LITE V2.0 をインターネットに接続する

ESPresso Lite V2.0 をインターネットに接続する

パソコンで下記のサイトにアクセスします。
http://www.espert.io/mqtt/index.html

Host、Port、ClientID は、自動的に表示されます。
その他も表示された通りの空欄、数値でけっこうです。
その状態でConnect ボタンをクリックします。ESPert021

ホストに接続されると、connected と表示されます。
Add New Topic Subscription ボタンをクリックします。

ESPert022

Topic に
ESPert/XXXXXXXX/#
を入力(XXXXXXXXの部分は、OLEDに表示の固有のID ) を入力し、Subscribeボタンをクリックします。
ESPert023

Messages に指定したIDのESPresso Lite V2の温度・湿度が表示されます。

ESPert024

うまく表示されない場合は、UC00A USB・UARTコンバーターを接続し、Arduino IDEのシリアルモニターで状態を確認すると状況がわかりやすいです。
ESPert025
センサーの値が正しく読み出され、ホストへの送信がうまくできている状態では、
{“temperature”:”25.80″, “humidity”:”54.00″, “name”:”ESPert-XXXXXXXX”}
と表示されます。

ESPert: Failed to read temperature from DHT sensor!
ESPert: Failed to read humidity from DHT sensor!
と表示される場合は、センサーからの値を読み出せない状態です。センサーの接続・接触を確認してください。

ESPresso Lite V2のクラウドサービスESPertのアカウントを作成する

 

ESPertでは、無料で使えるクラウドサービスを提供しています。
固定グローバルIPアドレスがなくてもインターネットからESPresso Lite V2に対してアクセスすることができます。

アカウントの登録

下記にアクセスします。
http://www.espert.io/

ESPert010

右上の Login をクリックします。
ESPert011
Click here to register をクリックすると、下記のようなページが開きますので、ユーザー名(任意のもの)、Eメールアドレス、パスワード、パスワード確認、名前、性別を入力して、I agree with the Terms and Conditionsのチェックボックスにチェックをつけ、Resister をクリックします。
ESPert013
入力されたEメールアドレスあてに確認のEメールが届きますので、そのURLにアクセスすると登録が完了します。

 

Arduino IDEをESPresso Lite V2.0に対応させる方法

 

Arduino(Genuino)の開発に使う開発環境(IDE)でESPresso Lite V2.0 のプログラムを開発することができます。

下記のサイトよりArduino IDE (開発環境)をダウンロードして、インストールします。

https://www.arduino.cc/en/Main/Software

ARDUINO 1.6.9 より古いバージョンでは、サンプルスケッチのコンパイル時にエラーが発生する可能性があります。

インストール後、下記の手順でESPertの開発環境を整えます。ESPert_ArduinoIDE001

「追加のボードマネージャのURL」に
http://arduino.esp8266.com/stable/package_esp8266com_index.json
を入力します。ESPert_ArduinoIDE002

ツール → ボード → ボードマネージャ… の順に選択します。

ESPert_ArduinoIDE003

ボードマネージャのウィンドウで
esp8266 by ESP8266 Community
を選択し、インストールします。

ESPertArdunoIDE007

ツール → ボード で ESPresso Lite 2.0 を選択します。ESPert_ArduinoIDE004

スケッチ → ライブラリをインクルード  → ライブラリを管理…
の順に選択します。ESPert_ArduinoIDE010

ライブラリマネージャ のウィンドウで
ESPert by Jimmy
をインストールします。

ESPertArduinoIDE005

同様に下記の各ライブラリをインストールします。

  • Adafruit NeoPixel by Adafruit
  • ArduinoJson by Benoit Blanchon
  • DHT sensor library by Adafruit
  • ESP8266 Oled Driver for SSD1306 display by Daniel Eichborn
  • HttpClient by Adrian McEwen
  • PubSubClient by Nick O’Leary

スケッチの例 → ESPert にESPresso Lite V2.0 のサンプルスケッチが入っています。
_2000_ESPert_workshop が出荷時に書き込まれているスケッチです。

ESPert_ArduinoIDE013

 

ESPresso Lite V2.0 をインターネットに接続する

 

ESPresso Lite V2.0 は、無線LANルーター(Wi-Fiルーター)を介し、スタンドアロンでインターネットに接続することができます。
ただし、ESPresso Lite V2.0 には、キーボード等がついていませんので、接続先アクセスポイントの設定は、Androidスマートフォン、iPhone等を使って行います。

1. 専用アプリを使う方法

Android向けに用意されているアプリを使って設定を行う方法です。
下記のアプリをGoogle Playより、Androidスマートフォン、タブレットにインストールします。
ESPert SmartConfig 1.0.0

iPhone用のアプリは、まだ用意されておりません。

ESPert_SmartConfig

ESPresso Lite V2.0の電源が入った状態でGPIO13 のボタンを5秒ほど押します。

ESPert_SmartConfig_002

LEDの点灯状態でモードを把握することができます。

遅い点滅:SmartConfig モード
消灯:Wi-Fiに接続された状態
速い点滅:AP モード (アクセスポイントモード)
通常の点滅:Wi-Fiへの接続を試みている状態
消灯:Wi-Fiへ接続されてない状態

しかし、LEDでは状態を把握しづらいので
0.96インチ有機EL(OLED)モジュール
を使用することをお勧めします。
ESP_OLED

OLEDモジュールを接続すると、下記のように表示されます。

ESPert_SmartConfig_003GPIOボタンを長押しするたびにモードが変わります。専用アプリを使用して設定を行う場合場合、このSmart Config モードを使用します。

無線LANに接続した状態でESPert SmartConfig アプリを起動します。
すると、SSID: にスマートフォンが接続している無線LANのSSIDが表示されます。
パスワードは、スマートフォンが接続している無線LANルーター(アクセスポイント)のパスワードを入力します。

ESPert_SmartConfig_004

無線LANに接続されている ESPresso Lite V2.0 が認識され、設定が終わると下記のように表示されます。

ESPert_SmartConfig_006

OLEDには、下記のように表示されます。
ESPert_SmartConfig_005

これにより設定された項目は、EEPROMに保存され、電源を入れ直しても同じ設定が反映されます。

2. ESPresso Lite V2.0をアクセスポイントにして行う方法

ESPresso Lite V2.0をアクセスポイントに設定し、PCやスマートフォンからそのアクセスポイントに接続して、設定を行う方法です。

まず、無線LANルーターを有効な状態にしておいてください。

ESPresso Lite V2.0の電源が入った状態でGPIO13 のボタンを5秒ほど押します。

ESPert_SmartConfig_002

LEDの点灯状態が速い点滅になり、OLEDには、下記のように表示されます。

ESPert_SmartConfig_007

上記の「12345678」は、各ESPresso Lite固有の番号です。

パソコン等からそのアクセスポイントに接続します。
パソコンでアクセスポイント一覧を見ると、下記のように「ESPert-固有の番号」が表示されます。
ESPert_SmartConfig_008

「ESPert-xxxxxxxx(固有の番号)」を選択し、「接続」をクリックします。

ESPert_SmartConfig_009

接続が完了したら、ブラウザーソフトでOLEDに表示されているIPアドレス(通常、192.168.4.1)にアクセスします。
SSID:のChoose a Network に無線LANルーター(アクセスポイント)の一覧が表示されますので、使用する無線LANルーターのSSIDを選択し、そのSSIDのパスワードを入力し、「Submit」を押します。
ESPert_SmartConfig_010

ESPresso Lite V2.0が無線LANに接続され、設定が完了すると、下記のように表示されます。ESPert_SmartConfig_011

OLEDには、無線LANルーターから取得したIPアドレスが表示されます。

ESPert_SmartConfig_012

これにより設定された項目は、EEPROMに保存され、電源を入れ直しても同じ設定が反映されます。

USB接続加速度センサー JoyWarrior 24F14-WP の使い方

 

JoyWarrior 24F14-WPは、パソコンのUSBに接続し、3軸方向の加速度計として使用できます。また、傾斜センサー、振動センサー、衝撃センサーとしても使用できます。 パソコンでは、HIDジョイスティックとして認識されるため、別途、デバイスドライバーをインストールする必要がありません。
HIDなので、Windowsだけでなく、Linux、Mac OSでも使用することができます。
地震センサーとして使用することも可能です。

http://www.elefine.jp/SHOP/JW24F14-WP.html

 

パソコンへの接続

パソコンのUSBへ接続します。標準的なアナログジョイスティックとして認識されますので、別途、ドライバー等をインストールする必要はありません。

テスト用プログラム

各軸の数値表示、簡易的なグラフ表示だけでしたら、テスト用プログラムで行うことができます。
下記より、テスト用プログラム等が含まれているZIPファイルをダウンロードします。

http://www.codemercs.com/downloads/joywarrior/JoyWarrior24F14_win.zip

ダウンロードしたZIPファイルを展開(解凍)すると、下記のようなファイルができます。
JW001

Tilt Sensing

各軸の加速度の数値、および、それらの数値から計算した、各方向の傾きを表示します。

JoyWarrior Device: のドロップダウンリストで、デバイス(ID)を選択します。IDが表示されない場合、USBへの接続の確認等を行ってください。

JW002

Run ボタンをクリックすると、各数値が表示されます。

JW015

Seismograph

各軸の数値の変化を折れ線グラフとして表示します。
Seismograph 1.0 .exe を実行すると、下記のように表示されますので、左のドロップダウンリストで、デバイス(ID)を選択します。IDが表示されない場合、USBへの接続の確認等を行ってください。

JW006

その隣のドロップダウンリストの “2G”、”10Hz” は、それぞれ、レンジ(最大加速度)、更新頻度を表します。必要に応じて変更してください。

Seismographの下記のボタンをクリックすると、記録が始まります。

JW017

 

JW011

再度、ボタンをクリックすると、記録が停止します。

記録が停止した状態で下記のボタンをクリックすると、CSVファイルに出力することができます。

JW018

 

 

下記のボタンをクリックすると、各軸のグラフの線の位置を変更することができます。

JW019

 

 

上記ボタンをクリックして表示される下記のようなウィンドウで表示位置を変更します。

JW013

Banana Pi M3にUbuntu MATEをインストールする方法

Banana Pi M3(BPI-M3)は、オクタコアCPUを搭載したRaspberry Pi類似のシングルボードコンピューターです。

Banana Pi M3には、内蔵の8GB eMMCにAndroidがインストールされていますが、別のOSを使用することもできます。
別のOSのインストールには、内蔵のeMMCへ書き込む方法と、マイクロSDカードに書き込む方法がありますが、マイクロSDカードに書き込む方法を説明します。

インストールするために8GB以上のマイクロSDHC(マイクロSD)カードを用意します。
ただし、同じ8GBの表記でもメーカー、製品によって、実際の容量が異なりますので注意が必要です。
SinoVOIPで用意しているUbuntu MATEのイメージは、7,818,182,656 バイトですので、それ以上必要です。
東芝のMSDAR40N08Gでは、容量不足でした。
エレコムのMF-MRSDH08GC4Rは、書き込むことができました。

パッケージには、実際の具体的な容量が表示されていませんので、16GBのマイクロSDカードを使用したほうが無難です。
下記のサイトよりOSイメージをダウンロードします。
http://www.banana-pi.org/m3-download.html

ダウンロードしたzipファイルを展開(解凍)します。
展開すると、拡張子もなく、- というファイル名になり、正常に展開できなかったように思えますが、大丈夫です。

下記のサイトでSDカードへディスクイメージを書き込むアプリケーション、 DD for Windowsをダウンロードして、インストールします。
http://www.si-linux.co.jp/techinfo/index.php?DD%20for%20Windows

Winodws7 以降では、DD for Windows をそのまま実行すると、SDカードのドライブが表示されません。右クリックして、「管理者として実行」で実行する必要があります。BPIM3000
「ファイル選択」をクリックして、ダウンロードして展開してできたファイル、-を指定して、「<<書込<<」ボタンをクリックします。

書き込んだマイクロSDをBanana PI M3 のスロットへ差し込み、電源を接続するとSDカードからOSが読み込まれ、起動します。

BPI-M3 Banana PI M3 オクタコア・シングルボードコンピューター
は、下記でご購入できます。
http://www.elefine.jp/SHOP/BPI-M3.html

ArduinoでMP3ファイルを再生する Cytron MP3シールドの使い方

Cytron Shiled-MP3 (MP3シールド)を使うと、マイクロSDカードに記録されている、MP3ファイルを簡単にArduinoで再生させることができます。
Shield-MP3-640
ご購入は、下記のサイトをご覧ください。
www.elefine.jp/SHOP/SHIELD-MP3.html

MP3再生ライブラリーのインストール

まず、専用のMP3再生ライブラリーをインストールします。

ライブラリーを下記からダウンロードします。GitHubを利用しています。
https://github.com/CytronTechnologies/Cytron_MP3Shield

ファイル一覧の右上にある “Download ZIP” ボタンをクリックすると、まとめてZIPファイルにしてダウンロードすることができます。ShiedMP3_01

ダウンロードして、展開すると下記のようなファイル(フォルダー)ができます。ShiedMP3_02

extras フォルダー内を見ます。ShiedMP3_03

extrasフォルダー内のSdFatフォルダーをArduino IDEがインストールされているフォルダー内の libraries フォルダーにコピーします。ShiedMP3_04

↓ Arduino IDE(開発環境)がインストールされているフォルダーShiedMP3_05

さらに Cytron_MP3Shield-master.ZIP ファイルを展開したフォルダーへ戻ります。ShiedMP3_06

src フォルダーを同じところへコピーします。ShiedMP3_07

コピーしてできたフォルダーを MP3Player という名前に変更します。
src – コピー → MP3Player
ShiedMP3_08

そのMP3PlayerフォルダーをSdFatフォルダーと同様にArduino IDEがインストールされているフォルダー内の libraries フォルダーに移動します。
このsrcフォルダーの名前を変えて、libraries へ入れる点がCytronのチュートリアルの記述と異なります(チュートリアルにあるMP3Playerフォルダーがない)。

うまくインストールされると、Arduino IDEのメニュー
スケッチ → ライブラリをインクルード でMP3Player SdFat が表示されます。

ShiedMP3_09

マイクロSDカードの準備

何も記録されてないマイクロSDカードを用意します。
そのマイクロSDカードのルートディレクトリー(フォルダーに入れない)にCytron_MP3Shield-master.ZIP ファイルを展開した中にある sta013.cfg というファイルをコピーします。

場所 Cytron_MP3Shield-master\extras\Configuration file

extrasフォルダー

ShiedMP3_03

Configuration file フォルダーShiedMP3_10

sta013.cfg  このファイルをマイクロSDカードへコピーします。ShiedMP3_11

MP3ファイルのコピー

このMP3シールドでは、260kbpsまでのビットレートのMP3ファイルを再生することができます。ただし、mainループで他の処理をするためには、200kbp以下に抑えてください。通常聴く分には、128kbpsで十分でしょう。

まずは、サンプルプログラムに手を加えずに再生ができるようにMP3ファイルをサンプルプログラムの記述と同じファイル名にします。Windows PCなどでマイクロSDカード上にFavourites フォルダーを作成し、その中へ任意のMP3ファイルをコピーします。そのファイル名を Taio Cruz – Hangover ft. Flo Rida.mp3 に変更します。
そのマイクロSDカードをMP3シールドのスロットに差し込みます。

ArduinoにMP3シールドを接続

ICSPのピンにもソケットがありますので、それも差し込まれるようにArduinoに差し込みます。

ShiedMP3_13

ジャンパーピンが、SSはD3、ASDはD2にそれぞれセットされていることを確認してください。初期状態では、この設定になっています。

ShiedMP3_12

サンプルスケッチの転送

ダウンロードしたZIPファイルにサンプルスケッチが含まれています。
まずは、1トラック(1曲)再生の下記のサンプルで試すとよいでしょう。
Cytron_MP3Shield-master\examples\PlayATrack

PlayATrack.ino をダブルクリックするとArduino IDEが起動し、読み込まれます。

上述のライブラリーがきちんとインストールされていると、問題なくコンパイルできます。

MP3ファイルの再生

転送し終わると、MP3ファイルが再生されます。音が大きすぎる場合があるので耳につけずにヘッドフォンを接続してください。音の大きさに注意しながら、耳につけてください。

サンプルスケッチでは、シリアル通信で再生している曲の表示、音量調節、再生の停止ができるようになっています。
Arduino IDEのシリアルモニタでその確認ができます。

ShiedMP3_14

再生中のファイル名が表示されます。ShiedMP3_15

a を入力して、「送信」ボタンを押すと、音量が下がります。
ShiedMP3_16

これらの処理は、サンプルスケッチの下記の部分で行っています。
これを見て、お分かりのように “d” で音量を上げる、”s”で再生停止です。

if(isNum)
{
if(mp3.isPlaying()) mp3.Stop();
mp3.PlayTrack(Folder,inputString.toInt());
Serial.println(“Currently playing…”);
Serial.print(“Track “+String(mp3.getTrackNo()));
Serial.println(“: “+mp3.getName());
}
else
{
if(inputString.equals(“a”))
mp3.setVolume(–vol);
else if(inputString.equals(“d”))
mp3.setVolume(++vol);
else if(inputString.equals(“s”))
mp3.Stop();
}

独自のプログラム作成

サンプルスケッチ、CytronのMP3ライブラリーチュートリアルを参照して、各自独自のプログラムを作成してください。

 

SCANAQUAD使用方法ロジックアナライザー波形観測

USB接続のロジックアナライザー、ScanaQuadで実際に波形を見る方法を説明します。

  1. ScanaQuadをパソコンに接続した状態でScanaStudioを起動します。
  2. 下記のように中央に+があるウィンドウが表示されます。その中央の+をクリックします。Scana011
  3. すると、機種選択のウィンドウが表示されます。パソコンに接続され、認識されている機種は、左に緑色で表示されます。機種を選択し、Create Workspaceボタンを押します。
    Scana012
  4. 下記のようなウィンドウが表示されます。各プローブを測定対象に接続し、左上のQuadScanaStart ボタンを押すと、サンプリングが始まり、終了すると波形が表示されます。Scana017
  5. そのままの状態では、ボタンを押すとすぐにサンプリングが始まってしまい、測定対象のタイミングにうまく合わせられないことがあります。その場合は、サンプリング開始を信号に合わせて行わせることができます。それがTrigger(トリガー)です。下記のようにTriggerの下にある、歯車のアイコンをクリックします。
    ScanaTriggerSet
  6. トリガー条件を設定するウィンドウが表示されます。これでトリガー源(チャネル)、立ち上がり等の条件を設定します。Scana021OKボタンを押すと、保存されます。
  7. トリガーを指定すると、下記のように表示されます。右下のStartボタンを押すと、トリガー待ちになり、指定した条件になるとサンプリングが開始されます。
    Scana022

 

SCANAQUAD使用方法 ScanaStudioのインストール

  1. 下記よりSCANAQUADを使うためのソフト、ScanaStudioをダウンロードしてください。
    https://www.ikalogic.com/scanastudio_v2/
    Windows, Mac OS X, Linux (Ubuntu) 用が用意されています。使用するOSに合わせて選択し、ダウンロードしてください。ここでは、Windowsで説明します。
  2. scanastudio_setup.exe を実行します。
    基本的には、”Next >” ボタンを押していくだけでいいです。Scana001                    Scana002Scana003Scana004Scana005Scana006Scana007
  3. Launch ScanaStudio をチェックして、Finishボタンを押すと、ScanaStudioが起動します。
  4. インターネットに接続された状態で起動すると、下記のように各種プロトコルのデコーダーのダウンロードを促すウィンドウが表示されます。Scana008
  5. Download / Update checked ボタンを押すと、ダウンロードされます。
  6. ダウンロード後、新しいデコーダーがない場合、下記のように表示されますので、Ignore ボタンを押します。Scana010
  7. すると、下記のように表示されますので、中央の+ボタンを押してください。Scana011
  8. ScanaQuadが認識されている場合、機種名の左に緑色で表示されます。使用する機種を選択し、”Create Workspace”ボタンを押してください。下記の場合では、ScanaQuad SQ25です。Scana012認識されてない場合、下記のように緑色の表示がなく、Create Workspaceのボタンの上に (Demo mode) と表示されます。USBの接続等を確認してください。Scana018

    9. 下記のように表示されたら、準備は、完了です。Scana017

ProfiLab-ExpertでPoKeys57Eを使う方法

ProfiLab-Expertでは、Modbus/TCPのコンポーネントを用いることにより、PoKeys57Eを使用することができます。
Modbus/TCPは、主にプログラマブルロジックコントローラー(PLC)のI/Oで使われる規格です。
ProfiLab-Expertは、そのModbus/TCPのスレーブデバイスに対してアクセスすることができます。
また、PoKeys57Eは、Modbus/TCPのスレーブデバイス(I/O入出力ユニット)として使用することができます。
よって、それらを組み合わせて使用することができます。

PoKeys57Eの設定
1.専用ツールPoKeysの上部メニューのDevice内、Modbus configurarion … を選択します。

PoKeysModbusConfiguration

2.それにより表示されたウィンドウで使用する機能にチェックをつけます。
下記の例では、デジタル入力(Read)、デジタル出力(Write)を行うようにしました。
Modbus port number、Modnus connection timeoutは、初期値のそれぞれ、502、3のままでかまいません。

PoKeysModbusConfiguration2

3.各設定を終えたら、Closeボタンをクリックして閉じます。
4.各ピンのI/O機能の設定を行います。
5.メインウィンドウのSend to deviceボタンをクリックすると、PoKeys57Eに転送されます。
6.PoKeys57Eに割り当てられたIPアドレスの確認をします。
メニューのDevice内、About…を選択します。
PoKeysAbout27.それにより表示されたウィンドウにIPアドレスが表示されます。このIPアドレスをProfiLab-Expertで使用します。
下記の例では、192.168.100.45です。
PoKeysAbout3

ProfiLab-Expertの設定
1.PoLabでProfiLab用のサンプルを用意しているのでそれを参考にするとわかりやすいでしょう。https://www.poscope.com/index.php?route=product/product/download&download_id=41&product_id=76

2.ダウンロードしたサンプルプロジェクトをProfiLab-Expertで開きます。

3.出力の設定を行います。Write Multiple Coils コンポーネントを右クリックし、Properties… を選択します。
PoKeysProfiLab1
4.それにより表示されたウィンドウで各設定を行います。
Host [IP] は、PoKeys57Eに割り当てられたIPアドレスを設定します。
Start addressは、出力を行うピン番号を指定し、Channelsに点数を指定します。Start addressよりChannels分の出力を同時に行えます。
PoKeys57Eは、ピン番号は1からになっていますが、ProfiLab-Expertでは0からになっています。PoKeysの1番ピンは、ProfiLabでは、0です。
PoKeysProfiLab2

5.同様に入力側の Read Coils の設定も行ってください。
以上の方法で使用できます。