什么是低功耗IoT边缘设备的“嵌入式代理”?


14

问题:与低功耗的物联网(IoT)边缘设备有关的“嵌入式代理”背后的重要设计是什么?

某些IoT云服务供应商一直提到在基于传感器的边缘设备上安装嵌入式代理。它似乎是专有软件,供应商将其安装在连接到云的每台设备上。下面是两个有关Agent的软件堆栈图像。软件堆栈的一部分位于微控制器中。

物联网代理-1

物联网代理

这里也是非常广泛的解释Thingworx博客

代理是在IoT设备上或附近运行的嵌入式程序,并报告某些资产或环境的状态。物联网应用程序中始终存在一些代理。通常,代理从传感器或资产的本地连接中读取状态,应用有关发件人必须多久汇总一次信息的一些规则或逻辑,然后通过长途通信网络将信息发送到服务器。该过程也可以反向进行。

我以为该代理包含连接信息,例如IP地址,服务器名称,SSID类型信息以帮助连接。这些嵌入式代理是否具有提供连接性之外的其他功能?

参考文献:


请给我有关物联网架构的参考(第二张图片)?谢谢
BiG_TooTh

Answers:


13

一般来说,代理是一个“双向”软件。即,它设备读取参数并将其传达云甚至网关。OEM通常会控制库,以开发软件来控制设备的参数。鉴于OEM可以选择任何流行的通信协议(MQTT,HTTP等)来发布读取的值。通常,这两者的集成是系统集成器进入的空间。

例如,某个代理可以在Windows桌面上运行,以每5秒读取一次风扇的转速。然后,该值通过约定的协议传送到云平台。

Paho MQTT(Python)网站上的示例代码:

mqttc.connect("iot.eclipse.org")
mqttc.loop_start()

while True:
    temperature = sensor.blocking_read()
    mqttc.publish("paho/temperature", temperature)

上面的代码片段大致是一个代理,因为功能形式为“从设备”部分,而形式为sensor.blocking_read()“至云”部分mqttc.publish()

高级代理将具有处理脱机存储的机制,对与云的通信的TLS支持,优雅地响应来自云的任何更新(包括重新启动,如果需要)等,并且,在此问题的特定情况下,代理将处理功率限制太。例如,响应设备级别的触发,例如睡眠,唤醒等。


这是双向的有趣定义。如果仅读取和报告,则不会将其称为双向传感器。我想说它必须能够接收至少一种双向消息。读取风扇速度是其存在的内在理由,而非沟通。
Helmar

我不明白您在这里使用“双向”。代理是代表服务器运行的设备上的软件(在此情况下)。它不一定与服务器通信(尽管这是一个非常常见的用例)。例如,它可能仅用于设置配置参数或下载更新。
吉尔斯(Gilles)'所以别再邪恶了'
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.