SlideShare a Scribd company logo
1 of 39
Download to read offline
HTML5/JavaScript
ではじめるIoT
MOONGIFT 中津川篤司
自己紹介
2
@moongift
fb.me/moongift.fan
中津川 篤司
株式会社MOONGIFT 代表取締役
ニフティクラウド mobile backend
          エヴァンジェリスト
2004年1月よりオープンソース・ソフトウェアを毎
日紹介するブログ MOONGIFT を運営。
http://www.moongift.jp/
hifive エヴァンジェリスト
0x10年前
4
2015年
5
・Arduino
・Raspberry PI
・Intel Edison
・mbed
・konashi
ネットワーク×デバイス
7
何をするか?
Raspberry PI買った! → Lチカしてみた
Arduino買った! → Lチカしてみた
mbed買った! → Lチカし(ry
Intel Edison買った! → (ry
何を買ったではな
く、何をするか?
つまり表現大事
表現に必要なモノ
• マイコン
• インプット(センサー)
• アウトプット
アウトプットと言えば?
処理する言語と言えば?
なんでHTML5/JS?
• 今回のテーマだから
• CORS問題(XMLHttpRequest2)
• Canvas/WebGL
• WebSocket/WebRTC
• node.js(特にBTE系)
JavaScriptサポート
• Raspberry PI(node.jsサポート)
• Intel Edison(node.jsサポート)
• Pebble(CloudPebble)
• BeaconEgg(iBeacon)
• Konashi(konashi.js)→デモ
• IRKit(IRKitjs)
Canvas
https://www.youtube.com/watch?v=GGPIk8F5wOs
iOS/Androidアプリ化
• PhoneGap/Cordova/Monaca
• アプリカン
ReactNativeでブレイクするかも?
ポケットミク
http://otonanokagaku.net/nsx39/appli/01/
http://www6.plala.or.jp/TimeTripper/nsk39/
mikublock.html
WebGL
• MozVR
• Unity5  WebGLサポート(まだプレビュー)
http://mozvr.com/
IoTの3大要素
20
IoTデバイス
データストレージ
センサー/出力
センサー
• 照度
• カメラ
• 温度
• 湿度
• Felicaリーダー
• ボタン
21
正直微妙…
もっと面白いセンサーが
欲しい!
出力
• LCD
• LED
• コンピュータ
• hue
22
もっと微妙
23
https://www.youtube.com/watch?
v=YUUsJSDa7PE
Arduino module
• ArduinoとLittleBitsを連携させるためのモジュール

↓
• LittleBitsのIOを持ったArduino互換モジュール
(Leonardo)
24
https://www.youtube.com/watch?
v=FXQ9d3qJt3Q
39.95ドル!
CloudBit module
• Arch Linux搭載のモジュール
• 改造するとSSHができます
• LittleBits Cloud Controlで外部操作可能(WebSocket)
25
59.95ドル!
その他入力系/出力系
http://control.littlebitscloud.cc/
デモ
ボタンを押すとプッシュ通知
28
var pin4 = new m.Gpio(4);
pin4.read();
IoTの3大要素
29
IoTデバイス
データストレージ
センサー/出力
よくない利用
30
IoTデバイス
デスクトップ
スマートフォン
Webサーバ
よくない利用
31
デスクトップ
スマートフォン
サーバを間に挟みましょう
32
IoTデバイス
デスクトップ
スマートフォン
サーバ
SDK
REST API
IoTデバイス
もあるよ!
IoTの問題2
33
IoTデバイスに何かあった時、通知したい
今ならプッシュ通知がスマート
 → APNs、GCMに接続する必要あり
 → デバイストークンの管理
よくない利用
34
IoTデバイス スマートフォンAPNs/GCM
 デバイストークンの管理
通信手段
35
サーバを使った例
IoTデバイス スマートフォンAPNs/GCM
!
サーバ
HTTP/HTTPSアクセス
もあるよ!
プッシュ通知を使った例
36
var NCMB = require("./ncmb").NCMB;
NCMB.initialize( APP_KEY , CLIENT_KEY");
function sendPush(high, value) {
NCMB.Push.send({
"immediateDeliveryFlag": true,
"message": high ? "電気がつきました" : "消灯しました",
},
{
success: function() {
console.log("Successful!");
// 成功
},
error: function(error) {
// エラー
console.log("Failed");
}
});
}
対応プラットフォーム
38
Objective-C

(2014年12月より64bit対応)
Android
JavaScript

(2014年12月よりnodeサポート!)
Unity
まとめ
• マイコン、インプット、アウトプットともに材料は
既に っている
• 表現場所としてHTML5は手軽(作り手、閲覧者と
もに)。ただし高度な表現はCanvas/WebGLの習
得必須
• JavaScript(node.js含め)は必修

More Related Content

What's hot

What's hot (20)

会話型ロボットを作った話
会話型ロボットを作った話会話型ロボットを作った話
会話型ロボットを作った話
 
昨年にIoT可視化してみて考えたこと
昨年にIoT可視化してみて考えたこと昨年にIoT可視化してみて考えたこと
昨年にIoT可視化してみて考えたこと
 
TensorFlowで訓練したLINE BotをAWS Lambdaで動かしてみた
TensorFlowで訓練したLINE BotをAWS Lambdaで動かしてみたTensorFlowで訓練したLINE BotをAWS Lambdaで動かしてみた
TensorFlowで訓練したLINE BotをAWS Lambdaで動かしてみた
 
事例から見るTwilio活用法
事例から見るTwilio活用法事例から見るTwilio活用法
事例から見るTwilio活用法
 
littleBitsやWio NodeなどデバイスをNode-REDでBluemixにつなげてIoTする話
littleBitsやWio NodeなどデバイスをNode-REDでBluemixにつなげてIoTする話littleBitsやWio NodeなどデバイスをNode-REDでBluemixにつなげてIoTする話
littleBitsやWio NodeなどデバイスをNode-REDでBluemixにつなげてIoTする話
 
フリーランスミートアップ 20160903
フリーランスミートアップ 20160903フリーランスミートアップ 20160903
フリーランスミートアップ 20160903
 
IoTとDeep Learningで自宅警備員を育ててみる
IoTとDeep Learningで自宅警備員を育ててみるIoTとDeep Learningで自宅警備員を育ててみる
IoTとDeep Learningで自宅警備員を育ててみる
 
mbed祭り 2017@秋の虎ノ門(北神)
mbed祭り 2017@秋の虎ノ門(北神)mbed祭り 2017@秋の虎ノ門(北神)
mbed祭り 2017@秋の虎ノ門(北神)
 
IoTの原点
IoTの原点IoTの原点
IoTの原点
 
嗚呼、素晴らしき哉 MonoTouch
嗚呼、素晴らしき哉 MonoTouch嗚呼、素晴らしき哉 MonoTouch
嗚呼、素晴らしき哉 MonoTouch
 
新入社員のRPA奮闘記
新入社員のRPA奮闘記新入社員のRPA奮闘記
新入社員のRPA奮闘記
 
Carthageについて知りたいn個のこと
Carthageについて知りたいn個のことCarthageについて知りたいn個のこと
Carthageについて知りたいn個のこと
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
 
出会って5行でディープラーニング推論
出会って5行でディープラーニング推論出会って5行でディープラーニング推論
出会って5行でディープラーニング推論
 
160531 IoT LT #15 @ 日本IBM
160531 IoT LT #15 @ 日本IBM160531 IoT LT #15 @ 日本IBM
160531 IoT LT #15 @ 日本IBM
 
20190410 otemachirb16
20190410 otemachirb1620190410 otemachirb16
20190410 otemachirb16
 
PyCon JP 2017Yuta Kitagami
PyCon JP 2017Yuta KitagamiPyCon JP 2017Yuta Kitagami
PyCon JP 2017Yuta Kitagami
 
Himotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバHimotoki: A type-safe JSON decoding library #関モバ
Himotoki: A type-safe JSON decoding library #関モバ
 
エンジニアのための勉強会 #1 『AI』
エンジニアのための勉強会 #1 『AI』エンジニアのための勉強会 #1 『AI』
エンジニアのための勉強会 #1 『AI』
 
Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19)
Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19)Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19)
Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19)
 

