我正在做一个项目,在一个区域中安装温度传感器的100+节点,所有这些节点都执行相同的功能。他们发布的数据是传感器id和读数。我使用AWS-IOT作为后端。
现在,要做到这一点,我认为我需要在aws-iot中为每个节点创建1个'thing‘,我认为这是非常难以维护和不可扩展的。
所以我的问题是,如何将多个节点连接到AWS-IOT中的相同“东西”,从而使集群易于管理。有没有其他有效管理集群的方法?欢迎任何意见。谢谢。
发布于 2017-05-12 04:12:20
面对类似的困境和在亚马逊网络服务IoT管理控制台上创建太多“东西”的不切实际;我做了一些研究,发现亚马逊网络服务强烈反对将多个设备连接到同一“东西”。
无论如何,使用相同的MQTT id的两个不同的节点连接到相同的东西是不可能的(具有相同id的最后一个连接的节点踢出之前连接的节点),尽管您可以在一些代码的帮助下使用您的客户端ID。
我了解到,实际上你不需要一个‘东西’来连接到亚马逊IoT,只需要一个证书就可以了;而且你可以通过代码在亚马逊IoT服务上创建元素。
所以,总而言之,面对一个类似的问题,我在下面遇到了这个信息,发现它对我的情况很有用,并在这里分享它。https://forums.aws.amazon.com/thread.jspa?threadID=234102
发布于 2016-06-25 00:23:15
要做到这一点,唯一的方法似乎是创建自己的网关,在将数据发送到亚马逊IoT之前将其聚合起来。不能有多个具有相同客户端ID的MQTT连接。
使用API自动为节点分配证书和私钥。传感器ID可以用作事物名称和MQTT客户端ID。它需要预先做一些工作,但之后您可以利用亚马逊网络服务IoT进行所有的内务工作。
发布于 2017-05-01 16:56:10
您可以对多个clientId使用相同的东西。您可以使用传感器id作为clientId。
https://stackoverflow.com/questions/37576646
复制相似问题