Submit Search
Upload
Webエンジニアのためのスマートホームハック ~ Node.js で家電とArduinoを操作 ~
•
Download as PPTX, PDF
•
2 likes
•
5,106 views
Futomi Hatano
Follow
HTML5 Conference 2016 2016年9月3日(土)
Read less
Read more
Technology
Report
Share
Report
Share
1 of 55
Download now
Recommended
続・Webエンジニアのためのスマートホームハック ~ Node.js で IoT プロトコルハック ~
続・Webエンジニアのためのスマートホームハック ~ Node.js で IoT プロトコルハック ~
Futomi Hatano
AWS GreengrassによるLチカとAIスピーカーによるBAS制御の実証実験
AWS GreengrassによるLチカとAIスピーカーによるBAS制御の実証実験
TomohisaYamazoe
ESP8266をはじめよう
ESP8266をはじめよう
Kei Yoshimura
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
CODE BLUE
Sony Spresense #Edge computing device with ultra low power
Sony Spresense #Edge computing device with ultra low power
義則 太田
スタートアップ機能の等価回路モデル
スタートアップ機能の等価回路モデル
マルツエレック株式会社 marutsuelec
Spresense meetup#2 try_multicore_programming
Spresense meetup#2 try_multicore_programming
義則 太田
Arduino 習作工坊 - Lesson 5 機械之夜
Arduino 習作工坊 - Lesson 5 機械之夜
CAVEDU Education
Recommended
続・Webエンジニアのためのスマートホームハック ~ Node.js で IoT プロトコルハック ~
続・Webエンジニアのためのスマートホームハック ~ Node.js で IoT プロトコルハック ~
Futomi Hatano
AWS GreengrassによるLチカとAIスピーカーによるBAS制御の実証実験
AWS GreengrassによるLチカとAIスピーカーによるBAS制御の実証実験
TomohisaYamazoe
ESP8266をはじめよう
ESP8266をはじめよう
Kei Yoshimura
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
ワイヤレス技術をアタックで検証 by 堀合啓一 - CODE BLUE 2015
CODE BLUE
Sony Spresense #Edge computing device with ultra low power
Sony Spresense #Edge computing device with ultra low power
義則 太田
スタートアップ機能の等価回路モデル
スタートアップ機能の等価回路モデル
マルツエレック株式会社 marutsuelec
Spresense meetup#2 try_multicore_programming
Spresense meetup#2 try_multicore_programming
義則 太田
Arduino 習作工坊 - Lesson 5 機械之夜
Arduino 習作工坊 - Lesson 5 機械之夜
CAVEDU Education
Esp8266 webserver1
Esp8266 webserver1
MasatoOshikiri
Gs1350 5 datasheet_20201202
Gs1350 5 datasheet_20201202
MasahitoTsuchida
Cisco ios
Cisco ios
ssuser021e0d
Cisco ios
Cisco ios
ssuserc9df1e
WA-MIKAN(和みかん)説明資料
WA-MIKAN(和みかん)説明資料
三七男 山本
GR-SAKURAでEtherCAT
GR-SAKURAでEtherCAT
Bizan Nishimura
Interrupts on xv6
Interrupts on xv6
Takuya ASADA
/proc/irq/<irq>/smp_affinity
/proc/irq/<irq>/smp_affinity
Takuya ASADA
GR-MANGOでEtherCAT
GR-MANGOでEtherCAT
Bizan Nishimura
IoT WARS - the force awakens -
IoT WARS - the force awakens -
Tsuyoshi Seino
Internet of Things
Internet of Things
Rainmaker Ho
UVLOの等価回路モデル作成方法
UVLOの等価回路モデル作成方法
Tsuyoshi Horigome
ULVOの等価回路モデル
ULVOの等価回路モデル
マルツエレック株式会社 marutsuelec
Kadecot Application Examples
Kadecot Application Examples
sonycsl
SD WiFi v3基板の説明
SD WiFi v3基板の説明
三七男 山本
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-final
PacSecJP
RSQB Flip Flopの等価回路モデル
RSQB Flip Flopの等価回路モデル
マルツエレック株式会社 marutsuelec
マイコンロボット実習
マイコンロボット実習
Takehiko YOSHIDA
Making remote controlled robot
Making remote controlled robot
Batzorigt Rentsen
Odyssey MAX 10 FPGA入門セミナーテキスト
Odyssey MAX 10 FPGA入門セミナーテキスト
Tsuyoshi Horigome
JavaScript と Arduino でオリジナルデバイスを作ろう
JavaScript と Arduino でオリジナルデバイスを作ろう
Yoshihiro Iwanaga
Web エンジニアのためのWeb エンジニアのためのロボットアームの API を考えてみる
Web エンジニアのためのWeb エンジニアのためのロボットアームの API を考えてみる
Futomi Hatano
More Related Content
What's hot
Esp8266 webserver1
Esp8266 webserver1
MasatoOshikiri
Gs1350 5 datasheet_20201202
Gs1350 5 datasheet_20201202
MasahitoTsuchida
Cisco ios
Cisco ios
ssuser021e0d
Cisco ios
Cisco ios
ssuserc9df1e
WA-MIKAN(和みかん)説明資料
WA-MIKAN(和みかん)説明資料
三七男 山本
GR-SAKURAでEtherCAT
GR-SAKURAでEtherCAT
Bizan Nishimura
Interrupts on xv6
Interrupts on xv6
Takuya ASADA
/proc/irq/<irq>/smp_affinity
/proc/irq/<irq>/smp_affinity
Takuya ASADA
GR-MANGOでEtherCAT
GR-MANGOでEtherCAT
Bizan Nishimura
IoT WARS - the force awakens -
IoT WARS - the force awakens -
Tsuyoshi Seino
Internet of Things
Internet of Things
Rainmaker Ho
UVLOの等価回路モデル作成方法
UVLOの等価回路モデル作成方法
Tsuyoshi Horigome
ULVOの等価回路モデル
ULVOの等価回路モデル
マルツエレック株式会社 marutsuelec
Kadecot Application Examples
Kadecot Application Examples
sonycsl
SD WiFi v3基板の説明
SD WiFi v3基板の説明
三七男 山本
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-final
PacSecJP
RSQB Flip Flopの等価回路モデル
RSQB Flip Flopの等価回路モデル
マルツエレック株式会社 marutsuelec
マイコンロボット実習
マイコンロボット実習
Takehiko YOSHIDA
Making remote controlled robot
Making remote controlled robot
Batzorigt Rentsen
Odyssey MAX 10 FPGA入門セミナーテキスト
Odyssey MAX 10 FPGA入門セミナーテキスト
Tsuyoshi Horigome
What's hot
(20)
Esp8266 webserver1
Esp8266 webserver1
Gs1350 5 datasheet_20201202
Gs1350 5 datasheet_20201202
Cisco ios
Cisco ios
Cisco ios
Cisco ios
WA-MIKAN(和みかん)説明資料
WA-MIKAN(和みかん)説明資料
GR-SAKURAでEtherCAT
GR-SAKURAでEtherCAT
Interrupts on xv6
Interrupts on xv6
/proc/irq/<irq>/smp_affinity
/proc/irq/<irq>/smp_affinity
GR-MANGOでEtherCAT
GR-MANGOでEtherCAT
IoT WARS - the force awakens -
IoT WARS - the force awakens -
Internet of Things
Internet of Things
UVLOの等価回路モデル作成方法
UVLOの等価回路モデル作成方法
ULVOの等価回路モデル
ULVOの等価回路モデル
Kadecot Application Examples
Kadecot Application Examples
SD WiFi v3基板の説明
SD WiFi v3基板の説明
Lucas apa pacsec_slides_jp-final
Lucas apa pacsec_slides_jp-final
RSQB Flip Flopの等価回路モデル
RSQB Flip Flopの等価回路モデル
マイコンロボット実習
マイコンロボット実習
Making remote controlled robot
Making remote controlled robot
Odyssey MAX 10 FPGA入門セミナーテキスト
Odyssey MAX 10 FPGA入門セミナーテキスト
Viewers also liked
JavaScript と Arduino でオリジナルデバイスを作ろう
JavaScript と Arduino でオリジナルデバイスを作ろう
Yoshihiro Iwanaga
Web エンジニアのためのWeb エンジニアのためのロボットアームの API を考えてみる
Web エンジニアのためのWeb エンジニアのためのロボットアームの API を考えてみる
Futomi Hatano
f3js - JS Board Shibuya #6 LT
f3js - JS Board Shibuya #6 LT
Jun Kato
SORACOM Air+RaspberryPi+littleBits+IFTTTしてみる
SORACOM Air+RaspberryPi+littleBits+IFTTTしてみる
Seigo Tanaka
Smart.js: JavaScript engine running on tiny MCU
Smart.js: JavaScript engine running on tiny MCU
Kiwamu Okabe
ネットに繋いでIoTしよう
ネットに繋いでIoTしよう
wamisnet
JS Board で IoT は楽勝か?
JS Board で IoT は楽勝か?
Shingo Fukui
JavaScriptでも鉄道模型
JavaScriptでも鉄道模型
ayasehiro
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
Tanaka Yuichi
これから Raspberry Pi をいじる方向けの資料 20130616版
これから Raspberry Pi をいじる方向けの資料 20130616版
Michiya Tominaga
Node.jsでDroneたちをめっちゃ簡単にHACKする話 JSオジサン#6
Node.jsでDroneたちをめっちゃ簡単にHACKする話 JSオジサン#6
Yukiko Tamiya
Creel Product Overview; Digital Commerce Starts With Creel
Creel Product Overview; Digital Commerce Starts With Creel
Game-Consultant.com
加昌校園自然學習步道導覽圖
加昌校園自然學習步道導覽圖
bouzone
Agile for-dummies
Agile for-dummies
Shiraz316
How effective is the combination of your main
How effective is the combination of your main
shockwaves94
Resume_Susanta
Resume_Susanta
Susanta Dutta Banik
Итоговая работа проекта Цикли в нашей жизни
Итоговая работа проекта Цикли в нашей жизни
galina_pr
Онлайн портал по хранению и обмену e-сертификатами
Онлайн портал по хранению и обмену e-сертификатами
E-COM UA
Information Architecture class11 03 27
Information Architecture class11 03 27
Marti Gukeisen
Y11003 (CHINESE PROFICIENCY TEST YCT 2)
Y11003 (CHINESE PROFICIENCY TEST YCT 2)
Agnes Yodo
Viewers also liked
(20)
JavaScript と Arduino でオリジナルデバイスを作ろう
JavaScript と Arduino でオリジナルデバイスを作ろう
Web エンジニアのためのWeb エンジニアのためのロボットアームの API を考えてみる
Web エンジニアのためのWeb エンジニアのためのロボットアームの API を考えてみる
f3js - JS Board Shibuya #6 LT
f3js - JS Board Shibuya #6 LT
SORACOM Air+RaspberryPi+littleBits+IFTTTしてみる
SORACOM Air+RaspberryPi+littleBits+IFTTTしてみる
Smart.js: JavaScript engine running on tiny MCU
Smart.js: JavaScript engine running on tiny MCU
ネットに繋いでIoTしよう
ネットに繋いでIoTしよう
JS Board で IoT は楽勝か?
JS Board で IoT は楽勝か?
JavaScriptでも鉄道模型
JavaScriptでも鉄道模型
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
これから Raspberry Pi をいじる方向けの資料 20130616版
これから Raspberry Pi をいじる方向けの資料 20130616版
Node.jsでDroneたちをめっちゃ簡単にHACKする話 JSオジサン#6
Node.jsでDroneたちをめっちゃ簡単にHACKする話 JSオジサン#6
Creel Product Overview; Digital Commerce Starts With Creel
Creel Product Overview; Digital Commerce Starts With Creel
加昌校園自然學習步道導覽圖
加昌校園自然學習步道導覽圖
Agile for-dummies
Agile for-dummies
How effective is the combination of your main
How effective is the combination of your main
Resume_Susanta
Resume_Susanta
Итоговая работа проекта Цикли в нашей жизни
Итоговая работа проекта Цикли в нашей жизни
Онлайн портал по хранению и обмену e-сертификатами
Онлайн портал по хранению и обмену e-сертификатами
Information Architecture class11 03 27
Information Architecture class11 03 27
Y11003 (CHINESE PROFICIENCY TEST YCT 2)
Y11003 (CHINESE PROFICIENCY TEST YCT 2)
Similar to Webエンジニアのためのスマートホームハック ~ Node.js で家電とArduinoを操作 ~
2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT
aitc_jp
Mt basic as-os_on_danbot
Mt basic as-os_on_danbot
たけおか しょうぞう
Lagopus Switch Usecases
Lagopus Switch Usecases
Sakiko Kawai
AWS IoT EduKit ワークショップのご紹介
AWS IoT EduKit ワークショップのご紹介
Yukinobu Mine
Getting Started with Jetson Nano
Getting Started with Jetson Nano
NVIDIA Japan
SORACOM Bootcamp Rec12 | SORACOM Inventory
SORACOM Bootcamp Rec12 | SORACOM Inventory
SORACOM,INC
2016年11月19日 AITCシニア技術者勉強会 第1回「Arduinoを使ってみる」
2016年11月19日 AITCシニア技術者勉強会 第1回「Arduinoを使ってみる」
aitc_jp
Ns2240series users manual_07
Ns2240series users manual_07
squat12
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
Kentaro Ebisawa
Intalio Cloud Workshop
Intalio Cloud Workshop
Daisuke Sugai
MVPComCamp2015:Hyper-V仮想スイッチのTipsとTo Be(仮)
MVPComCamp2015:Hyper-V仮想スイッチのTipsとTo Be(仮)
wind06106
RouterBOARD with OpenFlow
RouterBOARD with OpenFlow
Toshiki Tsuboi
2015/05/23 シニア技術者プログラム第3弾 「第二回IoT勉強会&交流会」 15:00~15:20 Arduinoで簡単回路作成実演
2015/05/23 シニア技術者プログラム第3弾 「第二回IoT勉強会&交流会」 15:00~15:20 Arduinoで簡単回路作成実演
aitc_jp
Jubatus分類器の活用テクニック
Jubatus分類器の活用テクニック
JubatusOfficial
20110724 WIZDOM:知識ゼロからのArduino(1)
20110724 WIZDOM:知識ゼロからのArduino(1)
Atsushi ENTA
EnOcean Development Performance - STM3xy and .NET Gadgeteer
EnOcean Development Performance - STM3xy and .NET Gadgeteer
Atomu Hidaka
Netduino
Netduino
Tadahiro Ishisaka
CODE BLUE 2014 : サイバーエスピオナージを抑制するためにデバイスを無効化する ハイパーバイザー "DeviceDisEnabler" by...
CODE BLUE 2014 : サイバーエスピオナージを抑制するためにデバイスを無効化する ハイパーバイザー "DeviceDisEnabler" by...
CODE BLUE
Exciting and Thrilling, EnOcean technology online seminar #2
Exciting and Thrilling, EnOcean technology online seminar #2
Atomu Hidaka
ECHONETコンソーシアムショートプレゼンテーション
ECHONETコンソーシアムショートプレゼンテーション
Norimitsu Shida
Similar to Webエンジニアのためのスマートホームハック ~ Node.js で家電とArduinoを操作 ~
(20)
2016年2月4日 空間OSの設計コンセプトと先端IT
2016年2月4日 空間OSの設計コンセプトと先端IT
Mt basic as-os_on_danbot
Mt basic as-os_on_danbot
Lagopus Switch Usecases
Lagopus Switch Usecases
AWS IoT EduKit ワークショップのご紹介
AWS IoT EduKit ワークショップのご紹介
Getting Started with Jetson Nano
Getting Started with Jetson Nano
SORACOM Bootcamp Rec12 | SORACOM Inventory
SORACOM Bootcamp Rec12 | SORACOM Inventory
2016年11月19日 AITCシニア技術者勉強会 第1回「Arduinoを使ってみる」
2016年11月19日 AITCシニア技術者勉強会 第1回「Arduinoを使ってみる」
Ns2240series users manual_07
Ns2240series users manual_07
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2)
Intalio Cloud Workshop
Intalio Cloud Workshop
MVPComCamp2015:Hyper-V仮想スイッチのTipsとTo Be(仮)
MVPComCamp2015:Hyper-V仮想スイッチのTipsとTo Be(仮)
RouterBOARD with OpenFlow
RouterBOARD with OpenFlow
2015/05/23 シニア技術者プログラム第3弾 「第二回IoT勉強会&交流会」 15:00~15:20 Arduinoで簡単回路作成実演
2015/05/23 シニア技術者プログラム第3弾 「第二回IoT勉強会&交流会」 15:00~15:20 Arduinoで簡単回路作成実演
Jubatus分類器の活用テクニック
Jubatus分類器の活用テクニック
20110724 WIZDOM:知識ゼロからのArduino(1)
20110724 WIZDOM:知識ゼロからのArduino(1)
EnOcean Development Performance - STM3xy and .NET Gadgeteer
EnOcean Development Performance - STM3xy and .NET Gadgeteer
Netduino
Netduino
CODE BLUE 2014 : サイバーエスピオナージを抑制するためにデバイスを無効化する ハイパーバイザー "DeviceDisEnabler" by...
CODE BLUE 2014 : サイバーエスピオナージを抑制するためにデバイスを無効化する ハイパーバイザー "DeviceDisEnabler" by...
Exciting and Thrilling, EnOcean technology online seminar #2
Exciting and Thrilling, EnOcean technology online seminar #2
ECHONETコンソーシアムショートプレゼンテーション
ECHONETコンソーシアムショートプレゼンテーション
More from Futomi Hatano
Embedded Webで加速するWeb of Things
Embedded Webで加速するWeb of Things
Futomi Hatano
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Futomi Hatano
HTML5 Conference 2015 悩める組込機器向けウェブコンテンツのパフォーマンス
HTML5 Conference 2015 悩める組込機器向けウェブコンテンツのパフォーマンス
Futomi Hatano
ウェブ標準デバイス系 API 総集編 2014
ウェブ標準デバイス系 API 総集編 2014
Futomi Hatano
html5j自動車部 第三回勉強会 W3C標準化と車載プラットフォームの最新動向
html5j自動車部 第三回勉強会 W3C標準化と車載プラットフォームの最新動向
Futomi Hatano
ようこそ、HTML5裏APIの世界へ - HTML5 Conference 2013
ようこそ、HTML5裏APIの世界へ - HTML5 Conference 2013
Futomi Hatano
アプリ開発支援サービス「アプリカン」 - HTML5 Experts Night 2013年8月23日
アプリ開発支援サービス「アプリカン」 - HTML5 Experts Night 2013年8月23日
Futomi Hatano
第40回 HTML5とか勉強会 HTML5マークアップ ビギナーの良くある質問にズバリ答えます
第40回 HTML5とか勉強会 HTML5マークアップ ビギナーの良くある質問にズバリ答えます
Futomi Hatano
HTML5マークアップ珍プレー集 - HTML5 Conference 2012
HTML5マークアップ珍プレー集 - HTML5 Conference 2012
Futomi Hatano
Progressive Enhancement - クロスブラウザー対応に必要なこと - Microsoft IE10 移行セミナー
Progressive Enhancement - クロスブラウザー対応に必要なこと - Microsoft IE10 移行セミナー
Futomi Hatano
HTML5マークアップの心得と作法
HTML5マークアップの心得と作法
Futomi Hatano
More from Futomi Hatano
(11)
Embedded Webで加速するWeb of Things
Embedded Webで加速するWeb of Things
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
HTML5 Conference 2015 悩める組込機器向けウェブコンテンツのパフォーマンス
HTML5 Conference 2015 悩める組込機器向けウェブコンテンツのパフォーマンス
ウェブ標準デバイス系 API 総集編 2014
ウェブ標準デバイス系 API 総集編 2014
html5j自動車部 第三回勉強会 W3C標準化と車載プラットフォームの最新動向
html5j自動車部 第三回勉強会 W3C標準化と車載プラットフォームの最新動向
ようこそ、HTML5裏APIの世界へ - HTML5 Conference 2013
ようこそ、HTML5裏APIの世界へ - HTML5 Conference 2013
アプリ開発支援サービス「アプリカン」 - HTML5 Experts Night 2013年8月23日
アプリ開発支援サービス「アプリカン」 - HTML5 Experts Night 2013年8月23日
第40回 HTML5とか勉強会 HTML5マークアップ ビギナーの良くある質問にズバリ答えます
第40回 HTML5とか勉強会 HTML5マークアップ ビギナーの良くある質問にズバリ答えます
HTML5マークアップ珍プレー集 - HTML5 Conference 2012
HTML5マークアップ珍プレー集 - HTML5 Conference 2012
Progressive Enhancement - クロスブラウザー対応に必要なこと - Microsoft IE10 移行セミナー
Progressive Enhancement - クロスブラウザー対応に必要なこと - Microsoft IE10 移行セミナー
HTML5マークアップの心得と作法
HTML5マークアップの心得と作法
Recently uploaded
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Shota Ito
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Atomu Hidaka
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
furutsuka
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
osamut
Recently uploaded
(9)
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
Webエンジニアのためのスマートホームハック ~ Node.js で家電とArduinoを操作 ~
1.
Webエンジニアのためのスマートホームハック Node.js で家電とArduinoを操作 2016年9月3日(土) HTML5 Conference
2016 @futomi futomi.hatano
2.
自己紹介 2 マークアップ解説本 API解説本 APIチュートリアル本Windows
8API解説本 有限会社 futomi 代表取締役 株式会社ニューフォリア 取締役 最高技術責任者
3.
日経SYSTEMS連載 2015年4月号~2016年3月号:こんなに変わったWeb開発/HTML5の基本テクニック 3
4.
日経SYSTEMSコラム 4 • そろそろIoTに触れてみませんか • マイコンボードを使って大気圧と気温を取得 •
Webブラウザーから制御 MIDIでサーボを動かす • Node.jsで家電を操作 赤外線を利用しよう • ECHONET Liteで家電をコントロール • スマホから機器を制御「デバイスコネクトWebAPI」 • 電池交換が不要に 無線技術「EnOcean」に注目 • ... IoTで火が付くITエンジニア魂:2016年4月号~2017年3月号 (予定)
5.
GitHubとnpm 5 https://www.npmjs.com/~futomi https://github.com/futomi
6.
6 IoTで話題の通信方式 PANからLPWANまで
7.
話題の無線方式 Personal Area Network
Home Area Network Low Power Wide Area Network Bluetooth Wi-SUN Wi-Fi EnOcean LoRa SigFox NB-IoT Wi-Fi HaLow Zigbee 特定小電力無線 サブギガ帯 (920MHz帯) Z-Wave DECT
8.
機器操作プロトコル例 8 Wi-SUN UDP UDP TCP HTTP SOAP UPnP SSDP IP Wi-Fi Ethernet Wi-Fi Ethernet IP UDP
TCP HTTP SOAP ONVIF WS- Discovery IP Wi-Fi Ethernet SOAP ECHONET Lite 家電/センサーセンサー AV/NW機器家電/センサー CCTVカメラ EnOcean Z-Wave
9.
Web屋でも試せる条件 • USBドングルとデバイスがネットで1個から手に入る • まとめ買い前提はつらい... •
野良ディベロッパーはお呼びでないメーカーが多い... • 技適が通っている • 電波を使う以上、避けては通れない... • 海外で普及していても日本では使えないものが多い... • 通信仕様が無料で一般公開されている • 標準化団体によっては会員でないと仕様が公開されていない • 非会員には有料で売っている団体もある • 機器種別ごとのプロファイルが規定されている • 低レイヤだけ規定されてても上位レイヤが規定されていないと事実上メーカー独自 規格と同じで野良ディベロッパーは扱えない 9 技適マーク
10.
もくじ • IoTで話題の通信方式 • Arduino編 •
EnOcean編 • ECHONET Lite編 • UPnP編 • まとめ 10
11.
11 Arduino編 JSでArduinoにアクセスする方法
12.
Web屋のArduino 12 そんなワガママな貴方 (私も) のために... •
はんだ付けなんてやりたくない • 電気回路に興味はない • 抵抗のカラーコードなんて分からない • ブレッドボードも使いたくない • C言語なんてできる限り使いたくない • やっぱりJavaScriptで
13.
Arduino Shield Kit 13 FaBo http://fabo.io/ seeed
studio - Grove https://www.seeedstudio.com/
14.
Chrome + Web
MIDI API + Moco • Midi Firmware for Arduino Uno (Moco)でArduinoのUSBファームを書き 換えて、ArduinoをMIDIデバイスとして認識されるようにする http://morecatlab.akiba.coocan.jp/lab/index.php/aruino/midi-firmware-for- arduino-uno-moco/ • 残念ながらスケッチはC言語で書くが、Arduino MIDI Libraryが便利 http://playground.arduino.cc/Main/MIDILibrary • データはMIDIフォーマットに載せてオレオレフォーマットで送る
15.
実験 15 ・Seeed社のGroveを使って超音波距離センサー, LED, サーボをArduinoに接続 ・距離センサーの結果をリアルタイムに取得して表示 ・ブラウザー上のスライダーでサーボを操作 ・サーボ操作のコマンドを受け付けたらLED点灯
16.
ビデオ 16 https://youtu.be/d7S5Mqelf08
17.
オレオレMIDIフォーマット 17 1 メッセージ値 チャネル番号 ステータスバイト 0 データバイト1 0 データバイト2 ノート番号 0~127 ベロシティ 0~127 電子ピアノなら PC →
Arduino Arduino → PC 超音波距離センサーが計測した距離 (cm) データバイト1 + データバイト2 (0~180) サーボの角度 (deg) データバイト1 + データバイト2 (0~254)
18.
Node.js + Johnny-Five
+ Firmata • Johnny-Five • USB経由でFirmataを使ってArduinoと通信するNode.jsモジュール • さまざまなArduino互換ボードとセンサーに対応 • Firmata • PCとマイコンの間でやり取りするためのプロトコル • ライブラリはArduinoのIDEに付属 • ArduinoにFirmataをビルド転送するだけ • 実際の通信はJohnny-Fiveに任せプロトコルを知る必要はない 18
19.
Johnny-Five 19 http://johnny-five.io/ http://johnny-five.io/api/multi/
20.
実験 20 FaBo社のFaBoを使って気圧センサー (Barometer I2C
Brick: MPL115A2) をArduinoに接続 温度と気圧を取得したら高度 (理論値) を計算して表示
21.
Node.jsのコード 21 var five =
require("johnny-five"); var board = new five.Board(); board.on("ready", () => { var multi = new five.Multi({controller: "MPL115A2"}); multi.on("change", () => { // 温度 (摂氏) var tmp = this.temperature.celsius; // 大気圧 (kPaをhPaに変換) var prs = this.barometer.pressure * 10; // 高度 (メートル) : 日本の場合 var alt = ((Math.pow(1013.25/prs, 1/5.257) - 1) * (tmp + 273.15)) / 0.0065; // 結果表示 ... }); });
22.
22 EnOcean編 電源要らずのIoT
23.
EnOceanの特徴 • エナジーハーベスティング • バッテリーレス無線発信技術 •
電磁誘導や太陽光発電などで電池要らず • 主にビルオートメーションなどの業務用に活用される • 近年はスマートホームも視野に • 周波数はサブギガ帯 • 日本では928MHz • ローム社が日本市場向け無線モジュールを扱っている • 製品 • 各種センサー (温度, 湿度, CO2, ドア開閉など) • ロッカースイッチ 23
24.
製品例 24
25.
仕様書 • EnOcean GmbH.が一般無料公開 •
https://www.enocean.com/en/knowledge-base/ • 仕様書の種類 • EnOcean Serial Protocol (ESP) 3 • テレグラムのフォーマット仕様 • EnOcean Radio Protocol (ERP) 2 • テレグラムのデータ部の仕様 • EnOcean Equipment Profiles (EEP) 2.6.5 • 機器種別ごとの仕様 • EnOceanアライアンスにて策定 25
26.
EnOceanのプロトコル体系 26
27.
EnOcean Equipment Profiles
(EEP) • デバイス種別ごとにEEPが割り振られている • A5-02-05: Temperature Sensor Range 0℃ to +40℃ • A5-07-01: Occupancy with Supply voltage monitor • A5-09-04: CO2 Sensor • F6-02-04: Rocker Switch, 2 Rocker, Light and blind control • EEPの把握の仕方 • EnOceanデバイスの説明書に記載されている(はず) • 記載されてなければ販売元に聞くしかない • 4BSというカテゴリのEEPならLearnボタンが用意されており、それを押すと自分自 身のEEPを通知するテレグラムを飛ばしてくれる • ただし、製品によっては間違っていたりする... 27
28.
Learnボタン 28
29.
node-enocean-utils • EnOceanを扱うためのNode.jsモジュール • https://github.com/futomi/node-enocean-utils •
依存関係 • Node.js 4.4以上 • serialportモジュール • インストール $ npm install node-enocean-utils 29
30.
EnOceanデバイスの登録 (teach-in) 30 var enocean
= require('node-enocean-utils'); // EnOceanデバイスの登録 enocean.teach({ 'id' : '00 00 00 2C 86 5C', 'eep' : 'F6-02-04', 'name': 'ESM210R Rocker Switch Single' }); enocean.teach({ 'id' : '00 00 04 01 31 95', 'eep' : 'A5-02-05', 'name': 'STM 431J Temperature Sensor' });
31.
EnOceanデバイスのモニター 31 // モニター開始 enocean.startMonitor({'path': 'COM7',
'rate': 57600}); // data-knownイベントのリッスン enocean.on('data-known', (telegram) => { var message = telegram['message']; console.log(message['device']['name'] + ': ' + message['desc']); }); ESM210R Rocker Switch Single: B0 pressed ESM210R Rocker Switch Single: B0 released ESM210R Rocker Switch Single: BI pressed ESM210R Rocker Switch Single: BI released STM 431J Temperature Sensor: 28.2℃ STM 431J Temperature Sensor: 28.4℃ 出力例
32.
32 ECHONET Lite編 家電とスマートメーターを操作
33.
ECHONET Liteの特徴 • 家電の種別ごとにクラス定義 •
エアコン, 空気清浄機, スマートメーターなど • 通信の下位層はなんでもアリ • TCP, UDP, Bluetooth, Wi-SUNなど • セキュリティーも下位層任せ • 製品 • エアコン, シーリングライト, 空気清浄機, スマートメーターなど • エアコンは別途ネットワークモジュールを購入する必要あり • メーカーによってはホームゲートウェイも購入する必要あり 33
34.
製品例 34 ダイキン 新うるさら7
35.
ネットワークアダプタ 35
36.
仕様書 • ECHONETコンソーシアムが一般無料公開 • http://echonet.jp/spec/ •
仕様書の種類 • ECHONET Lite規格書 Ver.1.12 • http://echonet.jp/spec_v112_lite/ • プロトコルの概要および共通部分の仕様 • APPENDIX ECHONET機器オブジェクト詳細規定 Release H • http://echonet.jp/spec_object_rh/ • 機器種別ごとの仕様 36
37.
node-echonet-lite • ECHONET Liteを扱うためのNode.jsモジュール •
https://github.com/futomi/node-echonet-lite • 依存関係 • Node.js 4.4以上 • serialportモジュール (Wi-SUN ルートBを扱う場合) • インストール $ npm install node-echonet-lite 37
38.
初期化 38 // モジュールのロード var EchonetLite
= require('node-echonet-lite'); // EchonetLiteオブジェクトを生成 var el = new EchonetLite({'type': 'lan'}); // EchonetLiteオブジェクトを初期化 el.init((err) => { // ここで機器発見 });
39.
機器発見 39 el.startDiscovery((err, res) =>
{ var device = res['device']; var address = device['address']; // 機器のIPアドレス var eoj = device['eoj'][0]; // EOJ var group_code = eoj[0]; // グループコード var class_code = eoj[1]; // クラスコード // 家庭用エアコンかどうかを判定 if(group_code === 0x01 && class_code === 0x30) { // 機器発見プロセスを停止 el.stopDiscovery(); // ここからあれこれエアコン操作 ... }); }
40.
エアコンON/OFF 40 var epc =
0x80; // ON/OFFを表すプロパティコード // ONかOFFかを調べる el.getPropertyValue(address, eoj, epc, (err, res) => { // ONだったならtrue, OFFだったならfalse var status = res['message']['data']['status']; // ONならOFFに, OFFならONにする var edt = { 'status': !status }; // EDTオブジェクト el.setPropertyValue(address, eoj, epc, edt, (err, res) => { if(!err) { console.log('成功'); } }); });
41.
Wi-SUN ルートB用のUSBドングル 41 http://www.tessera.co.jp/rl7023stick-d_dss.html テセラ・テクノロジー RL7023 Stick-D/DSS http://www.rohm.co.jp/web/japan/news-detail?news- title=2014-10-02_news&defaultGroupId=false ローム/Jorjin WSR35A1-00
42.
Bルートの申し込み (東電の場合) • 電力メーター情報発信サービス (Bルートサービス) http://www.tepco.co.jp/pg/consignment/ liberalization/smartmeter-broute.html •
申し込みが終わると後日勝手に メータが交換される (停電なし) • その後「認証ID」が郵送 • さらにその後メールでパスワード が通知 42
43.
我が家のスマートメーター 43
44.
Wi-SUN Bルートの実際のやり取り 44 > SKSENDTO
1 FE80:0000:0000:0000:0000:0000:0000:0000 0E1A 2 000E 1081001A05FF0102880162019E00 EVENT 21 FE80:0000:0000:0000:0000:0000:0000:0000 00 OK ERXUDP FE80:0000:0000:0000:0000:0000:0000:0000 FE80:0000:0000:0000:0000:0000:0000:0001 0E1A 0E1A 001C64000334809F 1 0012 1081001A02880105FF0172019E040381E5ED > SKSENDTO 1 FE80:0000:0000:0000:0000:0000:0000:0000 0E1A 2 000E 1081001B05FF0102880162019F00 EVENT 21 FE80:0000:0000:0000:0000:0000:0000:0000 00 OK ※ 実際にはテキストとバイナリが混在したコマンドとレスポンスでECHONET Liteパケット部はバイナリ ECHONET Liteパケット部分 ECHONET Liteパケット部分
45.
ビデオ(非公開) 45
46.
node-echonet-lite Wi-SUN Bルート初期化 46 var
EchonetLite = require('node-echonet-lite'); var el = new EchonetLite({ 'lang' : 'ja', 'type' : 'wisunb', 'adapter': 'bp35a1', 'path' : 'COM8', 'id' : '0123456789ABCDEF0123456789ABCDEF', 'pass' : 'ABCDEFGHIJKL', 'baud' : 115200 }); ・以降はUDPを扱う場合と同じ ・ただし、機器発見は時間がかかる(我が家の環境では20秒ほど) ・基本的にレスポンスは遅い
47.
47 UPnP編 テレビなどのAV機器にアクセス
48.
UPnPの特徴 • 機器発見と録画映像再生制御など • SSDP,
M-Search • HTTP POSTでSOAPをリクエスト • 対応機器 • ほとんどのテレビが対応 • ただしUPnPで規定されていない操作はメーカー独自 • パケットキャプチャーすればある程度は分かる(かも) 48
49.
node-upnp-utils • UPnPを扱うためのNode.jsモジュール • https://github.com/futomi/node-upnp-utils •
依存関係 • Node.js 4.4以上 • xml2jsモジュール • インストール $ npm install xml2js $ npm install node-upnp-utils 49
50.
機器発見 var upnp =
require('node-upnp-utils'); // addedイベントのリスナー upnp.on('added', (device) => { // 欲しいデバイスが見つかれば発見処理を停止 upnp.startDiscovery(); // あとはお好きなように... ... }); // 機器発見開始 upnp.startDiscovery();
51.
アクション送信 51 var upnp =
require('node-upnp-utils'); var soap = ''; soap += '<?xml version="1.0" encoding="utf-8"?>'; soap += '<s:Envelope ...>...</s:Envelope>'; var params = { 'url' : 'http://192.168.10.4:20003/MediaServer/ContentDirectory/Control', 'soap': soap }; upnp.invokeAction(params, (err, obj, xml, res) => { ... });
52.
ビデオ(非公開) 52
53.
53 まとめ Web屋でもIoT
54.
Web屋でもIoT • Webディベロッパーでも関われる分野はある • Arduino,
Wi-SUN, EnOcean, etc.. • IoTはモノだけでなく見える化も重要、そこはWeb屋の得意分野 • ハードは専門家に任せよう • ドットメイクのブームもあるがそんな簡単じゃない • ハルロック読みましょう
55.
ご清聴ありがとうございました @futomi futomi.hatano
Download now