EONは、PubNubのデータをリアルタイムに可視化するためのJavaScriptフレームワークです。このEONを使って、Arduinoで計測した温度データを可視化してみます。
Arduinoのセットアップや回路については、「PubNub+Google Chart(Gauge)でセンサー・データを可視化する」を参照してください。
①パブリッシャー側のコード
Arudinoで計測した温度データをパブリッシュ(発行)するJavaScriptコードを記述します。
パブリッシュするデータは、次の書式で指定します。
{ eon : { key1 : value,, key2 : value,・・・・keyN : value}}
②サブスクライバー(ブラウザ)側のコード
温度データをサブスクライブ(購読)し、グラフ化して表示するるJavaScriptコードを記述します。
2016年1月23日土曜日
2016年1月21日木曜日
Arudino+carriotsでIoT-データのプッシュ(転送)
carriotsには、HTTP通信を使用して、データを外部にプッシュ(転送)する「Trigger」という仕組みが用意されいます。そこで、「Trigger」を使って、データをIFTTTのMakerに転送する方法を説明します。
IFTTTのMaker、およびレシピの作成方法については、次の記事を参照してください。
・IFTTTを使ってセンサー・データをGoogleドライブ(スプレッドシート)に記録する(Arduino編)
1.CONTROL PANELの左サイドメニューの「Push(Trigger)」をクリックします。
2.[+New]をクリックします。
3.各項目に次のように入力します。
Name : 任意の名前
Max retries : 最大リトライ回数
Url : https://maker.ifttt.com/trigger/<Event Name>/with/key/<your key>
Vervb : POST
Payload : value1=%%%<データ名>%%%
<Event_Name>には、レシピのEvent Nameを、<Your Key>には、IFTTTのKeyを入力します。
<データ名>には、プッシュするデータの名前(例:temperature)を入力します。
4.[Add another header]をクリックし、次の2つのHTTPヘッダー情報を追加します。
key : Accept
Value : application/json
key : Content-Type
Value : application/x-www-form-urlencoded
5.[Save]をクリックして保存します。
IFTTTのMaker、およびレシピの作成方法については、次の記事を参照してください。
・IFTTTを使ってセンサー・データをGoogleドライブ(スプレッドシート)に記録する(Arduino編)
1.CONTROL PANELの左サイドメニューの「Push(Trigger)」をクリックします。
2.[+New]をクリックします。
3.各項目に次のように入力します。
Name : 任意の名前
Max retries : 最大リトライ回数
Url : https://maker.ifttt.com/trigger/<Event Name>/with/key/<your key>
Vervb : POST
Payload : value1=%%%<データ名>%%%
<Event_Name>には、レシピのEvent Nameを、<Your Key>には、IFTTTのKeyを入力します。
<データ名>には、プッシュするデータの名前(例:temperature)を入力します。
4.[Add another header]をクリックし、次の2つのHTTPヘッダー情報を追加します。
key : Accept
Value : application/json
key : Content-Type
Value : application/x-www-form-urlencoded
5.[Save]をクリックして保存します。
2016年1月20日水曜日
Arudino+carriotsでIoT-センサー・データの監視と通知
carriotsでセンサー・データやデバイスを監視するには、「Listener」(リスナ)を使います。たとえば、温度データ(temperature)が30より大きくなったら、メールで通知するListenerを作成するには、次のように操作します。
1.CONTROL PANELの左サイドメニューのの「Listener」をクリックします。
2.[+New]をクリックします。
3.「If expression」に「context.data.temperature > 30」と入力します。
4.「Then expression」に次のコードを入力し、[Save]をクリックします。
import com.carriots.sdk.utils.Email;
def email = new Email ();
email.to="<mail addres>";
email.message="<message text>";
email.send();
<mail addres>には送信先のメールアドレスを、<message text>には、メールメッセージを入力します。
1.CONTROL PANELの左サイドメニューのの「Listener」をクリックします。
2.[+New]をクリックします。
3.「If expression」に「context.data.temperature > 30」と入力します。
4.「Then expression」に次のコードを入力し、[Save]をクリックします。
import com.carriots.sdk.utils.Email;
def email = new Email ();
email.to="<mail addres>";
email.message="<message text>";
email.send();
<mail addres>には送信先のメールアドレスを、<message text>には、メールメッセージを入力します。
Arudino+carriotsでIoT-グラフの作成
carriotsで収集したデータをグラフ化する方法を説明します。
1.「CARRIOTS CONTROL PANEL」の左サイドメニューの「Wizard Widget Graphs」をクリックします。
2.グラフの種類を選択し、[Next Step]をクリックします。
3.対象のデバイスを選択し、[Next Step]をクリックします。
4.「From」(開始日)、「To」(終了日)を設定し、[Next Step]をクリックします。
※設定なしでも可
5.最大レコード数を設定し、[Next Step]をクリックします。
6.グラフにプロットするデータを選択し、[Next Step]をクリックします。
7.Y軸の項目を選択し、[Next Step]をクリックします。
※グラフの種類が「line」「bar」の場合
8.グラフのオーダー(順序)を設定し、[Next Step]をクリックします。
生成されたJavaScriptコードを、HTMLに張り付けることで、サイト上でグラフを公開することができます。
1.「CARRIOTS CONTROL PANEL」の左サイドメニューの「Wizard Widget Graphs」をクリックします。
2.グラフの種類を選択し、[Next Step]をクリックします。
3.対象のデバイスを選択し、[Next Step]をクリックします。
4.「From」(開始日)、「To」(終了日)を設定し、[Next Step]をクリックします。
※設定なしでも可
5.最大レコード数を設定し、[Next Step]をクリックします。
6.グラフにプロットするデータを選択し、[Next Step]をクリックします。
7.Y軸の項目を選択し、[Next Step]をクリックします。
※グラフの種類が「line」「bar」の場合
8.グラフのオーダー(順序)を設定し、[Next Step]をクリックします。
生成されたJavaScriptコードを、HTMLに張り付けることで、サイト上でグラフを公開することができます。
2016年1月19日火曜日
Arudino+carriotsでIoT-センサー・データの収集
IoTプラットフォーム(クラウドサービス)のcarriotsを使って、Arudinoで計測したセンサー・データ(温度)を取集してみます。
■carriotsの準備
①アカウント作成
carriotsのアカウントを作成します。
②デバイスの設定
1.「CARRIOTS CONTROL PANEL」の左サイドメニューの「Device」をクリックします。
2.「defaultDevice」の「Action」列の[Action]→[edit]をクリックします。
※「defaultDevice」は規定で用意されるデバイスです。新しくデバイスを作成することもできますが、今回はこの「defaultDevice」を使用します。
3.「Time zone」を「Tokyo」に設定し、[Save]をクリックします。その他の項目は、必要に応じて設定してください。
③Apikeyの確認
1.上部メニューの[MY SETTING]→[MY ACCOUNT]をクリックします。
2,表示されたFull Privileges Apikeyを確認します。
③Id developer(device Id)の確認
1.左サイドメニューの「Device」をクリックします。
2.「Name」列のデバイス名(ここでは「defaultDevice」)をクリックします。
3.表示された情報の「Id developer」の内容を確認します。
※Id developerは、「<デバイス名@ユーザ名.ユーザー名>」の形式になります。これは、ページ上部にも表示されています。
■回路とプログラム
①Arudino開発環境の構築
1.「ArduinoをJavaScriptで制御する」の手順で開発環境を構築します。
2.コマンドプロンプトから「npm install request」と入力し、node.jsのrequestモジュールをインストールします。
②回路の配線
次のように回路を配線します。
③プログラムの作成と実行
1.次のJavaScriptコードを入力し、「rest_carriots.js」と名前を付けて、作業用フォルダに保存します。
<your Full Privileges Apikey>には、「Full Privileges Apikey」を、<your Id developer>には「Id developer」を入力します
2.コマンドプロンプトを起動し、作業用フォルダに移動し、「node rest_carriots.js」と入力します。
④データの確認
「CARRIOTS CONTROL PANEL」の左サイドメニューの「Data streams」をクリックします。
■carriotsの準備
①アカウント作成
carriotsのアカウントを作成します。
②デバイスの設定
1.「CARRIOTS CONTROL PANEL」の左サイドメニューの「Device」をクリックします。
2.「defaultDevice」の「Action」列の[Action]→[edit]をクリックします。
※「defaultDevice」は規定で用意されるデバイスです。新しくデバイスを作成することもできますが、今回はこの「defaultDevice」を使用します。
3.「Time zone」を「Tokyo」に設定し、[Save]をクリックします。その他の項目は、必要に応じて設定してください。
③Apikeyの確認
1.上部メニューの[MY SETTING]→[MY ACCOUNT]をクリックします。
2,表示されたFull Privileges Apikeyを確認します。
③Id developer(device Id)の確認
1.左サイドメニューの「Device」をクリックします。
2.「Name」列のデバイス名(ここでは「defaultDevice」)をクリックします。
3.表示された情報の「Id developer」の内容を確認します。
※Id developerは、「<デバイス名@ユーザ名.ユーザー名>」の形式になります。これは、ページ上部にも表示されています。
■回路とプログラム
①Arudino開発環境の構築
1.「ArduinoをJavaScriptで制御する」の手順で開発環境を構築します。
2.コマンドプロンプトから「npm install request」と入力し、node.jsのrequestモジュールをインストールします。
②回路の配線
次のように回路を配線します。
③プログラムの作成と実行
1.次のJavaScriptコードを入力し、「rest_carriots.js」と名前を付けて、作業用フォルダに保存します。
<your Full Privileges Apikey>には、「Full Privileges Apikey」を、<your Id developer>には「Id developer」を入力します
2.コマンドプロンプトを起動し、作業用フォルダに移動し、「node rest_carriots.js」と入力します。
④データの確認
「CARRIOTS CONTROL PANEL」の左サイドメニューの「Data streams」をクリックします。
2016年1月17日日曜日
Arudino+theThings.IOでIoT-センサー・データの収集
theThings.IOを使って、Arudinoで計測したセンサー・データの収集する方法を説明します。
①アクティベート(Thing Tokenの取得)
1.theThings.IOのアカウントを作成します。
2.左サイドのメニューの[Things Manager]を選択し、「ユーザー名 product」の[DETAILS]をクリックします。
3.[Get activaton codes]をクリックします。
4.[+]をクリックします。
5.表示されたウィンドウでThing Tokenを確認し、[OK]ボタンをクリックします。
以降、Thing Tokenは、「2」までの手順で確認できるようになります。
②開発環境の構築
1.「ArduinoをJavaScriptで制御する」の手順で開発環境を構築します。
2.コマンドプロンプトから「npm install thethingsio-api」と入力し、theThings.IO APIライブラリ(Node.jsモジュール)をインストールします。
③回路の配線
次のように回路を配線します。
④プログラムの作成と実行
1.次のJsonを入力し、「config.json」と名前を付けて、作業用フォルダに保存します。
<your Thing Token>には、①で取得したThing Tokenを入力します。
2.次のJavaScriptコードを入力し、「temp_thethings.js」と名前を付けて、作業用フォルダに保存します。
3.コマンドプロンプトを起動し、作業用フォルダに移動して「node temp_thethings.js」と入力します。
⑤データの確認
1.theThings. IOにサインインし、Panel(パネル)を表示します。
2.左サイドのメニューの[Things Manager]を選択し、「ユーザー名 product」の[DETAILS]をクリックします。
3.「Option」欄の[Details]をクリックします。
①アクティベート(Thing Tokenの取得)
1.theThings.IOのアカウントを作成します。
2.左サイドのメニューの[Things Manager]を選択し、「ユーザー名 product」の[DETAILS]をクリックします。
3.[Get activaton codes]をクリックします。
4.[+]をクリックします。
5.表示されたウィンドウでThing Tokenを確認し、[OK]ボタンをクリックします。
以降、Thing Tokenは、「2」までの手順で確認できるようになります。
②開発環境の構築
1.「ArduinoをJavaScriptで制御する」の手順で開発環境を構築します。
2.コマンドプロンプトから「npm install thethingsio-api」と入力し、theThings.IO APIライブラリ(Node.jsモジュール)をインストールします。
③回路の配線
次のように回路を配線します。
④プログラムの作成と実行
1.次のJsonを入力し、「config.json」と名前を付けて、作業用フォルダに保存します。
<your Thing Token>には、①で取得したThing Tokenを入力します。
2.次のJavaScriptコードを入力し、「temp_thethings.js」と名前を付けて、作業用フォルダに保存します。
3.コマンドプロンプトを起動し、作業用フォルダに移動して「node temp_thethings.js」と入力します。
⑤データの確認
1.theThings. IOにサインインし、Panel(パネル)を表示します。
2.左サイドのメニューの[Things Manager]を選択し、「ユーザー名 product」の[DETAILS]をクリックします。
3.「Option」欄の[Details]をクリックします。
2016年1月15日金曜日
PubNub+Google Chart(Gauge)でセンサー・データを可視化する
PubNubを使って、Arduinoで計測したセンサー・データ(温度)をブラウザで受信し、Google ChartのGauge(ゲージ)で可視化する方法を説明します。
①開発環境の構築
「PubNubを使ってArudinoを制御する」の①~③の手順で開発環境を構築します。
②回路の配線
次のように回路を配線します。
③プログラムの作成
1.次のJavaScriptコードを入力し、「temp_pubnub.js」と名前を付けて、作業用フォルダに保存します。
2.次のHTMLコードを入力し、「temp_pubnub.jhtml」と名前を付けて、任意の場所に保存します。
<your Publish key>にはPublish Keyを、<your Subscribe key>にはSubscribe Keyを入力します。
④プログラムの実行と動作確認
1.コマンドプロンプトを起動し、作業用フォルダに移動します。
2.「node temp_pubnub.js」と入力します。
3.ブラウザで「ltemp_pubnub.html」を開いて、[接続]ボタンをクリックし、ゲージに温度が表示されることを確認します。
4.[切断]ボタンのクリックで、ゲージが0になることを確認します。
①開発環境の構築
「PubNubを使ってArudinoを制御する」の①~③の手順で開発環境を構築します。
②回路の配線
次のように回路を配線します。
③プログラムの作成
1.次のJavaScriptコードを入力し、「temp_pubnub.js」と名前を付けて、作業用フォルダに保存します。
2.次のHTMLコードを入力し、「temp_pubnub.jhtml」と名前を付けて、任意の場所に保存します。
<your Publish key>にはPublish Keyを、<your Subscribe key>にはSubscribe Keyを入力します。
④プログラムの実行と動作確認
1.コマンドプロンプトを起動し、作業用フォルダに移動します。
2.「node temp_pubnub.js」と入力します。
3.ブラウザで「ltemp_pubnub.html」を開いて、[接続]ボタンをクリックし、ゲージに温度が表示されることを確認します。
4.[切断]ボタンのクリックで、ゲージが0になることを確認します。
2016年1月14日木曜日
PubNub+Raspberry Pi カメラで簡易ライブカメラシステムを構築する
PubNubとRaspberry Pi カメラ(カメラモジュール)を使って、簡易ライブカメラシステムを構築する方法を説明します。
①Raspberry Pi 開発環境の準備
「Raspberry Pi カメラのリモート制御&画像転送-PubNub編」の「Raspberry Pi 開発環境の準備」の手順で、 開発環境を準備します。
②プログラムの作成
1.次のJavaScriptコードを入力し、「live.js」と名前を付けて、作業用フォルダに保存します。
2.次のHTMLコードを入力し、「live.html」と名前を付けて、任意場所に保存します。
<your Publish key>にはPublish Keyを、<your Subscribe key>にはSubscribe Keyを入力します。
③プログラムの実行と動作確認
1.ターミナルを起動し、作業用フォルダに移動します。
2.「sudo node live.js」と入力します。
3.ブラウザで「live.html」を開いて、[START]ボタンをクリックします。
4.撮影が実行(カメラモジュールのLEDが点灯)され、写真がブラウザ上にライブで表示されることを確認します。
5.[STOP]ボタンのクリックで、ライブ表示が停止することを確認します。
①Raspberry Pi 開発環境の準備
「Raspberry Pi カメラのリモート制御&画像転送-PubNub編」の「Raspberry Pi 開発環境の準備」の手順で、 開発環境を準備します。
②プログラムの作成
1.次のJavaScriptコードを入力し、「live.js」と名前を付けて、作業用フォルダに保存します。
2.次のHTMLコードを入力し、「live.html」と名前を付けて、任意場所に保存します。
<your Publish key>にはPublish Keyを、<your Subscribe key>にはSubscribe Keyを入力します。
③プログラムの実行と動作確認
1.ターミナルを起動し、作業用フォルダに移動します。
2.「sudo node live.js」と入力します。
3.ブラウザで「live.html」を開いて、[START]ボタンをクリックします。
4.撮影が実行(カメラモジュールのLEDが点灯)され、写真がブラウザ上にライブで表示されることを確認します。
5.[STOP]ボタンのクリックで、ライブ表示が停止することを確認します。
2016年1月13日水曜日
Raspberry Pi カメラのリモート制御&画像転送-PubNub編
PubNubを使ったRaspberry Pi カメラのリモート制御は、「Raspberry PiのカメラモジュールをJavaScript(Node.js)で制御する」で説明しましたが、今回は、撮った写真をブラウザにフィードバックして表示してみます。
①Raspberry Pi 開発環境の準備
1.「Raspberry Pi カメラのリモート制御&画像転送-Adafruit IO編」の「Raspberry Pi 開発環境の準備」の手順で、 開発環境を準備します。
2.ターミナルを起動し、作業用フォルダに移動して「npm install pubnub」と入力し、「pubnub」モジュールをインストールします。
②プログラムの作成
1.次のJavaScriptコードを入力し、「picam.js」と名前を付けて、作業用フォルダに保存します。
2.次のHTMLコードを入力し、「camera.html」と名前を付けて、任意場所に保存します。
<your Publish key>にはPublish Keyを、<your Subscribe key>にはSubscribe Keyを入力します。
③プログラムの実行と動作確認
1.ターミナルを起動し、作業用フォルダに移動します。
2.「sudo node picam.js」と入力します。
3.ブラウザで「camera.html」を開いて、[Shutter]ボタンをクリックします。
4.撮影が実行(カメラモジュールのLEDが点灯)され、写真がブラウザ上に表示されることを確認します。
①Raspberry Pi 開発環境の準備
1.「Raspberry Pi カメラのリモート制御&画像転送-Adafruit IO編」の「Raspberry Pi 開発環境の準備」の手順で、 開発環境を準備します。
2.ターミナルを起動し、作業用フォルダに移動して「npm install pubnub」と入力し、「pubnub」モジュールをインストールします。
②プログラムの作成
1.次のJavaScriptコードを入力し、「picam.js」と名前を付けて、作業用フォルダに保存します。
2.次のHTMLコードを入力し、「camera.html」と名前を付けて、任意場所に保存します。
<your Publish key>にはPublish Keyを、<your Subscribe key>にはSubscribe Keyを入力します。
③プログラムの実行と動作確認
1.ターミナルを起動し、作業用フォルダに移動します。
2.「sudo node picam.js」と入力します。
3.ブラウザで「camera.html」を開いて、[Shutter]ボタンをクリックします。
4.撮影が実行(カメラモジュールのLEDが点灯)され、写真がブラウザ上に表示されることを確認します。
2016年1月12日火曜日
Raspberry Pi カメラのリモート制御&画像転送-Adafruit IO編
Adafruit IOのImageブロック(image block )を使うと、Base64エンコードされた画像を表示することができます。そこで、momentaryボタン(momentary button)のプッシュでシャッターを切り、撮影した写真をImageブロックに転送する方法を説明します。
■Raspberry Pi 開発環境の準備
①「MQTT.js」と「base64-img」((Node.jsのモジュール)のインストール
1.ターミナルを起動し、作業用フォルダに移動します。
2.「npm install mqtt」と入力します。
3.「npm install base64-img」と入力します。
②「jpegoptim」のインストール
「Add/Remove Software」から、「jpegoptim」をインストールします。
■Adafruit IOのフィード、ダッシュボード、ブロックの作成
①フィード(Feed)の作成
「SHUTTER」フィードと「PICAM」フィードを作成します。
②ダッシュボードの作成
「camera」ダッシュボードを作成します。
③ブロックの作成
Imageブロックとmomentaryボタンを作成します。Imageブロックは「PICAM」フィードに、momentaryボタンは「SHUTTER」フィードに紐づけします。
フィード、ダッシュボード、ブロックの作成手順は、「Adafruit IO+Arduino+MQTTでIoT‐デバイスの制御」を参照してください。
■プログラムの作成と実行
①プログラムの作成
次のJavaScriptコードを入力し、「picam_adafruit.js」と名前を付けて、作業用フォルダに保存します。
[USER NAME]には、Adafruit IOのユーザ名を、[YOUR AIO KEY]にはAIO KEYを入力します。[Topic name]には、トピック名を「<ユーザー名>/feeds/<フィード名>」の形式で指定します。
②プログラムの実行
1.ターミナルを起動し、作業用フォルダに移動します。
2.「sudo node 「picam_adafruit.js」と入力します。
③動作の確認
1.ブラウザで「camera」ダッシュボードを開き、momentaryボタン押します。
2.撮影が実行(カメラモジュールのLEDが点灯)され、写真がImageブロックび表示されることを確認します。
※Imageブロックは最新の写真だけでなく、過去に転送された写真も表示されます。
■Raspberry Pi 開発環境の準備
①「MQTT.js」と「base64-img」((Node.jsのモジュール)のインストール
1.ターミナルを起動し、作業用フォルダに移動します。
2.「npm install mqtt」と入力します。
3.「npm install base64-img」と入力します。
②「jpegoptim」のインストール
「Add/Remove Software」から、「jpegoptim」をインストールします。
■Adafruit IOのフィード、ダッシュボード、ブロックの作成
①フィード(Feed)の作成
「SHUTTER」フィードと「PICAM」フィードを作成します。
②ダッシュボードの作成
「camera」ダッシュボードを作成します。
③ブロックの作成
Imageブロックとmomentaryボタンを作成します。Imageブロックは「PICAM」フィードに、momentaryボタンは「SHUTTER」フィードに紐づけします。
フィード、ダッシュボード、ブロックの作成手順は、「Adafruit IO+Arduino+MQTTでIoT‐デバイスの制御」を参照してください。
■プログラムの作成と実行
①プログラムの作成
次のJavaScriptコードを入力し、「picam_adafruit.js」と名前を付けて、作業用フォルダに保存します。
[USER NAME]には、Adafruit IOのユーザ名を、[YOUR AIO KEY]にはAIO KEYを入力します。[Topic name]には、トピック名を「<ユーザー名>/feeds/<フィード名>」の形式で指定します。
②プログラムの実行
1.ターミナルを起動し、作業用フォルダに移動します。
2.「sudo node 「picam_adafruit.js」と入力します。
③動作の確認
1.ブラウザで「camera」ダッシュボードを開き、momentaryボタン押します。
2.撮影が実行(カメラモジュールのLEDが点灯)され、写真がImageブロックび表示されることを確認します。
※Imageブロックは最新の写真だけでなく、過去に転送された写真も表示されます。
2016年1月9日土曜日
Node-RED+M2X+ArduinoでIoT
Node-REDとM2Xを使用して、Arduinoで計測したセンサ・データの収集する方法を説明します。
M2Xのアカウントの作成、センサーデータを計測するためのArduinoのセットアップ、および回路については、「Arduino+M2XでIoT」を参照してください。
また、Node-REDのインストール手順については、「WindowsにNode-RED」をインストールする」を参照してください。
①M2Xノードのインストール
1.コマンドプロンプトを起動し、「cd .node-red」と入力します。
2.「npm install node-red-m2x」と入力します。
②フローの作成
次のように「arduino in」「delay」「fuinction」「m2x」「debug」ノードを接続してフローを作成し、デプロイします。
各ノードのプロパティは、次のように設定します。
・arduino in
「Arudino」にArudinoの接続先のポートを指定します。自動的に認識されている場合、「Arudino」と設定されています。
「Pin」にはピン番号を、「Type」には、ピンの種類(アナログまたはデジタル)を指定します。アナログの「0」を指定した場合、「A0」が入力ピンになります。
・delay
・fuinction
次のコードを入力します。
var temp = msg.payload * 5 /1024 * 100;
msg.topic = "devices";
msg.action = "setStreamValue";
msg.topic_id = "<DEVICE ID>";
msg.sub_topic_id = "<STREAM NAME>";
msg.payload = {value: temp};
return msg;
<DEVICE ID>には、デバイスの「DEVICE ID」を、<STREAM NAME>には、ストリームの名前(「STREAM ID」ではないことに注意、この例では、「Temperature」)を入力します。
・m2x
「鉛筆」アイコンのボタンをクリックし、「API Key」にデバイスの「PRIMARY API KEY」を入力します。
M2Xのアカウントの作成、センサーデータを計測するためのArduinoのセットアップ、および回路については、「Arduino+M2XでIoT」を参照してください。
また、Node-REDのインストール手順については、「WindowsにNode-RED」をインストールする」を参照してください。
①M2Xノードのインストール
1.コマンドプロンプトを起動し、「cd .node-red」と入力します。
2.「npm install node-red-m2x」と入力します。
②フローの作成
次のように「arduino in」「delay」「fuinction」「m2x」「debug」ノードを接続してフローを作成し、デプロイします。
各ノードのプロパティは、次のように設定します。
・arduino in
「Arudino」にArudinoの接続先のポートを指定します。自動的に認識されている場合、「Arudino」と設定されています。
「Pin」にはピン番号を、「Type」には、ピンの種類(アナログまたはデジタル)を指定します。アナログの「0」を指定した場合、「A0」が入力ピンになります。
・delay
・fuinction
次のコードを入力します。
var temp = msg.payload * 5 /1024 * 100;
msg.topic = "devices";
msg.action = "setStreamValue";
msg.topic_id = "<DEVICE ID>";
msg.sub_topic_id = "<STREAM NAME>";
msg.payload = {value: temp};
return msg;
<DEVICE ID>には、デバイスの「DEVICE ID」を、<STREAM NAME>には、ストリームの名前(「STREAM ID」ではないことに注意、この例では、「Temperature」)を入力します。
・m2x
「鉛筆」アイコンのボタンをクリックし、「API Key」にデバイスの「PRIMARY API KEY」を入力します。
2016年1月8日金曜日
Raspberry Pi +M2XでIoT
AT&T M2Xを使用して、Raspberry Piで計測したセンサ・データを収集する方法を説明します。
①Raspberry Piのセットアップ
1.「Raspberry Pi 2のGPIOをJavaScriptで制御する」の手順でRaspberry Piの開発環境をセットアップします。
2.次のように回路を配線します。
②M2Xの準備
「Arduino+M2XでIoT」の②の手順でM2Xのアカウントを作成し、デバイス(Device)とストリーム(Stream)を登録します。
※補足
・登録済みのデバイスにストリームを追加するには、デバイスの管理画面の[Add Stream]をクリック、「Stream ID」「Display Name」を入力し、[Save]をクリックします。
・新しいデバイスとストリームを対話形式で登録するには、 「Setup your Device」にアクセスします。
・デバイスの管理画面からデバイスを追加するには、[Device]をクリックしてデバイスの一覧画面を表示し、[Create New]→[Device]を選択し、「Device Name」にデバイス名を入力し、[Create]をクリックします。その後、デバイスの管理画面が表示されるので、[Add Stream]をクリックし、ストリームを追加します。
③「request」モジュールのインストール
M2XのRESTful APIを使用するため、Node.jsの「「request」モジュールをインストールします。
1.ターミナルを起動し、作業用フォルダに移動します。
2.「npm install request」と入力します。
④プログラムの作成と実行
1.次のJavaScriptコードを入力し、「bright_m2x.js」と名前を付けて作業用フォルダに保存します。
[PRIMARY API KEY][DEVICE ID][STREAM ID]には、デバイスの管理画面に表示される「PRIMARY API KEY「[DEVICE ID」「STREAM ID」を入力します。
2.ターミナルから「sudo node bright_m2x.js」と入力します。
①Raspberry Piのセットアップ
1.「Raspberry Pi 2のGPIOをJavaScriptで制御する」の手順でRaspberry Piの開発環境をセットアップします。
2.次のように回路を配線します。
②M2Xの準備
「Arduino+M2XでIoT」の②の手順でM2Xのアカウントを作成し、デバイス(Device)とストリーム(Stream)を登録します。
※補足
・登録済みのデバイスにストリームを追加するには、デバイスの管理画面の[Add Stream]をクリック、「Stream ID」「Display Name」を入力し、[Save]をクリックします。
・新しいデバイスとストリームを対話形式で登録するには、 「Setup your Device」にアクセスします。
・デバイスの管理画面からデバイスを追加するには、[Device]をクリックしてデバイスの一覧画面を表示し、[Create New]→[Device]を選択し、「Device Name」にデバイス名を入力し、[Create]をクリックします。その後、デバイスの管理画面が表示されるので、[Add Stream]をクリックし、ストリームを追加します。
③「request」モジュールのインストール
M2XのRESTful APIを使用するため、Node.jsの「「request」モジュールをインストールします。
1.ターミナルを起動し、作業用フォルダに移動します。
2.「npm install request」と入力します。
④プログラムの作成と実行
1.次のJavaScriptコードを入力し、「bright_m2x.js」と名前を付けて作業用フォルダに保存します。
[PRIMARY API KEY][DEVICE ID][STREAM ID]には、デバイスの管理画面に表示される「PRIMARY API KEY「[DEVICE ID」「STREAM ID」を入力します。
2.ターミナルから「sudo node bright_m2x.js」と入力します。
登録:
投稿 (Atom)