①Arduinoのセットアップ
1.「ArduinoをJavaScriptで制御する」の手順でArduinoを開発環境をセットアップします。
2.次のように回路を配線します。
②「MQTT.js」のインストール
1.コマンドプロンプトを起動し、作業用フォルダに移動します。
2.「npm install mqtt」と入力します。
③Adafruit の準備
・IO KEYの取得
1.Adafruit IOのアカウントを作成します。
2.アカウントを作成すると、「Welcome Dashboard」が表示されるので、右上の鍵アイコン(Your secret AIO KEY)をクリックし、AIO KEYを確認します。

・Feed(フィード)の作成
デバイスの制御に使用するFeedを作成します、
1.[MY DASHBOARDS]をクリックします。
2.「Your Feeds」→[CREATE FEED]をクリックします。
3.「NAME」にフィード名(ここでは「LED」とします)を入力し、[CREATE FEED]をクリックします。
・Dashboard(ダッシュボード)の作成
1.「Your Dashboards」→[CREATE DASHBOARD]をクリックします。
2.「DASHBOARD NAME」にダッシュボードの名前を入力し、[CREATE DASHBOARD ]をクリックします。
・blockの作成
1.右上の[+](Create a new block)をクリックします。
2.トグルボタンの[CREATE]をクリックします。

3.「LED」フィードの「CHOOSE」をクリックし、[NEXT STEP>]をクリックします。

4.[CREATE BLOCK]をクリックします。

「BOTTON ON TEXT」と「BOTTON ON TEXT」は、オン/オフの状態を示す文字列と同時に、送信されるメッセージになります。この場合、オンにしたときには「ON」、オフにしたときは「OFF」という文字列が送信されます。
5.ページをリロードします。

④プログラムの作成と実行
1.次のJavaScriptコードを入力し、「subscriber.js」と名前を付けて作業用フォルダに保存します。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var five = require("johnny-five"); | |
var board = new five.Board(); | |
var mqtt = require('mqtt'); | |
var client = mqtt.connect('mqtt://io.adafruit.com', { | |
port:1883, | |
username:'[USER NAME]', | |
password:'[YOUR AIO KEY]' }); | |
client.on('connect', function () { | |
// Topic name(トピック名)を「<user name>/feeds/<feed name>」の形式で指定する | |
var feed = 'Topic name'; | |
client.subscribe(feed); | |
client.publish(feed,'OFF'); | |
}); | |
board.on("ready", function() { | |
var led = new five.Led(5); | |
// メッセージの受信 | |
client.on('message', function (topic, message) { | |
console.log(message.toString()); | |
if(message.toString() === 'ON'){ | |
led.on(); | |
} else { | |
led.off(); | |
} | |
}); | |
}); |
[Topic name]には、トピック名を「<ユーザー名>/feeds/<フィード名>」の形式で指定します。今回は、「LED」フィードを使用するので、ユーザー名が「taro」なら、「taro/feeds/LED」となります。
2.コマンドプロンプトから、「node subscriber.js」と入力します。
⑤動作の確認
Adafruit IOのダッシュボードのスイッチを操作し、LEDがオン/オフすることを確認します。
0 件のコメント:
コメントを投稿