SmartThings物联网平台简介
SmartThings是一个智能设备控制系统,它包括:SmartThings Cloud(云平台)、SmartThings Hub(网关)、SmartThings Mobile(手机客户端)以及各种关联的设备或服务。
假设我们有这样一个控制场景:当大门打开,则开启客厅的电灯,并向主人发送一条短信。如何实现这一控制呢?首先我们需要一个开关传感器,当大门被打开的时候,传感器感应并将事件上报到平台,平台收到这一事件报告之后,控制客厅电灯的开关打开,同时通过短信服务发送一条短信息。
当然,诸如传感器、电灯开关这些设备可能没有网络接口,无法直接与平台通信,这时就需要网关作为中转站。网关负责将传感器的状态改变抽象成一种事件,上报给云平台,然后接收并执行云平台下发的指令。网关并不是必须的,如果一个智能设备具有网络接口并支持SmartThings的通信协议,完全可以跳过网关直接与云平台通信。
SmartThings的应用逻辑是在云平台中实现的,也就是说“如果...那么...”这样的控制逻辑不是在手机客户端、网关、传感器上处理,而是在云平台中根据预先设定的条件和逻辑实施控制的。为什么这样做呢?SmartThings认为,“设备”与“智能”应该是分开的,也就是说作为传感器不要求它具有高智能,它只要负责检测,而通信部分交由网关完成。在云平台中,各种传感器事件和设备操作被抽象成标准的接口,例如Event.ContactSensor.opened表示开关传感器的打开事件。SmartThings认为把控制逻辑放到云平台的好处之一,是应用开发人员无需关注具体的硬件,也无需学习硬件相关的编程。我们来看看SmartThings官网上的一个具体例子:
def openedContactSensor(evt, settings) {
def light = settings.switch1
if(evt == Event.ContactSensor.opened) {
light.on()
}
}
这个例子实现了一个传感器与开关的关联控制逻辑。SmartThings甚至推出了基于浏览器的开发环境,开发人员可以直接在浏览器上开发和发布应用。
云平台不仅实现业务逻辑,对于最终用户而言它还是一个应用商店,开发者将物联网应用发布到云平台,最终用户通过手机客户端从平台下载他们需要的应用,再经过简单配置就可以使用了。还看上面的例子,“当大门打开,则开启客厅的灯,并发送短信”,当用户下载了这个控制逻辑之后,只需要在手机客户端中指定哪个是大门的传感器,哪个是客厅电灯的开关,以及自己的手机号码,这个控制逻辑就生效了。此外,手机客户端还帮助用户管理自己的网关、设备,以及呈现各种设备的状态和事件等。
SmartThings的体系架构分为展现层、智能层、抽象层、连接层和能力层,通过这五个层次的划分,建立了整合物联网硬件厂商、物联网应用开发商、互联网服务提供商以及最终用户的完整生态链。物联网产业正蓬勃发展,个人和企业都有机会在这个生态系统中找到属于自己的位置。
SmartThings层次架构图(引自官方网络)
参考资料:
- http://www.smartthings.com/#getting-started
- http://build.smartthings.com/smartapps-overview/
- http://build.smartthings.com/the-cloud-first-approach/
SmartThings物联网平台简介的更多相关文章
- Ninja Blocks物联网平台简介
Ninja Blocks是一个物联网控制平台,其平台架构包括硬件层.处理器层.软件层以及平台层,请看下图: 最底层是硬件层,包括传感器(Sensors)和驱动器(Actuators),例如温度传感器. ...
- 玩转OneNET物联网平台之简介
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 物联网全景动态图谱2.0|PaaS物联网平台汇总(上篇)
物联网智库 原创 物联网智库 整理发布 转载请注明来源和出处 ------ [导读] ------ 毫无疑问,2018年物联网对行业的深度变革才刚刚开启. 物联网产业链企业的质与量将进入全面爆 ...
- 国内物联网平台(3):QQ物联智能硬件开放平台
国内物联网平台(3)——QQ物联·智能硬件开放平台 马智 平台定位 将QQ帐号体系.好友关系链.QQ消息通道及音视频服务等核心能力提供给可穿戴设备.智能家居.智能车载.传统硬件等领域的合作伙伴,实现用 ...
- 国内物联网平台(5):机智云IoT物联网云服务平台及智能硬件自助开发平台
国内物联网平台(5)——机智云IoT物联网云服务平台及智能硬件自助开发平台 马智 平台定位 机智云平台是致力于物联网.智能硬件云服务的开放平台.平台提供了从定义产品.设备端开发调试.应用开发.产测.运 ...
- 玩转OneNET物联网平台之MQTT服务④ —— 远程控制LED(设备自注册)+ Android App控制
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 玩转OneNET物联网平台之MQTT服务③ —— 远程控制LED(设备自注册)
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 玩转OneNET物联网平台之HTTP服务① —— 模拟上传温度(TcpClient)
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 玩转OneNET物联网平台之MQTT服务② —— 远程控制LED
1.理论基础 参考博主线上博文: 玩转PubSubClient MQTT库 玩转OneNET物联网平台之简介 玩转OneNET物联网平台之MQTT服务① 2.远程控制LED 2.1 实验材料 ...
随机推荐
- mysql 基础语法
以下为自己学习mysql 的一些笔记,以方便查询 目录 一. ALTER的 语法 二. 表的完整性约束 三. 索引的操作(mysql 数据库支持至少 16 个索引) 四. 视图的操作 五. 触发器的操 ...
- sql联合查询多个表
SELECT hp_patient.name, hp_ptorders.DrugName, hp_ptorders.Dosage,hp_ptorders.DosageUnit FROM hp_pati ...
- nginx apache负载均衡测试
apache配置 (监听内网ip和端口) Listen 10.163.170.8:8001 Listen 10.163.170.8:8002 Listen 10.163.170.8:8003 < ...
- dojo对数组的处理函数,dojo.forEach、dojo.every、 dojo.some、 dojo.map等
转自:http://jiataodong.blog.163.com/blog/static/3490549220111024111943439/ 数组处理是 Ajax 应用开发中的常见操作.Dojo ...
- 多重背包问题:悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(HDU 2191)(二进制优化)
悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 HDU 2191 一道裸的多重背包问题: #include<iostream> #include<algorithm> #i ...
- 使用javamail发送邮件错误:550 5.7.1 Unable to relay
这两天由于客户的邮件服务器迁移,使用了NTLM的验证方式.系统使用javamailAPI进行发送邮件时,发现只能对内部邮箱进行发送,对外部邮箱进行发送的时候,报下图错误: 后面发现是由于系统的java ...
- blob及行外数据
本文中我们假设innodb_page_size为16k,记录格式为compact. 1 大字段 大字段的类型可以参看这里, Data Type Storage Required TINYBLOB, T ...
- Javascript中new Date的坑
在一段判断是否过期的js代码中是这么写的: if (new Date() < new Date(2014, 9, 25)) { //... } 后来发现过了9月25日竟然不过期,console. ...
- 第十八章:Android 打包部署
Andriod应用程序如果要在手机或模拟器上安装,必须要有签名! 1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序, ...
- [游戏学习25] MFC 橡皮筋画线效果
>_<:这是给出窗口内外不同情况的处理展示的例子. >_<:MouseCap.h #include<afxwin.h> class CMyApp :public C ...