Viewers also liked

FIT2012招待講演「異常検知技術のビジネス応用最前線」
FIT2012招待講演「異常検知技術のビジネス応用最前線」FIT2012招待講演「異常検知技術のビジネス応用最前線」
FIT2012招待講演「異常検知技術のビジネス応用最前線」
Shohei Hido
 

Viewers also liked (9)

スタートアップにjoinして安心して眠るためにやった5つのこと
スタートアップにjoinして安心して眠るためにやった5つのことスタートアップにjoinして安心して眠るためにやった5つのこと
スタートアップにjoinして安心して眠るためにやった5つのこと
 
Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話
 
Kansai Azure Azure Overview & Update 20140926
Kansai Azure Azure Overview & Update 20140926Kansai Azure Azure Overview & Update 20140926
Kansai Azure Azure Overview & Update 20140926
 
Kobe.r勉強会資料
Kobe.r勉強会資料Kobe.r勉強会資料
Kobe.r勉強会資料
 
IoTでAzureのサービス利用~専門知識なしで始める超入門~
IoTでAzureのサービス利用~専門知識なしで始める超入門~IoTでAzureのサービス利用~専門知識なしで始める超入門~
IoTでAzureのサービス利用~専門知識なしで始める超入門~
 
20150822 iot事例紹介
20150822 iot事例紹介20150822 iot事例紹介
20150822 iot事例紹介
 
