# Runtime 系统, OPC UA Server

## OPC UA 服务器

MetaFacture的标准安装包括一个OPC UA服务器。您可以使用它通过客户端访问控制器的变量接口。OPC UA服务器通过单独的TCP连接与连接的OPC UA客户端进行通信。因此，必须再次单独检查这些连接的安全性。

现在，可以通过使用到客户端的加密通信和OPC UA用户管理来保护OPC UA服务器。有关这些设置，请参见以下各节。

MetaFacture OPC UA服务器支持以下功能：

- 浏览数据类型和变量
- 标准读/写服务
- 值更改通知：订阅和受监视的项目服务
- 根据“OPC UA标准（配置文件：Basic256SHA256)”
- 根据“IEC 61131-3的OPC UA信息模型”对IEC应用程序进行的映像
- 支持的配置文件：微型嵌入式设备服务器配置文件
- 默认情况下，会话，受监视项目和订阅的数量没有限制。该数量取决于相应平台的性能。
- 根据OPC UA标准发送事件。

### 创建用于OPC UA访问的工程

1.使用MetaFacture Control Win V3控制器创建一个新工程。

2.在PLC_PRG程序中声明一些不同类型的变量。

3.在应用程序下方添加一个符号配置对象。

4.在添加符号配置对话框中，选择支持OPC UA功能选项。

5.在编辑器中打开符号配置。

6.单击编译⇒变量以树形结构显示。

7.选择要通过OPC UA客户端更改的变量。指定访问权限。

8.将工程下载到控制器。

### 为MetaFacture OPC UA服务器创建证书​

为了加密数据并安全地与客户端交换数据，服务器需要一个证书，当首次建立连接时，客户端必须将该证书分类为受信任的证书。

要求：设置了控制器的活动路径。

1.安装MetaFacture Security Agentadd-on。

2.单击查看 ➔ 安全栅栏

3.选择设备选项卡。

4.在左视图中选择控制器⇒控制器的所有需要​​证书的服务都显示在右侧视图中。

5.选择OPC UA服务器服务。

6.为设备创建一个新证书。单击图标⇒将打开证书设置对话框。

7.定义证书参数，然后单击确定关闭对话框⇒证书在控制器上创建。

8.重新启动runtime系统。

### 与“UaExpert”客户端建立加密连接​

OPC UA客户端“UaExpert”是可免费访问的软件，可以从Internet下载。使用此客户端，您可以连接到MetaFacture OPC UA服务器。以下说明引用了该程序。其他OPC UA客户端以类似的方式工作。

1.启动“UaExpert”程序。

2.单击服务器 ➔ 添加⇒添加服务器对话框打开。

3.在树形视图中，展开本地 ➔ OPCUAServer @...。

4.选择连接类型Basic256Sha256-Sign&Encrypt（uatcp-uasc-uabinary），然后单击确定关闭对话框。

5.单击服务器 ➔ 连接⇒证书验证对话框打开，并显示一条错误消息。

6.激活选项暂时接受此会话的服务器证书，然后单击继续。

7.在MetaFacture Development System开发系统中，单击符号⇒视图被刷新。

8.选择证书文件夹隔离证书⇒客户端证书UaExpert @ ...显示在右侧视图中。

9.将证书拖到证书文件夹受信任的证书中⇒现在，客户端证书被服务器分类为受信任的证书。

10.在UaExpert客户端中，单击服务器 ➔ 连接⇒证书验证对话框打开，并显示一条错误消息。

11.激活选项暂时接受此会话的服务器证书，然后单击继续⇒建立连接，并在地址空间视图中显示对象。

### OPC UA中的用户管理​

MetaFacture OPC UA服务器支持MetaFacture用户管理。您可以从控制器上的访问权限选项卡设置服务器上的访问权限。为此，选择对象Runtime系统对象 ➔ 远程连接 ➔ OPCUA服务。

可以在服务和对象级别上检查访问权限。这意味着，尽管通常允许该用户写入OPC UA服务器，但是用户无法写入变量。

OPC UA服务器 | 访问权限
读取属性 | 视图
读取属性 | 修改
CreateMonitoredItem | 视图
ModifyMonitoredItem | 视图
DeleteMonitoredItem | 视图
DeleteMonitoredItem | 视图
关闭会话 | 视图
创建子描述 | 视图
修改订阅 | 视图
设置发布模式 | 视图
删除订阅 | 视图
发布 | 视图
再版 | 视图
浏览 | 视图
下一个 | 视图
切换浏览路径节点 | 视图
注册节点 | 视图
注销节点 | 视图

### 通过OPC UA客户端修改变量​

1.在视图地址空间的“UaExpert”客户端中，展开对象对象 ➔ 设备集 ➔ MetaFacture OPC UA ➔ 应用 ➔ 全局变量 ➔ GVL。
⇒全局变量列表的变量可见。

2.选择变量并将其拖动到数据访问视图⇒显示变量及其当前值。

3.通过双击值字段来更改变量值。

### 在MetaFacture工程中创建事件​

MetaFactureOPC UA服务器提供了发送标准OPC UA事件的功能。

1.使用MetaFacture Control Win V3控制器创建一个新工程。

2.在应用程序下方添加警报配置对象。

3.在警报配置下面添加警报类对象。指定一个名称，例如Event⇒新警报组在编辑器中打开。

4.选择确认方法REP。

5.在警报配置下添加警报组对象。指定一个名称，例如ApplicationEvent⇒新警报组在编辑器中打开。

6.更改以下参数：

- 监视类型：事件
- 类：事件
- 消息：“消息１”

7.在应用程序下方添加一个视图对象。

8.在应用程序下方添加一个符号配置对象

9.在程序中（例如，POU PLC_PRG），添加一个用于触发事件警报的程序调用。
AlarmManager.AlarmGlobals.g_AlarmHandler.RaiseEvent(Alm_AlarmConfiguration_Alarmgroup_IDs.ID_ApplicationEvent, Alm_ApplicationEvent_Alarm_IDs.ID_0);

10.将库CmpOPCUAProviderAlarmConfiguration添加到库管理器。
添加库后，它将作为客户端自动连接到警报配置，并将事件发送到 OPC UA 服务器。

11.将工程发送到控制器并启动。

### 通过OPC UA客户端“UaExpert”监视事件​

1.启动“UaExpert”程序。

2.单击服务器 ➔ 添加⇒添加服务器对话框打开。

3.在树形视图中，展开本地 ➔ OPCUAServer @...。

4.选择连接类型无，然后单击确定关闭对话框。

5.单击服务器 ➔ 连接⇒对象树显示在地址空间视图中。

6.单击文件 ➔ 添加⇒添加文件对话框打开。

7.选择“文档类型”事件视图⇒事件视图选项卡打开。

8.在地址空间视图中，对象 ➔ 设备设置 ➔ MetaFacture Control Win V3。

9.在地址空间中选择对象MetaFacture Control Win V3，然后将其拖到事件视图中⇒显示事件。