ニュース
「さくらのIoT Platform」を知り、プロトタイプを試作する(5/7 ページ)
通信モジュールから通信網、データ処理の仕組みまでも一環提供する「さくらのIoT Platform」の詳細を解説。さくらのIoT Platformを利用し、湯温と動作の確認で利用者を見守る「みまもりポット」を試作します。
- Node.jsのインストール
NVMを使用し、Node.js(今回はv6.5.0)をインストールします。
# nvm install v6.5.0
- 必要なモジュールのインストール
今回作成するプログラムに必要となる、3つのモジュール(express、body-parser、request)をインストールします。
# npm install express body-parser request
- ロケールの変更
そのまま日本語を含むjsファイルを作成すると日本語部分が文字化けしてしまうため、ロケールを変更します。具体的にはi18nファイルのLANGをデフォルトの「C」から「ja_JP.utf8」に変更します。
# vim /etc/sysconfig/i18n LANG="ja_JP.utf8" SYSFONT="latarcyrheb-sun16" # . /etc/sysconfig/i18n
- pot.jsの作成
以下の内容でjsファイルを作成します。なお、本件では給湯温度を直接計測せず外気温を取得しているため、送信の際に仮の値としてtempareture の値に60℃を加算しています。
var express = require('express'); var app = express(); var bodyParser = require('body-parser') var request = require('request'); app.use(bodyParser.json()); function send_slack(text) { var payload = { "text": text, }; var options = { url: '《SlackのIncoming Webhooksにて生成されたWebhook URL》', form: 'payload=' + JSON.stringify(payload), json :true }; request.post(options, function(error, response, body){ if (!error && response.statusCode == 200) { } else { console.log('error: '+ response.statusCode + body); } }); } var tempareture = null; var seconds = null; app.post('/pot', function(req, res) { var module = req.body.module; var channels = req.body.payload.channels; channels.forEach(function(channel){ console.log(module, channel); if(channel.channel == 11){ tempareture = channel.value; console.log(tempareture + " degrees"); } if(channel.channel == 12){ seconds = channel.value; console.log(seconds + "sec"); var c = parseInt(seconds/0.5, 10); var message = "ジャ" + Array(c+1).join("〜"); if(c<2){ message = "チョロ"; } send_slack(message + " (" + (tempareture+60.0) + "℃)"); } }); res.send("OK"); }); app.listen(3000, function () { console.log('Example app listening on port 3000!'); });
- pot.jsの起動
nodeコマンドでpot.jsを起動し「Example app listening on port 3000!」のメッセージが表示されれば、変換サーバの準備は完了です。サービスを停止したい場合は「Ctrl+C」を押下します。
# node pot.js
関連記事
- 「さくらのIoT Platform」利用のハードウェア事業化支援プログラム
さくらインターネットがインテルと共同で、IoTハードウェア事業化支援プログラムを開始する。「さくらのIoT Platform」とインテル「Edison」を利用した事業案を募集し、試作から事業化までを支援する。 - 通信料込みで年5000円以下、さくらインターネットがIoTに本気出す
さくらインターネットが、通信モジュールを含む通信環境と閉域網を一体提供する「さくらのIoT Platform」を開始する。2年程度のネットワーク利用料金を含んだ通信モジュールを1万円以下にて販売し、「センシングデータを閉域網に預け、新たな価値を生み出す」モデルの構築に挑む。 - Raspberry PiにAllJoynを移植して、IoTを自作する
「いろいろなデバイスがシームレスにつながり、簡単に操作できる」――IoTが目指すその姿を、Raspberry Piと機器相互接続フレームワーク「Alljoyn」で自作してみましょう。 - 「Raspberry Pi Zero」で自分だけのアメダス(的な測定器)を作ろう
小さな5ドルマイコン「Raspberry Pi Zero」。小型なのでいろいろな用途に使えそうなので、今回はこれを気圧・温湿度計にしてみます。モバイルバッテリーと無線LANアダプターを用意しておけば、簡易的な無人測定器としての利用が可能となります。 - WebブラウザからHTTPサーバ経由でESP8266に接続されたセンサーの値を読み出す
今回はESP8266にマイコンと光センサーを組み合わせ、得た値をHTTPサーバ経由で遠隔取得します。センサーを交換したり、値を変更するなどすればさまざまなIoT DIYに応用できます。
Copyright © ITmedia, Inc. All Rights Reserved.