機械学習を用いた異常検知入門
機械学習を用いた異常検知入門機械学習を用いた異常検知入門
機械学習を用いた異常検知入門
 
FIT2012招待講演「異常検知技術のビジネス応用最前線」
FIT2012招待講演「異常検知技術のビジネス応用最前線」FIT2012招待講演「異常検知技術のビジネス応用最前線」
FIT2012招待講演「異常検知技術のビジネス応用最前線」
 
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
 

Similar to HTML5/JavaScript ではじめるIoT

20131116 creators meetup
20131116 creators meetup20131116 creators meetup
20131116 creators meetup
Seigo Tanaka
 
Salesforce MobileSDKに物申す
Salesforce MobileSDKに物申すSalesforce MobileSDKに物申す
Salesforce MobileSDKに物申す
Masashi Nishiwaki
 

Similar to HTML5/JavaScript ではじめるIoT (20)

SINAP様 IoT×littleBitsブレスト
SINAP様 IoT×littleBitsブレストSINAP様 IoT×littleBitsブレスト
SINAP様 IoT×littleBitsブレスト
 
MythingsとIDCFチャンネル調査 20150824
MythingsとIDCFチャンネル調査 20150824MythingsとIDCFチャンネル調査 20150824
MythingsとIDCFチャンネル調査 20150824
 
IoT ChatOps #IoTLT
IoT ChatOps #IoTLTIoT ChatOps #IoTLT
IoT ChatOps #IoTLT
 
20131116 creators meetup
20131116 creators meetup20131116 creators meetup
20131116 creators meetup
 
ローカル開催コミュニティ
ローカル開催コミュニティローカル開催コミュニティ
ローカル開催コミュニティ
 
SwiftによるiOS開発再入門
SwiftによるiOS開発再入門SwiftによるiOS開発再入門
SwiftによるiOS開発再入門
 
Handoffは動かない〜これから役立たないバッドノウハウ集
Handoffは動かない〜これから役立たないバッドノウハウ集Handoffは動かない〜これから役立たないバッドノウハウ集
Handoffは動かない〜これから役立たないバッドノウハウ集
 
スマートスピーカーとRaspberry Piで物品管理にトライ
スマートスピーカーとRaspberry Piで物品管理にトライスマートスピーカーとRaspberry Piで物品管理にトライ
スマートスピーカーとRaspberry Piで物品管理にトライ
 
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
KANAZAWA アプリ開発塾 2015 アプリ制作マスターへの道
 
