连接协议-OPC UA Client

更新时间:2018-10-13 17:54:34

一、框图

opcua driver:LinkEdge中负责连接opcua server,数据转换的模块

config:驱动配置信息,包含连接的server信息和设备信息,保存在配置中心,详见第二部分介绍

tsl:产品物模型描述信息,部分信息为opcua特有,保存在配置中心,详见第三部分介绍

二、config:

{

"DriverConfig":{

/******控制台需要自行录入部分******/

"ServerList":[ //----------------------------opcua服务器列表

{

"serverId":0, //------------------------服务器索引,由0顺序递增,用来设备与服务器关联

"url": "opc.tcp://localhost:4840", //---服务器连接地址

"userName": "", //----------------------登录用户名,如果没有账户和密码,填空字符串

"password": "", //----------------------账户密码,如果没有账户和密码,填空字符串

"secPolicy":"None",

"secMode":"None",

"certificate":"",

"privateKey":"",

"timeout":5 //--------------------------方法调用超时时间

}]

/********************************/

},

"DeviceList": [

{

"ProductKey":"",

"DeviceName":"",

"DeviceConfig":{

/****控制台需要自行录入部分****/

"serverId":0, //-----------------服务器索引,用来设备与服务器关联

"displayName":"" //-----------------设备节点的displayName

/****************************/

}

},

{

"ProductKey":"",

"DeviceName":"",

"DeviceConfig":{

/****控制台需要自行录入部分****/

"serverId":0, //-----------------服务器索引,用来设备与服务器关联

"displayName":"Objects" //-------设备节点的displayName

/****************************/

}

}]

}

三、TSL

{

"profile":{

"productKey": "0LAIGKYmweU"

},

"properties":

[

{

"identifier" : "battery",

"accessMode" : "r",

"dataType":{

"type" : "int",

"specs":{

"max":"100",

"min":"0",

"unit":"%"

}

},

"desc" : "电池电量",

"displayName":"Battery01" /****opcua特有:节点的displayName****/

},

{

"identifier" : "state",

"accessMode" : "r",

"dataType":{

"type" : "enum",

"specs":{

"0":"正常锁门",

"2":"门没有上锁",

"3":"门内反锁"

}

},

"desc" : "门状态",

"displayName":"DoorState" /****opcua特有:节点的displayName****/

}

],

"events":

[

{

"identifier" : "action",

"type" : "info",

"outputData":

[

{

"identifier" : "user_type",

"dataType":{

"type":"enum",

"specs":{

"0":"密码用户",

"1":"无线用户",

"3":"卡用户",

"4":"指纹用户"

}

},

"index":0 /****opcua特有:参数索引,在该事件下的序列编号****/

},

{

"identifier" : "state",

"dataType":{

"type":"enum",

"specs":{

"1":"锁门",

"2":"开门"

}

},

"index":1 /****opcua特有:参数索引,在该事件下的序列编号****/

}

],

"desc" : "门操作",

"displayName":"Action" /****opcua特有:节点的displayName****/

}

],

"services":

[

{

"identifier" : "get",

"inputData":

[

"ieee_addr",

"battery",

"state"

],

"outputData":

[

{

"identifier" : "battery",

"dataType":{

"type" : "int",

"specs":{

"max":"100",

"min":"0",

"unit":"%"

}

},

"desc" : "电池电量",

"displayName":"Battery01" /****opcua特有:节点的displayName****/

},

{

"identifier" : "state",

"dataType":{

"type" : "enum",

"specs":{

"0":"正常锁门",

"2":"门没有上锁",

"3":"门内反锁"

}

},

"desc" : "门状态",

"displayName":"DoorState" /****opcua特有:节点的displayName****/

}

],

"desc" : "获取属性"

},

{

"identifier" : "control",

"inputData":[

{

"identifier" : "action",

"dataType":{

"type":"enum",

"specs":{

"0":"close",

"1":"open"

}

},

"index":0 /****opcua特有:参数索引,在该方法下的序列编号****/

}

],

"outputData":[

],

"desc" : "门操作",

"displayName":"control" /****opcua特有:节点的displayName****/

}

]

}

四、部署步骤

导入设备三元组到配置中心

导入config到配置中心

导入tsl到配置中心

执行startOpcua.sh

