admin 发表于 2020-6-17 10:07:59

CODESYS中使用OPC UA服务器

OPC统一架构(UA)于2008年发布,是一种与平台无关的面向服务的体系结构,将各个OPC Classic规范的所有功能集成到一个可扩展的框架中。传统的OPC技术在控制级别很好地解决了硬件设备间的互通性问题,在企业层面的通信标准化是同样需要的。OPCUA之前的访问规范都是基于微软的COM/DCOM技术,这会给新增层面的通信带来不可根除的弱点。OPCUA,是在传统OPC技术取得很大成功之后的又一个突破,让数据采集、信息模型化以及工厂底层与企业层面之间的通讯更加安全、可靠。OPCUA的几大优势:
[*]与平台无关,可在任何操作系统上运行
[*]为未来的先进系统做好准备,与保留系统继续兼容
[*]配置和维护更加方便
[*]基于服务的技术
[*]可见性增加
[*]通信范围更广
[*]通信性能提高
在CODESYS软甲中,集成了OPCUA服务器,可以支持用户通过OPCUA客户端访问CODESYS runtime中的数据。
在CODESYS中创建包含OPCUA服务器的工程
[*]在CODESYS中创建一个标准工程

[*]在PLC_PRG中编写程序,例如:声明部分:
PROGRAM PLC_PRGVAR   
   var1:INT;   
   var2:INT;   
   var3:INT;
END_VAR
实现部分:var3 := var1 + var2;
[*]在Application对象下添加符号配置对象

[*]在符号配置对话框中勾选“支持OPC UA特征”,单击“打开”

[*]编译程序,在符号配置对象中勾选需要添加到OPCUA服务器中的变量

[*]将程序下载到runtime
为CODESYS OPC UA服务器创建证书
[*]在CODESYS Store下载CODESYS Security Agent,链接:
https://store.codesys.com/cod...
[*]双击打开CODESYS Security Agent x.x.x.x.package, 安装CODESYS Security Agent
[*]重启CODESYS软件,打开右下角盾牌图标

[*]单击Devices选项卡

[*]单击刷新按钮,Information列出现Device对象

[*]单击Device对象,选择右边的OPCUA Server(not available)

[*]单击创建按钮,创建OPCUA Server证书

[*]创建完成,如下图所示

[*]重启runtime
使用UaExpert客户端通过加密连接访问OPCUA服务器
[*]启动UaExpert客户端
[*]在Server对象下添加服务器

[*]在Add Server对话框找到需要签名并加密的OPCUA服务器,单击OK

[*]连接服务器

[*]弹出不信任的证书对话框,单击信任服务器证书,再单击继续

[*]回到CODESYS软件,在Quarantined Certificates中出现UaExpert签发的证书,

[*]将其拖入Trusted Certificates

[*]现在可以使用UaExpert连接OPCUA服务器,访问服务器中的变量

[*]将变量拖入 Data Access View,可以读写变量值

[*]在CODESYS中可以监视变量变化

关联在CODESYS项目中创建的事件CODESYS OPC UA服务器提供了发送标准OPC UA事件的功能。
[*]在Application下方添加一个报警配置对象。

[*]在报警配置下面添加一个报警类对象,命名为Event

[*]在Event报警类的窗口中选择确认方式为REP。

[*]在报警配置下面添加一个报警组对象,命名为ApplicationEvent。

[*]在ApplicationEvent报警组更改以下参数:

[*]在库管理器中添加CmpOPCUAProviderAlarmConfiguration

[*]在PLC_PRG中添加调用AlarmManager.AlarmGlobals.g_AlarmHandler.RaiseEvent(Alm_AlarmConfiguration_Alarmgroup_IDs.ID_ApplicationEvent, Alm_ApplicationEvent_Alarm_IDs.ID_0);
[*]编译程序并下载到runtime
[*]打开UaExpert的Document--Add

[*]添加Event View

[*]将Application拖动到Event View的Configuration窗口,可以看到CODESYS的报警信息

beginner 发表于 2020-8-7 10:03:47

Codesys中OPCUA可以设置成账号密码访问吗?

askina 发表于 2020-9-3 13:47:22

3.5.4版本为什么没有这个选项

zdzk_hj 发表于 2020-10-27 14:01:42

楼主写的非常详细,谢谢。能否分享CODESYS Security Agent 这个软件?
页: [1]
查看完整版本: CODESYS中使用OPC UA服务器