Upload
jollen-chen
View
1.356
Download
0
Embed Size (px)
Citation preview
Mokoversity
IoT & Maker Crossover 創新交流⽇日
Biotech + IoT
敏捷製造
IoT Open Architecture
Reinvent IoT
Maker Marketpalce
談 IoT 創業
Mokoversity
IoT & Maker Crossover Conference !
Jollen Chen / 2015.04.28 <[email protected]>
Mokoversity
Open IoT Cloud Architecture Using Web Technology and Open Standards
Jollen <[email protected]>!!Android Framework, Mobile Devices, HTML5 Full Stack, Node.js Backend, Linux Device Drivers, Linux Kernel and etc.!!Founder, Moko365 Inc.!Founder and Developer, Mokoversity!Co-founder and Developer, Openmbed!Developer, WoT.City
講者介紹
Skill!Domains
Jobs
(C) 2015 Mokoversity Inc. v0.1.0 CONFIDENTIAL.
jollen <[email protected]> Mokoversity Inc.
Mokoversity Pre-Startup 訓練場
IoT & Maker 創客學院 Hackers Lead
www.mokoversity.com
(C) 2015 Mokoversity Inc. v0.1.0 CONFIDENTIAL.
jollen <[email protected]> Mokoversity Inc.
WoT.City Web of Things Startup 使⽤用 Openmbed 開源計畫 源⾃自台灣本⼟土的物聯網開發平臺
wotcity.com
(C) 2015 Mokoversity Inc. v0.1.0 CONFIDENTIAL.
Openmbed 開發物聯網雲端架構研發社群
!
發起⼈人
openmbed.org
jollen <[email protected]> Mokoversity Inc.
Jollen 台灣 Mokoversity 發起⼈人、知名開發者、講師
潘昊
⺩王功瑾
馮⽟玉麟
胡翔
矽遞科技與柴⽕火創客空間創辦⼈人、富⽐比⼠士中國評選 「30/30」企業家
硬件研發及原廠供應鏈創業家
中國 2015 年 Top #100 智能硬件投資者
騰訊戰略投資總監
3 Physical Object
http://wot.city/1/00886956590989/kitchen/sensor/dust/a
ws://wot.city/object/00886956590989/kitchen/sensor/dust/a
coap://wot.city/00886956590989/kitchen/sensor/dust/a
Facebook Parse IoT SDK Intel IoT Developer Kit Google Physical Web W3C Web of Things IBM IoT Foundation ADEPT BlockChain Amazon 2lemetry AllSeen Alliance Thread Group AWS C-SDK IBM Bluemix ARM mbed
…
IoT Device Mobile
HTTP 1.1/2.0HTTP 1.1/2.0
Light-weight Web server
Web Frontend
HTTP Use Case
http://wot.city/1/jollenchen/sensor/dust/a
Web of Things
Internet
IoT Device Mobile
HTTP 1.1/2.0Streaming Data
Physical Object Web Frontend
Real-Time Data
Broker
ws://wot.city/object/jollenchen/sensor/dust/a
Web of ThingsHTTP wit Websocket Use Case
Websocket
HTTP 1.1/2.0
CoAP
IoT Cloud
IoT Device
IoT Device
IoT Device IoT Device
Mobile & Client
IoT Proxy
www.mokoversity.com
Web of Things Architecture
Free
將數據儲存到⾮非開放的 IoT 雲服務,是否能「取回」⾃自已的資料,會是⼀一個問題。儲存在真正開放的IoT 雲,才能解決這樣的問題。開放式 IoT 架構的意義,必須是⾃自由的:Personal Things
Libre Software
Gives users the freedom to run the software for any purpose as well as to study, modify, and distribute the original software and the adapted versions.
(—wikipedia)
Libre IoT
Gives users the freedom to ___ the personal data for any purpose as well as to ___, ___, and ___ the original data and the ______ versions.
Websocket
HTTP 1.1/2.0
CoAP
Personal Things
OSHW IoT
OSHW IoT
OSHW IoT
OSHW IoT
Mobile & Client
IoT Proxy
www.mokoversity.com
Open Standards
Open and Libre
Open IoT
Cloud
Open Standards
Personal Things
Free & Libre Things
Open Hardware
Web
IoT Cloud Framework
Hacker x
Maker
WoT.City Architecture
OSHW
「物聯網裝置終將免費」。在IoT Open Architecture 的理想中,消費者可以免費取得硬件。這個理想並⾮非不可⾏行,第⼀一個步驟,就是設法降低取得硬件的成本。⾃自造硬體(成為IoT 的創客),就是重要的起步
IoT
Smart Phone
Open Source CultureOpen
Hardware
Maker Culture
Free & App Economic
Education & Training
HTML5/CSS/JS REST SPA WebSoc
ket CORS Frontend Patterns
Web Pages
V
Web App V V
SPA V V V (Backbone)
Web Service
V V (Server) V
IoT / WoT V V V (Client)V
(jQuery、Module、Closure)
Web-Technology Matrix
IoT WoT
連結⽅方式 Bluetooth HTTP
數據管理 Centerlized Decenterlized
Things Objects RESTful Objects
應⽤用開發模式 Native Web (SPA)
硬件概念 Sensor Device Physical Web (Sensor Fusion)
Figure: Thinking in WoT. Copyright (C) 2014 Mokoversity Inc.
IoT vs WOT
IoT WoT
Connectivity Machine to Machine LWM2M Machine to Web
Networking TCP / UDP HTTP / REST / CoAP
Things Sensor Device RESTful Objects
Data Streaming Data Time-Series Data
Discover MQTT Publish / Subscribe
Figure: Thinking in WoT. Copyright (C) 2015 Mokoversity Inc.
Connectivity
Source: http://coap.technology
REST model for small devices !Like HTTP, CoAP is based on the wildly successful REST model: Servers make resources available under a URL, and clients access these resources using methods such as GET, PUT, POST, and DELETE.
Source: http://coap.technology
Made for billions of nodes !The Internet of Things will need billions of nodes, many of which will need to be inexpensive. CoAP has been designed to work on microcontrollers with as low as 10 KiB of RAM and 100 KiB of code space (RFC 7228).
Source: http://coap.technology
Existing skills transfer !From a developer point of view, CoAP feels very much like HTTP. Obtaining a value from a sensor is not much different from obtaining a value from a Web API.
Source: http://coap.technology
Ready for integration !Since HTTP and CoAP share the REST model, they can easily be connected using application-agnostic cross-protocol proxies. A Web client may not even notice that it just accessed a sensor resource!
ARM IoT Tutorial https://www.youtube.com/watch?v=4bSr5x5gKvA
Websocket
HTTP 1.1/2.0
CoAP
IoT Cloud
IoT Device
IoT Device
IoT Proxy
12
IoT Device
2
3
Mobile & Client
3
CoAPThe Web of Things Protocol
HTTP The Web protocol. !
CoAP The Web of Things Protocol. !
MQTT The TCP Protocol.
IoT Device
IoT Device
IoT Proxy
12
IoT Device
2
3
Constrained Environment
3
From HTTP to CoAP
RESTful UDP
M2M Wireless Sensor Network
HTTP in Uniform way Simple Cache
IoT Device
IoT Device
IoT Proxy
12
IoT Device
2
3
Constrained Environment
3
CoAP Features
Source: http://mbed.org/technology/os/
mbed OS !
mbed™ OS is an operating system for IoT devices and is especially well-suited to run in energy
constrained environments.
API
Business Logic
Data Access Layer !and Databases
Secu
rity
Logg
ing
“server-side implementations are becoming a thin layer with an API for data and security” (-Shiju Varghese)
“modern Web developers are writing their server-side code for both Mobile apps and Web apps” (-Shiju Varghese)
API Driven Development
Web Frontend
Boundary Compositor - update DOM subtree
Data Compositor - integrate the services and data Au
tom
atio
n JS
Composition Layer - programmable widgets !Physical Mashup !Building Blocks Pattern !(…)
AutomationJS
WoT.City IoT Cloud
Device Registration !
Data Container !
Websocket Broker (Channel) !
CoAP Broker (Channel)
WoT Application Layer Framework (LiveApp) !
AutomationJS !
Data Compositor
WoT.City
Mobile and
Client
Abstraction Level of WoT.City
Data Model
ws:// coap://
Sensor Device
WoT Framework
Broker
Board-Level Hardware
Data-View Methodology
Data Model Set
ws:// coap://
Sensor Device
View
Neither really a MVC pattern nor MVVM pattern. The architecture only contains a data set and a
corresponding template-based view.
Websocket
HTTP 1.1/2.0
CoAP
IoT Proxy
IoT Device
IoT Device
IoT Proxy (IoT Gateway)
12
IoT Device
2
3
Mobile & Client
3
Arch Pro
Arch Pro
Arch Pro
Seeeduino Cloud
Data-View MethodologyIoT Cloud as the Proxy Pattern
Websocket
HTTP 1.1/2.0
CoAP
IoT Cloud
IoT Device
IoT Device
IoT Proxy (IoT Gateway)
12
IoT Device
2
3
Mobile & Client
3
Arch Pro
Arch Pro
Arch Pro
Seeeduino Cloud
Openmbed