onem2m - 是什么让传感器成为 AE 或容器?

标签 onem2m

我们正在尝试实现 onem2m 规范,但我们有一些误解什么使传感器成为 AE 或容器?

例如,我有一个 ardunio 板,我在上面连接了 10 个简单的 LED。然后我对两个选择感到困惑。 第一个是我有一个 AE (Ardunio) 和每个 LED 10 个容器 (LED)。 另一个是我有一个 AE (Ardunio),它是另外 10 个 AE (LED) 的父级,这些 AE 有自己的容器。

那么是什么让资源成为 AE 或容器呢?我应该考虑什么来做出这个决定?

最佳答案

也许当您查看oneM2M设备的总体架构时,oneM2M资源结构更容易理解。您的 Arduino 很可能不托管 CSE,因此它可能是连接到远程 CSE 的应用程序专用节点 (ADN)。

应用程序是此处的关键字:您的 Arduino 托管一个应用程序,例如读取和处理一些传感器数据。它实现该设备的功能逻辑。因此,用 oneM2M 术语来说,该应用程序是一个应用程序实体 (AE)。在oneM2M中,AE具有某些属性,例如应用程序ID等。它还拥有连接到远程CSE并访问该远程CSE上的资源的访问权限。

AE 也是该 AE 管理的实际数据和数据结构的根。此结构可以从容器构建。一种常见的方法是为每个传感器及其数据使用一个容器,例如温度容器气压容器等。也可以在其中包含容器如果您想进一步构造数据,则可以使用容器。

实际的传感器数据在这些容器内进行管理。这些数据实体称为ContentInstances。您通常只将 ContentInstance 添加到容器中,但绝不会单独删除或更新它们。通过这种方式,您可以获得数据值的一小部分历史记录。这种行为(例如,该历史记录应该持续多长时间)是容器的属性,可以单独设置。容器提供两个特殊的数据点,最新 (la) 和最旧 (ol),它们分别允许您方便地访问容器中最新或最旧的存储值。

请注意,一台设备也可能托管多个 AE。 AE是一个抽象的概念。您的 Arduino 应用程序实际上可能实现两个 AE:一个用于存储传感器数据,另一个用于从 CSE 读取数据,例如在 Arduino 上设置操作参数。

另请注意,如果您想表示实际的硬件设备,则存在一个节点资源(节点是 oneM2M 中连接设备的术语,如“ADN”中的“N”) ”上面解释过)。在这里,您可以创建代表设备的子结构,获取有关固件、电池状态、网络信息等的信息,以及有关设备上托管的 AE 的信息。节点作为AE,位于CSE的根部。

我希望这可以帮助您构建应用程序的资源树。

更新

下图直观地展示了该资源树。

CSEBase ─┬─ AE ─┬─ Container ─┬─ ContentInstance   ◀═══ oldest  
         │      │             │                                 
         │      │             ├─ ContentInstance                
         │      │             │                                 
         │      │             ├── ...                           
         │      │             │                                 
         │      │             └─ ContentInstance   ◀═══ latest  
         │      │                                               
         │      └─ Container ─┬─ Container ─┬─ ContentInstance  
         │                    │             │                   
         │                    │             └─ ...              
         │                    │                                 
         │                    └─ Container ─┬─ ContentInstance  
         │                                  │                   
         │                                  └─ ...              
         │                                                      
         ├─ AE ─── ...                                          
         │                                                      
         └─ Node ─── ...                                                               

关于onem2m - 是什么让传感器成为 AE 或容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54239131/

相关文章:

onem2m - 为什么我们需要语义描述符?

onem2m - 使用 timeSeries 相对于容器资源的优势

onem2m - 一个 M2M 中的 FlexContainer、Container 和 SDT

node.js - node.js 中的 OneM2M coap 客户端

onem2m - 通过 MQTT 聚合多个订阅者的通知

java - om2m 问题...无法启动 om2m 平台

iot - om2m 和 onem2m 有什么区别