SlideShare a Scribd company logo
1 of 60
Download to read offline
【ヒカ☆ラボ】IOT開発のキホン‼∼
IOT開発初心者必見∼ハードウェアと
WEBの違いから説明します!
株式会社Pluto 電気通信大学

市東拓郎
自己紹介
は特にないので
仕事場所の紹介
部屋
オフィス
研究室
当日のみ
講演内容
• Webから身の周りの機械を動かす楽しさ
• 身近な機械に入っているマイコンとパソコン
のスペックの違い
• 身近な機械をハックする
今回の内容は哲学よりです
あんまりタイトルを気にせずに
話します
WEBから身の周りの機械を動
かす楽しさ
PLUTOとは?
家電を操作するWebサービス
PLUTOとは?
家電を操作するWebサービス
Web(仮想世界)と現実世界をつなぐ
IOを提供したい
pluto.io
なぜPLUTOを始めたか?
なぜPLUTOを始めたか?
最終目的は自由に宇宙のすべてを操作できるシステムの構築
当日のみ
当日のみ
当日のみ
PLUTO年表
• 2001年 Turbo Linux 6.0 WS上で仮想世界の実現出来ないかいろいろテスト
• 2004年 部屋のセンサーで現実の情報を集めるプロトタイプ 個人でMSDNを契約して作った 
WIN2K Serverベース PC名が MarsとSaturn
• 2006年 部屋の家電をWEBから動かすシステムを作った PC名がPluto
• 2008年 初代社長と夢を語る
• 2010年 メンバー合流
• 2011年 法人作成
• 2012年 サービス開始
• 2016年 いろいろ予定
当日のみ
当日のみ
身近な機械に入っているマイコ
ンとパソコンのスペックの違い
スマホで操作するIOT機器の構成
マイコン
センサー
モジュール
BLE
モジュール
スマホ
プログラム
プログラム
ハードウエア
IC間通信
IC間通信
BLE
アクチュエータ
プログラミングの種類
• Webシステムの構築 Perl Ruby Java Script
• スマホアプリ Obj-C C# Java
• アプリケーション C# C BASIC
• 組み込み アセンブラ C(組み込み用)
組み込み特有の事
Wikiより
マイコンのPIC
組み込み特有の事
• メモリが非常に少ない
• アーキテクチャに依存する
• マルチタスクではない(OSを使えば別)
CPUの気持ちになってみよう
メモリ
レジスタ
ハードとか
メモリを介してのみ
アクセス
CPUはメモリ、レジスタ
しか見えない
CPUの気持ちになってみよう
メモリ
レジスタ
ハードとか
メモリを介してのみ
アクセス
CPUはメモリ、レジスタ
しか見えない
すべてのコンピュータも同じだけど有り余る
計算力で隠 している
組み込みでは変なCも書くかも
((void(*)(void))0xf000)();
call 0xf000
自分で書いていてひどいと思ったコード
最近はうまーくハードを隠 した環境も出ているので
どこまでこだわるかは自分次第
ただ、隠 した環境を使えば使うほど出来ることは少なくなる
組み込み系のリソース
• メモリ 4096BYTE
• Flashメモリ 64KBYTE
• 4MHz
• センサーの情報量 4BYTE
• 電池で動作
組み込み系のリソース
アセンブラとC言語(ほとんどのライブラリは使えない)
でPCの様な1000BASEのイーサネットの通信
大容量のメモリを使ったりはそもそも難しい
10BASEと1000BASEではハードウエアの構造やコスト
も変わってくる
高性能のハードを用意する必要はないし
使いこなせない
組み込み系のリソース
アセンブラとC言語(ほとんどのライブラリは使えない)
でPCの様な1000BASEのイーサネットの通信
大容量のメモリを使ったりはそもそも難しい
10BASEと1000BASEではハードウエアの構造やコスト
も変わってくる
高性能のハードを用意する必要はないし
使いこなせない
高速化すればするほど交流特性
など難しい事が増えていく
不必要な高性能化はただ問題を増やす
役割分担をちゃんとしよう
WEB
iPhone
IoT
Sensor
UIとしては最高
どこからでもアクセスできる
現実世界にアクセス出来る
IOT機器がすべきこと
• 現実の情報を読み
• WEBもしくは端末に送る
IOT機器がすべきこと
• WEBもしくは端末からの情報を現実に適応
する
難しい処理は
計算、ストレージ資源が
無限にあるサーバーに任せよう!
IOT機器が戦うところじゃない!
IOT機器は情報の送り方が
重要
IOTを普及させる起爆剤BLE
BLEの特徴
• 非常に消費電力が少ない
• iPhone Androidに対応している
• GATTなのどの設計がIoTにマッチしている

