常见问题


有关设备接入和 EnOS Edge 的常见问题如下。

问:为什么需要经常更新资源包?要求和流程是什么?

答:资源包包含了资产数据,(如站点信息和设备信息)、设备模型(如基本模型和子模型)、协议JAR文件、point.csv 文件、映射配置文件、和事件触发规则配置文件。对这些文件的任何修改(例如对设备属性的更改)都需要对资源包进行更新操作。通常,这些配置文件在实施阶段会经常变更,但在操作阶段将变得相对稳定(除了维护阶段的一些修改)。资源包更新的频率取决于项目需求。

资源包更新是基于 HTTP(S) 协议的。端口 80(HTTP)和端口 443(HTTPS)需要在云端和 Edge 端都打开。

如果资源包托管在FTP服务器上,则可以将其推送给用户。用户浏览资源包文件,然后将其复制到FTP服务器。Edge 将从 FTP 服务器获取资源包。

问:远程控制命令有什么要求?

答:远程控制命令是基于 TCP 协议的。端口 8043 和 8099 需要在云端打开。

问:通信调试和数据流监控的要求是什么?

答:通信调试和数据流监控是基于 TCP 协议的。端口 8043 和 8099 需要在云端打开。

配置中心中的 ping 和 telnet 命令以及数据流监控功能需要入站通信量。这些功能是可选的,并且被设计为能够在实施和维护阶段进行对设备进行调试和故障排查。

问:MQTT主题支持通配符吗?

答:是的,MQTT 主题支持如下通配符:

  • 多层通配符(#):XXX/level1/level2/# 支持接收 level2 层级以下所有目录的主题消息。
  • 单层通配符(+):XXX/level1/level2/+ 支持接收 level2 层级下一层目录的主题消息。

问:EnOS Cloud 可以订阅第三方的消息 broker 吗?

答:EnOS 上的应用可以订阅第三方的消息 broker。EnOS Cloud 暂不支持订阅第三方的 MQTT broker,但支持定制。

问:设备证书到期后怎么办?是否可以使用 OTA 进行设备证书的更新?

答:需要更新证书。更新是指使用原有证书的主体,申请一张有效期更新的证书。设备在原有证书到期前,仍然可以使用原有证书认证连接 EnOS。同时设备应当尽快使用更新后的证书连接 EnOS,在设备上更新证书可以根据实际设备情况更新,OTA 一般用于大范围升级固件,并不适合做证书的更新。

问:逻辑资产能否转化为设备资产?

答:逻辑资产无法转化为设备资产。你可以创建一个新的设备资产实例代替原逻辑资产,然后删除该逻辑资产实例。

问:OPC-UA 服务器应当在 EnOS 上注册为设备资产还是非设备资产?

答:需要根据场景来决定。对于设备资产,拥有三元组,可以通过三元组的方式连接 EnOS MQTT broker,并上报数据;如果是逻辑资产,则没有三元组,不能连接 Broker。在具体的应用场景中,如果 OPC-UA server 是一个逻辑资产,但是在本地有一些测点需要上报,也可以调用 openAPI 的方式来做测点上报(当然逻辑资产是没有类似在离线状态的)。

问:如果某设备在 OU 1 中被注册了,那么我还能在 OU 2 中使用该设备吗?

答:你可以跨 OU 订阅其数据。但是对于 OU 2 而言,该注册在 OU 1 的设备是不可见的。

问:EnOS OTA 功能升级的是网关设备的固件还是网关的 runtime engine?

答:设备可以通过 OTA 的功能,下载 OTA 文件,设备拿到 OTA 文件之后做什么由设备自行决定。比如 EnOS Edge 下载好文件之后,可以去更新 runtime engine,也可以自行升级固件。

问:EnOS MQTT 支持双向数据传输,这是否意味着 EnOS Edge 能够从 EnOS Cloud 订阅数据?如何配置 Edge?

答:EnOS Edge 可以通过 MQTT 订阅从 EnOS Cloud 订阅数据。无需额外配置,EnOS Edge 使用自己的 runtime engine 即可实现。如果是非 EnOS Edge 的网关设备,可以通过调用 EnOS device SDK 来实现。

问:实际操作中,如果设备无法更改固件或烧录三元组,怎么通过 MQTT 连接到 EnOS?

答:对于可编程的设备,采用静态激活,将 EnOS 的设备三元组存储在设备中。

对于可编程但是大批量生产的设备,一般采用动态激活,采用设备固有序列号作为 device key。例如,NB-IoT 设备,可以使用设备 IMEI 作为 device key。

对完全不可编程的设备,可以考虑通过 EnOS Edge 接入,在 EnOS Edge 上管理每个设备的三元组。这类设备也可以考虑通过与原有第三方云、SCADA 系统做云云对接。

问:TSDB 是如何存储模型的测点数据的?

答:TSDB 以模型测点的 ID 作为 key,来存储测点数据。在测点数据进入 TSDB 之后,禁止修改测点数据类型,也不能删除该测点或模型。

问:如何选择设备接入方案?

答:需要根据设备自身能力、业务场景和需求而定。详情参见设备接入协议选择

问:模型、产品、资产、资产树的基本信息的字段,是否有限制条件?

答:这些对象的基本信息字段有以下限制条件:

  • 模型名称、产品名称、资产名称、资产树名称:1-64 个字符。
  • Product key, device key:1-64 个字符,支持中文、英文、数字及短横线(-)、下划线(_)、英文句号(.)。
  • 模型描述、产品描述、资产描述、资产树描述:不超过 100 个字符。

问:如何将真正的设备连入EnOS并获取上报数据?

答:直连或者通过网关代理子设备的方式连接,支持 MQTT/HTTP/CoAP 的方式。流程:创建 device model,创建产品及注册设备。IoT Hub 提供 C/Java/Node.js/Python 标准设备 SDK,方便用户开发。

问:EnOS 的 Apps 和 APIs 可以开放给第三方开发公司吗?

答:IoT Hub 提供 open API,只要有 SA 账号,同时 OU 授权操作权限就可以。

问:如何关联 model,product,device,asset 等等?他们的继承关系是怎样的?

答:Model 是对于物的描述,有四要素:属性,测点,服务,事件。Product 是基于 model 来创建的,可以理解为一组 device。Asset 是资产,有 device asset 和 logical asset。Device asset 一般是指真实的设备,拥有设备三元组(pk,dk,ds),可以通过三元组做设备鉴权并连接 broker。Logical asset 是一种逻辑概念,可以是一个楼,也可以是一个组织,一般并没有实际的设备关联。


Device/logical asset 两者最直观的区别是 device asset 基于 product 创建,而 logical asset 基于 model。

问:Edge 和 device 有什么区别?

答:对于 Iot Hub,edge 和 device 都是设备,但是 edge 代表网关,可以在 edge 下挂载子设备,并在真实的设备连接时,edge 可以代理子设备上报数据和接收指令。

问:EnOS 产品对管理设备数量有限制吗?收费如何?

答:100K device(单 OU)可扩,收费按照 message 数量来收费,费用请联系 BD。

问:如何申请 EnOS 的存贮单元,比如 IMDB,TSDB,Archive?收费如何?

答: 文件存储服务,在资源管理中预申请,费用请联系BD。

Q:创建、更新、删除模型、产品、设备、逻辑资产、资产树等数据后,最新数据需要多长时间才能同步并显示在搜索结果中?

A:对于模型变更需要大约 10 秒,其余则需要大约 3 秒。