本文介绍如何将基于OPC UA协议的设备(以下统称设备)接入网关,并与物联网平台交互的方法。

前提条件

  • 仅支持使用Link IoT Edge专业版(LE Pro),实现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的搭建。该OPC UA Server模拟一个LED灯设备,该设备具有温度(temperature)属性,高温报警(high_temperature)事件。

  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 && ./opcua_simulation_server.sh

二、安装OPC UA客户端

使用OPC UA驱动接入OPC UA设备时需要完成设备配置操作,该操作需要借助OPC UA客户端作为辅助工具,获取OPC UA Server模拟设备信息,用于在控制台创建产品和配置驱动时使用。

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

  1. 下载并安装OPC UA客户端UaExpert工具。
  2. 安装完成后打开UaExpert工具。

    UaExpert工具
  3. 在工具栏中单击“+”图标,新增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

    填写OPC UA Server的URL地址
  5. 配置完成URL地址后单击OK,显示设备信息。

    设备信息显示

三、创建基于OPC UA协议的设备

  1. 参考创建产品,创建OPC UA产品。

    新建产品

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

    参数 描述
    所属分类 选择边缘计算 > 其他设备
    节点类型 选择设备
    是否接入网关 选择
    接入网关协议 选择OPC UA
  2. 参考单个添加物模型,在产品详情页,为OPC UA产品添加自定义功能。
    • 添加属性
      1. 根据下图所示,设置属性参数。
        设置属性
      2. 设置参数完成后,单击新增扩展描述,配置节点名称。
        设置扩展参数
        节点名称:设备在OPC UA Server中的变量节点DisplayName的值。
        OPC UA Server中的变量
    • 添加服务
      1. 根据下图所示,设置服务参数。
        设置服务
      2. 单击输入参数下的增加参数,为产品服务新增参数。
        新增服务扩展参数
        参数索引:设备method输入输出参数,在OPC UA Server中method定义的参数顺序。
        说明 参数索引不允许指定,根据创建参数个数自增。
      3. 设置参数完成后,单击新增扩展描述,配置节点名称。
        扩展描述

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


        OPC UA Server中的变量
    • 添加事件
      1. 根据下图所示,设置事件参数。
        设置事件
      2. 单击输出参数下的增加参数,为产品事件新增参数。
        设置事件输出参数
        参数索引:设备事件参数,在OPC UA Server中事件参数顺序。
        说明 参数索引不允许指定,根据创建参数个数自增。
      3. 设置参数完成后,单击新增扩展描述,配置节点名称。
        新增事件扩展描述

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


        OPC UA Server中的变量
  3. 参考单个创建设备,添加设备。

    添加设备

四、配置边缘实例

  1. 边缘实例页面找到前提条件中已创建的边缘实例,单击实例名称后的查看
  2. 分配OPC UA驱动到边缘实例中。

    分配驱动
  3. 选择OPCUA驱动,单击设备列表后的驱动配置,在弹出对话框中单击添加通道,设置通道参数。

    驱动配置
    表 1. 参数说明
    参数 描述 配置举例
    通道名称 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
  4. 单击分配子设备,在OPCUA驱动下为边缘实例分配子设备。

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

    设备配置
    表 2. 参数说明
    参数 描述
    关联通道 选择已添加的通道。
    节点路径 设备在OPC UA Server中,从Objects开始到设备节点的绝对路径。

    例如demo_led设备在OPC UA Server中的路径为Objects/demo_led

  6. 实例详情页面右上角单击部署,部署边缘实例。
  7. 实例详情页面设备驱动配置页签中,选择OPCUA驱动,查看设备是否在线。

    设备在线