オブジェクト指向に近い
BLEの消費電力を下げる工夫
消費電力は回路が使った電流で決まる
C[Ah]が電池の容量に達したら電池切れ
C =
Z
I(t)dt
T =
C
eI
電池切れまでの時間
※CR2032は225mAh
BLEの消費電力を下げる工夫
電池切れまでの時間を延ばすこつは
平均消費電流を下げる事
瞬発的な大電力はOK
BLEは送信速度を上げて
送信時間を減らした
BLEの消費電力を下げる工夫
※CR2032は225mAh
随時受信を受け付ける状態 (10mA消費する)
22.5時間
送信だけをする場合 (送信時20mA消費する)
11.25時間分送信可能
BLEが向かない場合
• 大容量通信をしたい
• ストリーム通信をしたい
• TCPなどを使って直接インターネットに接続
したい
無線はBLEを使いましょう
大容量はWIFIを使いましょう
でもIOTで大容量の通信をするのはやめましょう
身近な機械をハックする
機器をハックする手順
1.機器を分解して、ICとセンサーの間の通信を調べる
 1−1.センサーのデータシートを調べる
 1−2.ICのデータシートを調べる
2.通信を乗っ取る
1.機器を分解して、ICを調べる
 1−2.ICのデータシートを調べる
2.通信を乗っ取る
とりあえず機械があったら分解をする
タニタのはかりを分解してみる
ADCを使ったらハック出来る!
EEPROM
MCU
タニタのはかり
出力電圧が0.7Vで重さによっては
出力電圧が変化する
(最大で0.1V程度の変化)
OPアンプの差分増幅回路で変化を増幅しないと
ADCで検出出来ない
のハック
大家に怒られたので割愛
アナログ回路
ディジタル回路
アナログ回路のハックとディジタル回路のハックでは
難しさが違う
ディジタル回路ではIOと繋げれば後はソフトの問題
アナログでは電圧レベルを合わせるなど必要
ソフトだけではどうにもならない
センサーを使いこなす事が
非常に重要
• 温度センサー
• 加速度センサー
• 光センサー
• 音センサー
だいたい世にあるセンサーはこんな物
秋月のHPより
センサーとの通信方法
• ADC アナログデジタルコンバータ
• SPI  IC間通信の規格
• I2C  IC間通信の規格
• UART デバイス間通信も可能な規格
SPIとI2Cに対応しているのが多い
秋月のHPより
初心者はSPIかI2Cを使った
センサーの方がいい
アナログは非常にやっかい
温度センサーは温度しか
測れないか?
温度センサーで体重を量る
温度センサーで体重を量る
理想気体
ピストン
気体の温度を測れば上から
押す力が分かる
↓
温度センサーを圧力センサー
として利用
断熱過程になっている
d0
W = pdV
熱力学に従って
計算すればいい
センサーを活用するために
測定とは?
測定対象系
S
メーター系
M
相互作用がおきて
相関が発生する
操作するために
操作とは?
操作対象系
S
相互作用がおきて
相関が発生する
コントローラー系
C
IOTは現実世界と仮想世界
に相関を起こす
FIN
ご静聴ありがとうございました

More Related Content

What's hot

Enterprise Identity Working Groupについて
Enterprise Identity Working GroupについてEnterprise Identity Working Groupについて
Enterprise Identity Working Groupについて
OpenID Foundation Japan
 

What's hot (20)

IoT勉強会「littleBitsとIFTTTで超お手軽IoTクッキング」
IoT勉強会「littleBitsとIFTTTで超お手軽IoTクッキング」IoT勉強会「littleBitsとIFTTTで超お手軽IoTクッキング」
IoT勉強会「littleBitsとIFTTTで超お手軽IoTクッキング」
 
IoTデータ活用のフィードバックループ
IoTデータ活用のフィードバックループIoTデータ活用のフィードバックループ
IoTデータ活用のフィードバックループ
 
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
さくらのIoT Platformを使ってみよう ~Developers in KOBE編~
 
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
 
大阪Innovation egg 第6回資料:SORACOM AirやBeamそして新サービスについて
大阪Innovation egg 第6回資料:SORACOM AirやBeamそして新サービスについて大阪Innovation egg 第6回資料:SORACOM AirやBeamそして新サービスについて
大阪Innovation egg 第6回資料:SORACOM AirやBeamそして新サービスについて
 
Mqttで始めるIoT
Mqttで始めるIoTMqttで始めるIoT
Mqttで始めるIoT
 