opcuaclient 文档_连接协议-OPC UA Client相关推荐

  1. api数据接口文档_接口文档示例(Taobao/jd/pinduoduo/开放接口调用)

    api数据接口文档_接口文档示例 本文主要是提供了一个接口文档的范文,内容修订历史.目录.时序图.接口要素描述.接口说明.使用示例.字典.FAQ.  使用MD格式文档(makedown),选择原因,容 ...

  2. opc ua 用哪种语言编写_通俗讲解OPC UA 之通俗入门篇

    这是一篇通俗讲解OPC UA的入门篇 为什么要通俗的讲呢,主要是怕自己讲的自己看不懂,会尴尬. 比这更尴尬的是,自己写的没看懂,你们却看懂了. OPC UA内容过于深奥,笔者最近研究,说不上研究,只能 ...

  3. 对接接口文档_接口自动化测试框架设计思路

    接口自动化测试--框架设计思路 1 前言 之前文章跟大家分享了一下自己在接口自动化测试中进行测试准备的一些相关知识点,接下来本篇文章详细分享一下接口自动化框架设计的思路总结,希望能对初次探索接口自动化 ...

  4. 计算机网络校园局域网课题,毕业论文基于VLAN技术的校园局域网建设word文档_全文免费在线阅读(推荐阅读)...

    <[毕业论文]基于VLAN技术的校园局域网建设.doc>由会员分享,可免费在线阅读全文,更多与<[毕业论文]基于VLAN技术的校园局域网建设(word文档)_全文免费在线阅读> ...

  5. Java实现OPC UA Client直接与PLC通讯

    文章目录 前言 一.Java实现OPC UA Client 二.代码展示 1.maven依赖 2.Client实现类 3.KeyStoreLoader实现类(实际没用到) 4.PLC数据操作类(浏览节 ...

  6. iFIX 6.1新功能之 - OPC UA Client Driver

    从iFIX 6.1开始支持OPC UA Client Driver I/O驱动器(简称"OUA"驱动),通过OUA驱动可以连接到OPC UA Server,读/写数据. OPC 统 ...

  7. 谷歌pay服务端文档_米大师服务端说明

    1.后台接口说明 1.支付后台接口API 1.1 API 1.1.1 查询余额接口 (1)URL地址 [现网]https:// ysdk.qq.com/mpay/get_balance_m [沙箱]h ...

  8. Ubuntu完全使用文档_我是亲民_新浪博客

    Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音.了解发音是有意义的,您不是第一个为此困惑的人,当然,也不会是最后一个:) 大多数的美国人读 ubun ...

  9. 谷歌pay服务端文档_腾讯米大师支付服务器端接入流程

    腾讯开放平台的接入是非常麻烦的,文档各种不清不楚的,有些东西文档根本没有写,如果不跟腾讯的技术人员对接的话,你都可能做不出来.虽然他们也没有帮到什么 申请过程就不赘述(申请过程很蛋疼),直接开始接入. ...

最新文章

  1. 【线性筛】【质因数分解】【约数个数定理】hdu6069 Counting Divisors
  2. PHPCMS 模板的设置
  3. Objectc 基础类型
  4. 为什么我从Mac切换到Linux
  5. Linux shell 字符串转数字进行运算符操作
  6. 内存泄露valgrind
  7. 【计算机图形学02】b-spline(b-样条曲线)
  8. Linux ERROR: configuration failed for package ‘rgeos’
  9. 计算机为什么找不到网络打印机,电脑找不到网络打印机怎么办
  10. 关于字体的px和pt
  11. matlab代码:基于主从博弈的智能小区代理商定价策略及电动汽车充电管理
  12. mysql数据库反弹端口连接提权
  13. 【ERROR】Unable to open underlying table which is differently defined or of non-MyISAM type or ...
  14. 大中型企业九种资金管理模式
  15. 铁死亡(Ferroptosis )最新研究进展(2022年)
  16. 电脑win10无法自动修复此计算机,如何解决Win10自动修复无法修复你的电脑?
  17. oracle ebcdic 转换,使用sqlldr导入EBCDIC格式数据并新增Oracle字符集
  18. Spring Security4 CSRF 如何关闭CSRF功能
  19. ContentProvider理解
  20. 接口和抽象类的区别是什么?抽象类必须要有抽象方法吗?抽象类能使用 final 修饰吗?

热门文章

  1. Linux配置Java,kafka,Hadoop等环境变量
  2. 利用宝塔linux面板+苹果CMS-----从0搭建一个电影网站(一)
  3. 详细介绍Python中的“魔术方法“__XXX___; 概述__str__()方法;__new__()方法; 三. __ new__ 和__init__的区别
  4. Python正则表达式 re.sub()函数:标志位flags与参数个数问题
  5. linux下c 多线程如何映射文件夹,c - 在Linux中使用多个线程进行信号处理
  6. java 命令行 读取文件_java读取txt文件
  7. mysql语句的执行顺序_SQL语句完整的执行顺序(02)
  8. Linux怎么查看并杀死被占用的端口?
  9. Python 程序扩展名(py, pyc, pyw, pyo, pyd) 及发布程序时的选择
  10. python sklearn.learning_curve 什么是学习曲线?