Samsung Artik Cloud:快速入门指南

物联网平台的主题现在正处于“炒作”浪潮,这一趋势已由主要技术趋势的Gartner曲线证实:自2016年以来,图表上的“物联网平台”已取代了“物联网”。


今天,我们将讨论三星提供的产品,首先是三星Artik Cloud。

内容:

  • 具有三星Artik Cloud作为物联网平台的功能。
  • 在实践中学习与Artik Cloud合作:
    • 创建一个新的设备类型,
    • 数据模拟
    • 使用REST API从云中检索数据。


三星Artik Cloud作为物联网平台的功能


通常,在物联网的平台下,他们了解一些由多个组件组成的现成的集成解决方案,有助于加速将IoT产品推向市场的过程。

理想情况下,哪些组件应该具有这样的平台? 根据IoT Analytics文章“有关IoT平台生态系统的五件事”的作者,该平台应包含8个功能组件:

标签 1。


目前,并非所有物联网平台都具有这些组件。 通常,将重点放在其中的一些上:例如,Amazon AWS不是创建设备的永久虚拟Shadow的普通数据库,IBM Bluemix可以使用Watson分析服务,并且在PTC ThingWorx中,您可以轻松创建图形界面应用程序。

2016年,三星推出了Artik系列,该系列目前包括:

  • 软件平台-Artik Cloud-此材料专用于此,

  • 硬件平台-Artik微型计算机。


有趣的一点:三星以单一名称同时发布了软件平台和硬件解决方案,并且发布了不同级别的内容:从最小的,计算能力较弱的Artik 0到功能强大且高效的Artik 7。

另一个有趣的观点:最近,在2017年,三星宣布以通用名称SmartThings Cloud统一了几种技术:Samsung Connect(智能家居的专用路由器),SmartThings(家居自动化解决方案)和Artik系列。 在这种情况下,将保存所有现有功能。

该产品的官方网站位于此处

如果从功能组件列表的角度考虑Samsung Artik Cloud(请参阅表1),则会得到以下信息:

表2


在关键组件中,当前没有分析和机器学习组件。 但是今年,三星宣布在全球范围内开设了另外四个新的人工智能科学中心。 因此,我们有充分的理由相信这方面的工作已包含在公司的战略计划中。

好处


价格合理


这里的一切都很简单。 您每月最多可以免费发送100,000条消息。 与其他类似服务不同,您不需要在使用银行卡之前先附加银行卡。 完全不需要您。 仅当您决定在每天和每月的消息数量至关重要的真实任务中使用Artik Cloud时,才需要付费-在这种情况下,一百万条消息的成本为15美元。

这就是Artik Cloud非常适合教学生的原因:如果仅在课堂上使用它,配额用尽的机会就很小。

几种不同的API


目前,您可以同时通过四种方式与Artik Cloud进行交互:

  • REST API
  • 网络套接字
  • MQTT
  • 盖普

值得注意的是同时支持两种协议,这两种协议在物联网中得到了广泛使用:MQTT和CoAP。

局限性


Beta阶段


Artik Cloud仍然是一个年轻产品(它于2016年出现)。 某些功能仍处于测试阶段。 例如,在设备模拟器中,不能使用多个设备。

不完整的文件


文档在不断发展。 例如,现在REST API的文档非常齐全,并且MQTT API的文档需要改进。

在实践中学习与Artik Cloud合作


现在,我们建议您创建一个虚拟设备-GPS跟踪器,它将生成随机数据。 然后,我们将从计算机访问此数据。

开立账户


让我们转到网站https://my.artik.cloud/


有几种注册选项。 最简单的方法是使用现有的Google帐户。 垃圾邮件将不会发送! 经过个人经验验证。



创建新的设备类型


您将被带到用户页面https://artik.cloud/

在这里,您可以将设备添加到系统,查看日志,设置交互规则。 现在,几乎无法执行任何操作,因为我们所需的设备和传感器不在建议的选项之列。 直接转到开发人员页面: https : //developer.artik.cloud/



创建一个新的设备类型。



接下来,您需要提供一个名称和一个唯一的标识符-如果以后您想与社区共享您的虚拟设备,则将需要它。



