像通用电气这样的公司可能会从飞机引擎、智能制造和医院卫生系统的角度来考虑物联网,但对我们许多人来说,物联网“东西”是一种更平凡的设备——就像一个带有现成传感器的树莓派(Raspberry Pi)或Arduino。如果您想要构建与这类设备通信的云应用程序,Amazon Web Services可以提供很多东西,不仅包括sdk和后端服务,还包括带有逐步说明的初学者工具包。
AWS物联网服务包括连接单板计算机(如an)所需的大部分内容Arduino或覆盆子π到亚马逊云。它也可以与实验室和工业仪器一起使用,以支持协议。通常情况下,你会将单板计算机本地连接到传感器和执行器上,这些传感器和执行器从被监视或控制的物理“物体”读取数据或对其进行操作。
如下面的图1所示,您可以在设备上安装AWS IoT设备SDK,以及由Amazon生成的证书和密钥。您通常使用MQTT消息与设备网关进行通信,并通过Wi-Fi将它们传输到本地网关和从本地网关传输出去。
在物联网后端服务中,你的信息会进入一个规则引擎,并更新设备的持久“影子”。应用程序通常与设备影子通信,因为设备本身可能具有间歇性连接。例如,如果你从授权的智能手机应用程序中为智能温控器设置了一个新的目标温度,即使温控器本身处于离线状态,它也会更新温控器的影子;一旦恒温器上线,物联网服务就会将新的设定值发送给它。
规则引擎可以转换消息,并将它们路由到设备映像和其他AWS服务(如an)AWSλ函数,或者DynamoDB数据库。除了这两个服务之外,您可能还会使用Amazon API网关、Amazon Kinesis、Amazon S3和Amazon Redshift。您可能还想使用Amazon Route 53为您的设备提供DNS服务。