Arduinoで取得したデータをTwitterで呟く方法

Arduinoで取得したデータをTwitterで呟いてみよう!

最近電子工作を学んでいます。

 
Arduinoを利用すれば気温とか湿度とかいろんな情報を取得できるようになるのですが、この取得したデータをTwitterで呟いてみようというのが今回の試みです。

では早速取り掛かります。

まずはArduinoとBlynkを繋げる!

事前準備

Blynkのアカウントを作成します。

そもそもBlynkとは、IoT(モノのインターネット)用のアプリで、デバイスをネットにつなげていろんなことができるようになる!ってやつです。

こいつの詳しい導入方法はスタートガイドに書かれています。

まずBlynkのアカウントを作成するにはスマホにBlynkのアプリをインストールする必要があります。

Android版はこちら、iPhone版はこちら

アプリを開くとBlynkのアカウントが作れるので作成します。

この際に入力したアドレス宛にパスワードが送られます。

上部のプラスボタンから新しいプロジェクトを作成してください。

 プロジェクトの名前を決め、所持しているArduinoのボードを指定します。
Createを押すとAuth Tokenがメールで送られますので確認してください。

Arduino側の設定

BlynkのライブラリをArduino IDEにインストールします。

まずはこちらから最新版のライブラリをパソコンでダウンロードしてください。

展開するとlibrariesフォルダとtoolsフォルダが見つかるかと思います。

これらをスケッチフォルダ内に移動してください。

スケッチフォルダの場所の見つけ方はArduino IDEのPreferencesから探せます。

私の環境ではドキュメントフォルダ内にありました。

次にこちらよりサンプルコードを入手します。

左側のカラムで所持しているボードを指定、Connectionをパーツと適合するWiFiにします。

Auth Tokenは先ほどメールで送られたやつです。

ExamppleはTwitterにしてください。



設定が終わったらコードをコピペします。

コード内に下記記述があると思うので使うSSIDとパスワードを指定してください。フリーWiFiでパスワードがない場合はchar pass[] = "";のように空欄にしてください。

char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";
これでBlynkの基本的な設定は終わりです。

呟いてみよう!

Arduinoのプログラム

では呟いてみましょう。

自分のコードを張り付けておきます。

BLYNK_WRITE(V2){
  float humidity = dht.readHumidity();  //Read the humidity value from the sensor.
  float celsius = dht.readTemperature(); //Read the temperature (c) value from the sensor.
  String message="Temperature(c): "+String(celsius)+" Humidity(%): "+String(humidity);
  Blynk.tweet(message);
}

プログラムの最下部にこれを作りました。

Blynk.tweetで呟けるので、これの引数にString型の変数を渡してあげれば呟けます。

気温とか数値に関してはString()を使うことで文字列に変更可能です。

今回はFloatをStringに変換しています。

各々のセンサーでプログラムとかも変わってくるので参考にしてください。

Blynkアプリの設定

Blynkアプリを開いて+ボタンを押すとウィジェットを追加できます。

Twitterウィジェットを追加して認証してください。
戻ったらボタンウィジェットも追加してください。

OUTPUTのPinをV2(ArduinoプログラムのBLYNK_WRITE(V2)に対応させる)にして名前を付けます。

これで設定は終わり。

あとはArduinoにプログラムを書き込んで、シリアルモニタでReadyが表示されたらBlynkアプリの右上にある再生ボタンを押す。

そんで、V2を押せばツイートできる。

かなり説明をはしょったところがあるのでわからないことがあれば気軽にコメントください。

0 件のコメント :