GPSなしで位置情報をGETした結果・・・
GPSなしで位置情報をGETした結果・・・GPSなしで位置情報をGETした結果・・・
GPSなしで位置情報をGETした結果・・・
 
さくらのIoT Platform β版ハンズオン
さくらのIoT Platform β版ハンズオンさくらのIoT Platform β版ハンズオン
さくらのIoT Platform β版ハンズオン
 
Sakura IoT Platform
Sakura IoT PlatformSakura IoT Platform
Sakura IoT Platform
 
WebとIoTとMake
WebとIoTとMakeWebとIoTとMake
WebとIoTとMake
 
[JAWS-UG関西IoT専門支部] IoTで関西のコミュニティをつなぐ
[JAWS-UG関西IoT専門支部] IoTで関西のコミュニティをつなぐ [JAWS-UG関西IoT専門支部] IoTで関西のコミュニティをつなぐ
[JAWS-UG関西IoT専門支部] IoTで関西のコミュニティをつなぐ
 
if-up 2017 | B2 デバイスデザインパターン〜ユースケース別デバイス選定〜
 if-up 2017 | B2 デバイスデザインパターン〜ユースケース別デバイス選定〜 if-up 2017 | B2 デバイスデザインパターン〜ユースケース別デバイス選定〜
if-up 2017 | B2 デバイスデザインパターン〜ユースケース別デバイス選定〜
 
IoTタグで遊んでみよう
IoTタグで遊んでみようIoTタグで遊んでみよう
IoTタグで遊んでみよう
 
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
【最新版誘導用】駅すぱあとWebサービス&sakura.io体験ハンズオン
 
座談会資料(メモ付き) 20151003
座談会資料(メモ付き) 20151003座談会資料(メモ付き) 20151003
座談会資料(メモ付き) 20151003
 
IoT Getting Started with AWS and Raspberry Pi
IoT Getting Started with AWS and Raspberry PiIoT Getting Started with AWS and Raspberry Pi
IoT Getting Started with AWS and Raspberry Pi
 
Enterprise Identity Working Groupについて
Enterprise Identity Working GroupについてEnterprise Identity Working Groupについて
Enterprise Identity Working Groupについて
 
SEILはIIJのココに使われている
SEILはIIJのココに使われているSEILはIIJのココに使われている
SEILはIIJのココに使われている
 
Dfuke oidfj tn10
Dfuke oidfj tn10Dfuke oidfj tn10
Dfuke oidfj tn10
 
座談会(趣旨説明資料) 20160417
座談会(趣旨説明資料) 20160417座談会(趣旨説明資料) 20160417
座談会(趣旨説明資料) 20160417
 

Similar to IoT開発のキホン‼〜IoT開発初心者必見~ハードウェアとwebの違いから説明します!by Pluto

Similar to IoT開発のキホン‼〜IoT開発初心者必見~ハードウェアとwebの違いから説明します!by Pluto (20)

IoTの原点
IoTの原点IoTの原点
IoTの原点
 
Web BluetoothではじめるIoT Prototype
Web BluetoothではじめるIoT PrototypeWeb BluetoothではじめるIoT Prototype
Web BluetoothではじめるIoT Prototype
 
2016/2/20 DevelopersIO 2016 実践 IoT システムで求められる確実なデータ連携
2016/2/20 DevelopersIO 2016 実践 IoT システムで求められる確実なデータ連携2016/2/20 DevelopersIO 2016 実践 IoT システムで求められる確実なデータ連携
2016/2/20 DevelopersIO 2016 実践 IoT システムで求められる確実なデータ連携
 
JavaScriptで簡単IoT! RasPiをインターネットから制御するプラットフォームを作ったよ!
JavaScriptで簡単IoT! RasPiをインターネットから制御するプラットフォームを作ったよ!JavaScriptで簡単IoT! RasPiをインターネットから制御するプラットフォームを作ったよ!
JavaScriptで簡単IoT! RasPiをインターネットから制御するプラットフォームを作ったよ!
 
LINE dev meetup
LINE dev meetupLINE dev meetup
LINE dev meetup
 
ゆるくはじめるIoT
ゆるくはじめるIoTゆるくはじめるIoT
ゆるくはじめるIoT
 
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
IoT時代のデータ伝送とインフラに求められている機能と技能 - ニフティクラウド mobile backend #7
 
@nifty エンジニアサポートの使い方
@nifty エンジニアサポートの使い方@nifty エンジニアサポートの使い方
@nifty エンジニアサポートの使い方
 
家のIoT・スマートハウス・おうちハック
家のIoT・スマートハウス・おうちハック家のIoT・スマートハウス・おうちハック
家のIoT・スマートハウス・おうちハック
 
