OPC UA设备接入实践

本文介绍基于OPC UA协议的终端设备(以下统称设备)接入边缘一体机,并与云端交互的方法。

前提条件

步骤一:搭建OPC UA Server

OPC UA Server的环境依赖如下表格所示:

依赖组件

版本要求

安装命令

python

≥ 3.5.2

pip

≥ 9.0.1

opcua

≥ 0.98.3

pip install opcua==0.98.3

本文以OPC UA Server模拟一个LED灯设备,该设备具有温度(temperature)属性,高温报警(high_temperature)事件。请根据以下步骤,完成OPC UA Server的搭建。

  1. 下载OPC UA Server。

    wget http://iotedge-web.oss-cn-shanghai.aliyuncs.com/public/driverSample/opcua_simulation_server.tar.gz
  2. 启动OPC UA Server。

    tar -zxvf opcua_simulation_server.tar.gz
    cd opcua_simulation_server && chmod +x opcua_simulation_server.sh && ./opcua_simulation_server.sh

步骤二:安装OPC UA客户端

本文使用物联网边缘计算提供的官方OPC UA驱动接入OPC UA设备。在设备接入过程中的设备配置操作,需要借助OPC UA客户端作为辅助工具,获取OPC UA Server模拟设备信息,用于在控制台创建产品和配置驱动时使用。

本示例使用OPC UA客户端UaExpert工具。

  1. 下载并安装OPC UA客户端UaExpert工具。具体操作,请参见Unified Automation UaExpert工具文档

  2. 安装完成后打开UaExpert工具。

    UaExpert工具

  3. 在工具栏中单击新版-opcua工具+图标图标,新增OPC UA Server。

    新增OPC UA Server

  4. 填写OPC UA Server的URL地址,建立与OPC UA Server的连接。URL为OPC UA Server所在主机的IP地址:端口号

    说明

    OPC UA Server示例中默认监听端口为4840,因此OPC UA Server的URL地址格式示例如下:

    opc.tcp://192.168.1.1:4840

    opcua server连接url

  5. 配置完成URL地址后单击OK,显示设备信息。

    opcua设备信息

    设备信息包括以下内容:

    • 设备描述信息(图示中①)

    • 设备引用信息(图示中②)

步骤三:创建基于OPC UA协议的设备

  1. 登录物联网平台控制台

  2. 创建节点类型网关子设备接入网关协议OPC UA的产品。具体操作,请参见创建产品

    创建opcua产品

    其中,部分参数设置如下:

    参数

    描述

    所属品类

    选择标准品类下的边缘计算 > 其他设备

    节点类型

    选择网关子设备

    接入网关协议

    选择OPC UA

  3. 创建产品完成后,在产品详情页为OPC UA产品添加如下自定义功能,然后发布上线自定义功能。具体操作,请参见单个添加物模型

    • 添加属性

      1. 根据下图所示,设置属性参数。

        添加属性-1

      2. 设置参数完成后,单击新增扩展描述,配置节点名称。

        添加属性-2

        节点名称:设备在OPC UA Server中的变量节点DisplayName的值。

        设备的DisplayName

    • 添加服务

      1. 根据下图所示,设置服务参数。

        添加服务-1

      2. 单击输入参数下的增加参数,为产品服务新增参数。

        添加服务-2

      3. 设置参数完成后,单击新增扩展描述,配置节点名称。

        添加服务-3

        节点名称:设备method在OPC UA Server中的变量节点DisplayName的值。

        method的DisplayName

    • 添加事件

      1. 根据下图所示,设置事件参数。

        添加事件-1

      2. 单击输出参数下的增加参数,为产品事件新增参数。

        添加事件-2

      3. 设置参数完成后,单击新增扩展描述,配置节点名称。

        添加事件-3

        节点名称:设备事件在OPC UA Server中的变量节点DisplayName的值。

        high_temperature的DisplayName

  4. 为OPC UA产品添加设备。具体操作,请参见单个创建设备

    添加设备

步骤四:配置终端设备

  1. 登录边缘计算控制台

  2. 在左侧导航栏选择节点管理 > 终端设备管理

  3. 终端设备管理页面中,找到前提条件中激活的主机,选择通用设备 > +驱动

  4. 分配官方OPC UA驱动到主机中。

    opcua驱动

  5. 选择OPCUA驱动,单击设备列表区域框中的驱动配置,在弹出面板中单击添加通道,设置通道参数。

    新版-opcua驱动添加通道

    部分参数说明如下所示。更多信息,请参见添加OPC UA协议设备

    参数

    描述

    配置举例

    通道名称

    OPC UA通道名称。

    opcua_server

    通道地址

    OPC UA Server的URL地址。

    opc.tcp://192.168.1.1:4840

    用户名

    OPC UA Server连接用户名。

    demo

    密码

    OPC UA Server连接密码。

    abc123

    方法调用超时时间

    请求调用OPC UA Server的调用超时时间,单位为秒。

    10

  6. 单击设备列表区域框中的添加设备,为OPC UA驱动关联已创建好的OPC UA产品和设备,然后单击确定

    说明

    设备名称下,需要您手动输入已创建的设备名称。

    新版-为opcua驱动关联终端设备

  7. 分配设备成功后,单击设备名称右侧的设备配置

    根据参数说明配置参数后,单击确定

    新版-opcua驱动设备配置

    参数

    描述

    关联通道

    选择已添加的通道。

    节点路径

    设备在OPC UA Server中,从Objects开始到设备节点的绝对路径。例如demo_led设备在OPC UA Server中的路径为Objects/demo_led

  8. 节点管理页面主机管理页签下,单击主机列表中操作栏中的主机部署,部署边缘一体机及其关联的所有资源。

    主机部署

  9. 终端设备管理页签下,选择OPCUA驱动,查看设备状态显示为在线,表示已部署成功。

至此,您已完成OPC UA设备接入实践。