LoginSignup
9
14

More than 5 years have passed since last update.

IFTTTのwebhookチャンネルでArduinoを使う(Action側)

Last updated at Posted at 2017-08-10

やりたいこと

IFTTTのwebhookチャンネルを通して、Arduinoをアクションとして実行させたい。
構成図.png

きっかけ

IFTTTのwebhookチャンネルをTrigger側で利用した記事は沢山見かけたが、Action側で利用した例が中々見つからなかったのでやり方を調べて備忘録としてまとめました。

用意するもの

・Twitterアカウント
・Blynkアカウント(http://www.blynk.cc/)
・IFTTTアカウント(https://ifttt.com/)
・Arduino Yun(https://store.arduino.cc/usa/arduino-yun)
・ブレッドボードや単色LED、抵抗など

各種サービスのアカウントの登録やArduino Yunの無線の設定などは事前に行ってください。

出来るモノ

この記事内で制作するものは、Twitterで特定のハッシュタグ付きツイートを呟いたら、ArduinoのLEDをON/OFFを制御できるものを作ります。

Blynk側で行う事

Blynkとは、スマホからArduinoやRaspberry Piを簡単かつ自由に操作できるようになるアプリです。
今回これをダミーサーバとして利用します。

「New Project」を選び、各項目を入れて「Create Project」を押して作成完了してください。
作成完了した際に、登録したメールアドレスにAUTH TOKENが送られますので、以降の内容で書かれているAUTH TOKENは適切に置き変えてください。
IMG_7391.PNG
IMG_7392.PNG
以上で、Blynkアプリ内での設定は完了です。
(プロジェクトの作成のみ行います)

IFTTT側で行う事

IFTTTとは、モノ・サービスとモノ・サービスを簡単に繋げられるアプリ(プラットフォーム)です。
今回はONとOFFの2種類のアプレットを作ります。
どちらのアプレットもTriggerにTwitterActionにWebhookを選択してください。

ON側のアプレット

URLは、下記になります。
http://IP_FROM_PING/AUTH TOKEN/pin/PIN

IP_FROM_PINGの部分は、コマンドプロンプト等で下記を打ち込み返ってきたIPアドレスに置き換えてください。
ping blynk-cloud.com

PINは、D1やD2などArduinoのLEDが繋がっているピン番号に置き換えてください。
ON.png

OFF側のアプレット

ONの設定とHashTagとBodyが異なるだけです。
OFF.png

Arduino Yun側行う事

Arduinoに書き込むプログラム

サンプルプログラムを下記のリンクの画面右側の「Download ZIP」でファイルをダウンロードします。
その後、Arduino IDEのメニューで「スケッチ > ライブラリをインクルード > .ZIP形式のライブラリをインストール」を行って下さい。
https://github.com/blynkkk/blynk-library

「Blynk > Board WiFi > Arduino_YUN.ino」と同じスケッチサンプルです。
AUTH TOKENは適切なものに置き変えてください。

Arduino_YUN.ino
/*************************************************************
  Download latest Blynk library here:
    https://github.com/blynkkk/blynk-library/releases/latest
  Blynk is a platform with iOS and Android apps to control
  Arduino, Raspberry Pi and the likes over the Internet.
  You can easily build graphic interfaces for all your
  projects by simply dragging and dropping widgets.
    Downloads, docs, tutorials: http://www.blynk.cc
    Sketch generator:           http://examples.blynk.cc
    Blynk community:            http://community.blynk.cc
    Social networks:            http://www.fb.com/blynkapp
                                http://twitter.com/blynk_app
  Blynk library is licensed under MIT license
  This example code is in public domain.
 *************************************************************
  This example shows how to use Arduino Yun Bridge
  to connect your project to Blynk.
  Feel free to apply it to any other example. It's simple!
 *************************************************************/

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial


#include <Bridge.h>
#include <BlynkSimpleYun.h>

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "AUTH TOKEN";


void setup()
{
  // Debug console
  Serial.begin(9600);

  Blynk.begin(auth);
  // You can also specify server:
  //Blynk.begin(auth, "blynk-cloud.com", 8442);
  //Blynk.begin(auth, IPAddress(192,168,1,100), 8442);
}

void loop()
{
  Blynk.run();
}

Arduinoの回路図

抵抗は適切なものを挟んでください。
名称未設定-3.png

動作確認

ツイッターでハッシュタグ#ONを付けるとArduinoのLEDが光り、#OFFを付けるとLEDの光りが消えます。
ただ動作自体はリアルタイムに行われないので、ツイートしてから1分前後で光る位の気持ちで動作確認をしてください。

最後に

今回は簡易的な動作実験だったので、LEDのON/OFFの切換をやりましたが、Arduino側の構成にモーター等に置き変えると色々と面白い事が手早く出来そうです。また他にも簡単なやり方がきっと沢山あるので、そのうち試して記事にでも纏めてみたいと思います。

参考サイト

[SOLVED] IFTTT - Maker Channel won’t update virtual pin anymore
https://community.blynk.cc/t/solved-ifttt-maker-channel-wont-update-virtual-pin-anymore/6631

Using IFTTT with BLynk
https://create.arduino.cc/projecthub/KaustubhAgarwal/using-ifttt-with-blynk-a194a9

9
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
14