2018 1005 sier iotlt_suzuki
2018 1005 sier iotlt_suzuki2018 1005 sier iotlt_suzuki
2018 1005 sier iotlt_suzuki
 
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
東大大学院 戦略ソフトウェア特論2021「ロボットで世界を計算可能にする」海野裕也
 
160531 IoT LT #15 @ 日本IBM
160531 IoT LT #15 @ 日本IBM160531 IoT LT #15 @ 日本IBM
160531 IoT LT #15 @ 日本IBM
 
Webを支える組み込み技術
Webを支える組み込み技術Webを支える組み込み技術
Webを支える組み込み技術
 
Pepper x IoT x Web 勉強会やってみた話と失敗談
Pepper x IoT x Web 勉強会やってみた話と失敗談Pepper x IoT x Web 勉強会やってみた話と失敗談
Pepper x IoT x Web 勉強会やってみた話と失敗談
 
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
IoT Hub と Azure Funxtions とかで片桐ヒマボタンを作った話
 
Ansible study1
Ansible study1Ansible study1
Ansible study1
 
DevOps Conference #1
DevOps Conference #1DevOps Conference #1
DevOps Conference #1
 
IoT再入門。はじめてのIoT、何をする?何を選ぶ?
IoT再入門。はじめてのIoT、何をする?何を選ぶ?IoT再入門。はじめてのIoT、何をする?何を選ぶ?
IoT再入門。はじめてのIoT、何をする?何を選ぶ?
 
福岡Meetup/(カラビナテクノロジー株式会社:藤村賢志)
福岡Meetup/(カラビナテクノロジー株式会社:藤村賢志)福岡Meetup/(カラビナテクノロジー株式会社:藤村賢志)
福岡Meetup/(カラビナテクノロジー株式会社:藤村賢志)
 
20151221 iotlit
20151221 iotlit20151221 iotlit
20151221 iotlit
 

More from leverages_event

More from leverages_event (20)

Ac tsumugu 20170712
Ac tsumugu 20170712Ac tsumugu 20170712
Ac tsumugu 20170712
 
20171206 tsumugu4 人工知能特集_v1.00_抜粋
20171206 tsumugu4 人工知能特集_v1.00_抜粋20171206 tsumugu4 人工知能特集_v1.00_抜粋
20171206 tsumugu4 人工知能特集_v1.00_抜粋
 
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
【ヒカ☆ラボ】アーキテクト養成講座「入門編」 折田 武己 氏 登壇資料 20171205
 
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 梅森 翔氏 登壇資料 20171121
 
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 大竹 雅登氏 登壇資料 20171121
 
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 深尾 もとのぶ氏 登壇資料 20171121
 
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
【ヒカ☆ラボ】 dely株式会社 三笠 斉輝氏 登壇資料 20171121
 
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
 
【ヒカ☆ラボ】株式会社ライナフ 登壇資料
【ヒカ☆ラボ】株式会社ライナフ 登壇資料【ヒカ☆ラボ】株式会社ライナフ 登壇資料
【ヒカ☆ラボ】株式会社ライナフ 登壇資料
 
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
【ヒカ☆ラボ】株式会社エアー様~ETLツール活用法について~
 
インスタグラムを活用した、マーケティングについて
インスタグラムを活用した、マーケティングについてインスタグラムを活用した、マーケティングについて
インスタグラムを活用した、マーケティングについて
 
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
ヒカ☆ラボ ユニティ・テクノロジーズ・ジャパン合同会社 安原 祐二氏登壇資料_20170119
 
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 山田 和広氏登壇資料 20161129
 
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
ヒカ☆ラボ 株式会社PR TIMES 新井 隆士氏登壇資料 20161129
 
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」開発エンジニア
 
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
ヒカラボ「自社サービス開発会社で活躍し続けるために必要な○○とは?」UIデザイナー
 
初心者向けGo言語勉強会
初心者向けGo言語勉強会初心者向けGo言語勉強会
初心者向けGo言語勉強会
 
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
DMM.comラボはなぜSparkを採用したのか?レコメンドエンジン開発の裏側をお話します!
 
Node.js×mongo dbで3年間サービス運用してみた話
Node.js×mongo dbで3年間サービス運用してみた話Node.js×mongo dbで3年間サービス運用してみた話
Node.js×mongo dbで3年間サービス運用してみた話
 
株式会社waja 安藤様 登壇資料
株式会社waja 安藤様 登壇資料株式会社waja 安藤様 登壇資料
株式会社waja 安藤様 登壇資料
 

IoT開発のキホン‼〜IoT開発初心者必見~ハードウェアとwebの違いから説明します!by Pluto