系统将提示您创建一个“清单”,在其中定义设备字段。



您将在第一个选项卡上看到清单创建窗口:设备字段。 由于我们以GPS跟踪器为例,因此创建两个纬度和经度字段。 我称它们为“ 纬度”和“经度”。



您可以设置:

  • 字段名称(在我们的示例中为latlong ),
  • 单位(已经有标准单位)。

单击下一步按钮。 在此示例中,无需指定“设备操作”,因此在此之后立即继续激活清单。

设备创建


现在,您可以通过返回https://my.artik.cloud来创建一种新型的设备。 点击+添加其他设备...



设备仿真


让我们尝试一个有趣的功能-数据模拟。 这对于测试很有用。

在指示设备的矩形上,单击“ ...”,然后单击“模拟设备数据”。



将出现一个窗口,您可以在其中设置每个字段的模拟参数。 例如,值,边界,分布(在我们的情况下是随机的)的输出间隔。



之后,您可以单击“开始模拟”按钮。



数据开始出现。 您可以在图表上看到它们。 为此,请在顶部菜单中打开“图表”选项卡。



您将实时看到指定范围内的经度和纬度值:



此时间表使用起来非常方便。 它可以缩放,扭转历史记录,更改图表类型。 如屏幕截图所示,您还可以制作条形图和圆点图:



如果要查看元数据,可以使用“数据日志”选项卡。 在这里,您将看到生成日期,接收日期和数据的内部表示形式-这是熟悉的JSON格式。



从云端接收数据


让我们尝试将模拟数据移出云。 我们将使用REST API-这是合乎逻辑的,因为我们将编写代码来接收JavaScript中的数据。

单击菜单中的设备名称。



在打开的窗口中,您将看到各种设备密钥,其中两个很重要:设备ID和设备令牌。 从外部访问时,这些键用作登录名和密码。 您很快就会需要它们。



我怎么知道要发送哪个请求? 为此,有一个非常方便的开发人员工具-API控制台 。 它使您可以观看和学习各种API请求的示例。 让我们看一下GET(获取最后的标准化消息)请求:



为了满足这样的要求,必须指定我们要引用的设备( sdids-在这里我们需要替换在上一步中获得的设备标识符),我们感兴趣的字段( fieldPresense )以及我们想要获取多少个值( count )。

填写字段,然后单击“尝试”! 您将收到足以提出请求的信息:



  • 呼叫是将请求发送到的地址,
  • 请求标头-与请求一起发送的标头,
  • 200-响应码。


JavaScript代码


这是一个JavaScript代码示例,它将从云中接收消息并显示出来。

varxmlhttp=newXMLHttpRequest(); varcall = "https://api.artik.cloud/v1.1/messages/last?count=1&fieldPresence=lat&sdids=084d34b198d84f1688b3b7b3fe420fcf"; xmlhttp.open('GET',call,true); xmlhttp.setRequestHeader("Content-Type","application/json"); xmlhttp.setRequestHeader("Authorization","Bearer fc851ddb484842788daa19569b326951"); xmlhttp.onreadystatechange=function(){ if(xmlhttp.status==200){ alert(xmlhttp.responseText); } }; 

当然,需要使用在最后一步中获得的varcall行和Bearer授权参数替换为您自己的参数。

此代码在Mozilla浏览器中的结果:



这是一个JSON字符串,其中包括必需的纬度经度坐标。 它仅保留使用JSON解析器解析字符串,您就拥有了数据!

根据此示例,您可以使用Yandex.Maps API轻松标记地理地图。



结论


那么我们实施了什么呢? 一个简单的示例:在云中创建设备,模拟其数据并在计算机上接收此数据。

括号之外是:

  • 通过REST API将数据发送到云,
  • 通过其他接口(例如MQTT)与云进行交互,
  • 操作(设备操作),
  • 规则(规则引擎)。

那些有兴趣继续的人,可以使用官方文档独立研究这些问题。

作者:Tatyana Volkova

三星研究中心员工

物联网学院三星项目课程的经理和作者

Source: https://habr.com/ru/post/zh-CN410843/


All Articles