Pepper x IoT x Web 勉強会やってみた話と失敗談
Pepper x IoT x Web 勉強会やってみた話と失敗談Pepper x IoT x Web 勉強会やってみた話と失敗談
Pepper x IoT x Web 勉強会やってみた話と失敗談
 
Tesseract-OCR in iOS
Tesseract-OCR in iOSTesseract-OCR in iOS
Tesseract-OCR in iOS
 
F#で動かすraspberry pi+lego mindstorms
F#で動かすraspberry pi+lego mindstormsF#で動かすraspberry pi+lego mindstorms
F#で動かすraspberry pi+lego mindstorms
 
IntelliJ IDEAで快適なPython生活
IntelliJ IDEAで快適なPython生活IntelliJ IDEAで快適なPython生活
IntelliJ IDEAで快適なPython生活
 
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoSwiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
 
Outlayout ios2開発会議20150528
Outlayout ios2開発会議20150528Outlayout ios2開発会議20150528
Outlayout ios2開発会議20150528
 
Salesforce MobileSDKに物申す
Salesforce MobileSDKに物申すSalesforce MobileSDKに物申す
Salesforce MobileSDKに物申す
 
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
 
nfcpy 0.10.0 でハマった話
nfcpy 0.10.0 でハマった話nfcpy 0.10.0 でハマった話
nfcpy 0.10.0 でハマった話
 
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
オプショナル型。〜なんとなく付ける ! ? 撲滅〜 改訂版
 
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
 

More from Atsushi Nakatsugawa

More from Atsushi Nakatsugawa (17)

採択されるプロポーザルの 書き方
採択されるプロポーザルの 書き方採択されるプロポーザルの 書き方
採択されるプロポーザルの 書き方
 
Q&A
Q&AQ&A
Q&A
 
Cordova × NCMB
Cordova × NCMBCordova × NCMB
Cordova × NCMB
 
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますプッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
プッシュからデータ保存まで。アプリ開発でニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
 
Arduino yun × apiで遊んでみる
Arduino yun × apiで遊んでみるArduino yun × apiで遊んでみる
Arduino yun × apiで遊んでみる
 
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えしますニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
ニフティクラウド mobile backendを使う上での良くある質問、疑問にお答えします
 
メッセージ&コンセプト
メッセージ&コンセプトメッセージ&コンセプト
メッセージ&コンセプト
 
書く技術
書く技術書く技術
書く技術
 
DevRelConに行ってきました
DevRelConに行ってきましたDevRelConに行ってきました
DevRelConに行ってきました
 
一人でできる!M baasでスマートホーム化
一人でできる!M baasでスマートホーム化一人でできる!M baasでスマートホーム化
一人でできる!M baasでスマートホーム化
 
MRAAでIntel Edisonを遊ぼう
MRAAでIntel Edisonを遊ぼうMRAAでIntel Edisonを遊ぼう
MRAAでIntel Edisonを遊ぼう
 
フリーミアムモデルをやって分かったこと
フリーミアムモデルをやって分かったことフリーミアムモデルをやって分かったこと
フリーミアムモデルをやって分かったこと
 
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
Ncmb勉強会 #8 cocos2d x 資料「Cocos2d-xとNCMBを組み合わせるには」
 
Edison色々試してみた
Edison色々試してみたEdison色々試してみた
Edison色々試してみた
 
Webエンジニアなら抑えておきたい最近のOSS事情
Webエンジニアなら抑えておきたい最近のOSS事情Webエンジニアなら抑えておきたい最近のOSS事情
Webエンジニアなら抑えておきたい最近のOSS事情
 
LOCAL DEVELOPER DAY ’09/Winter
LOCAL DEVELOPER DAY ’09/WinterLOCAL DEVELOPER DAY ’09/Winter
LOCAL DEVELOPER DAY ’09/Winter
 
リーンソフトウェア
リーンソフトウェアリーンソフトウェア
リーンソフトウェア
 

Recently uploaded

Recently uploaded (10)

Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

HTML5/JavaScript ではじめるIoT