Arduinoをネット(IFTTT)に繋げて遊ぶ!

楽しい電子工作の時間だあああ

おはようございます

本記事では電子工作として有名なArduinoをインターネットに繋げて色んなことをできるようにする方法を紹介します

今回はツイッターで呟いたらArduinoのディスプレイに「New Tweet!」と表示させようと思います。

留意事項:仕様変更によりこの記事通りではうまく動作しない可能性があります。

2017/12/19時点での環境においての動作なのでその点だけお願いいたします。

必要なもの・知識

最低でもLチカができること。

あとWi-Fiを使うのでそれ用のパーツと動作確認のためLEDとかディスプレイとかがあるといいです。

あとWi-Fiに繋げるのでSSIDとパスワード、Arduinoをネットに繋げるのにBlynk(本記事ではv0.4.10を利用します)、ツイッターと連携させるのにIFTTTが必要になります。

まずはArduinoとBlynkを繋げる!

事前準備

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

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

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

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

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

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

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

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

Arduino側の設定

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

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

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

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

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

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

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

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


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

ExamppleはBlynk Blinkで大丈夫です。

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

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

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

ディスプレイにNew Tweetを表示させる

この辺の作業はArduinoの種類とかによって変わってくるかと思います。

やりたいことは、バーチャルpinを作成して、新しいツイートがあったらそのpinをhigh(起動させる)にしてコードを実行することです。

私はバーチャルpinをv2にしてその中に動作させたいコードを記述しました。

BLYNK_WRITE(V2){
lcd.setCursor(0,0);   //goto first column  and first line (0,0)
lcd.print("New Tweet!");     //Print at cursor Location
delay(1000);  
}

LチカでTweetの有無を確認する場合はBLYNK_WRITE(V2){}内にそのコードをかいてください。

一旦この状態でArduinoにアップロードし動作確認します。

Arduino IDE右上のSerial MonitorがReadyと表示されたら

http://blynk-cloud.com/Auth Token(メールで送られたやつ)/update/V2?value=1

にブラウザからアクセスして下さい。

例:Auth Tokenがabcdefghijklmnならhttp://blynk-cloud.com/abcdefghijklmn/update/V2?value=1



BLYNK_WRITE(V2){}に書かれた処理が実行されていれば動作確認完了です!

ArduinoとIFTTTを繋げる!

ArduinoとIFTTTを繋げてみます。

IFTTTを使えば条件に応じてArduinoを動かすことができます。

新しいTweetがあったら(条件)ディスプレイにNwe Tweetと表示させる(動作)といった具合です。条件はIFTTTに沢山あるので探してみてください。

2015年くらいの記事だとIFTTTのMaker Channelを使えばArduinoと繋げられると書かれていますがMaker ChannelはWebhooksに名称変更されたのでMaker Channelで探してもヒットしません、注意してください。

 IFTTTのアカウントを作成、ログインしたら新しいAppletを作ります。






thisが条件、thatが処理内容です。

thisより、「New tweet by you」を選択するとあなたが新しいツイートするのをきっかけにthatで選択された処理が行われます。

thatはwebhooksを選択します。

URLはhttp://blynk-cloud.com/Auth Token(メールで送られたやつ)/pin/V2

MethodはPUT、Content Type (optional)はapplication/json、Body (optional)は["1"]

以上で設定完了です

まとめ

IFTTTとArduinoを繋げられました。

条件とか処理を変えていけば自分のアイデア通りのものを作れるようになると思います。

この記事が参考になれば幸いです。

0 件のコメント :