要求:
-
可使用 OPC UA 服务器。有关 OPC UA 服务器的说明,请参阅 "OPC UA 服务器 "一章,该服务器包含在标准安装CODESYS 中。
-
您已在CODESYS中安装了CODESYS Security Agent 附加组件。
-
CODESYS 是开放的。
-
“允许匿名登录” 选项是在设备编辑器的“更改通讯策略” 对话框中为控制器选择的(“通讯设置” 标签,“更改通讯策略” 命令,“设备” 菜单)。或者已明确禁用用户管理(例如,在“Change Communication Policy” 对话框中切换到“Optional user management”,然后“Reset Origin”)。
-
启动 OPC UA 服务器。
-
创建一个新的CODESYS 项目。
-
在应用程序中添加“Data Source Manager” 对象。
-
将“数据源” “OPC UA-Client” 添加到“数据源管理器” 。
“Initialize Data Source” 对话框将打开。
-
在“Initialize Data Source” 对话框中,按以下步骤配置数据源以进行通信。
使用“从 IEC 变量读取连接设置” 选项,可以动态配置连接设置,而不是在对话框中定义。更多信息,请参见使用动态连接到 OPC UA 服务器
此对话框中的设置会相应地反映在数据源管理器的通信选项卡上:
-
对于“在哪里可以找到服务器布局” ,应定义如何检测现有变量和类型的信息。选择“Browse Live Server” 选项时,OPC UA 客户端会为此连接到 OPC UA 服务器并读取其中的信息。当您选择“From Information Model” 时,客户端会从已安装的信息模型中读取相同的信息,而不需要运行中的 OPC UA 服务器。
-
单击[显示所有端点] 按钮,打开“可用端点” 对话框。
-
选择一个定义了“Encrypt & Sign” 报文安全模式和相应安全策略的端点。关闭对话框后,这些设置将传输到 “Initialize Data Source” 对话框的“Security” 部分。
-
选择合适的“客户端证书” 以访问服务器进行浏览。如果还没有可供选择的证书,则可以立即生成证书。为此,请单击
按钮,打开“生成自签名证书” 对话框。为私钥定义密码,为证书定义文件名。单击[OK] 时,证书将生成并自动输入证书存储区。*.cer 和 *.pfx 证书文件与项目文件一起存储。这样,你就可以把带有公钥(*.cer)的证书 "交给 "服务器,让它 "知道 "证书。您还可以共享私钥(*.pfx),使项目可以在另一台机器上使用(用于浏览)。
请注意,该证书只能用于浏览服务器上的变量和数据类型。在线数据交换需要额外的证书。下文将介绍其创建过程。
-
-
单击“Next” 。现在,客户端扫描 OPC UA 服务器以查找 OPC UA 服务器的变量和类型。OPC UA 服务器必须在线才能执行此操作。
-
现在选择一个或多个变量。
这些变量以后可以通过 OPC UA 客户端和 OPC UA 服务器之间的加密通信进行交换。对于变量,组件在“Devices” 视图中创建,位于“DataSources_Objects” 文件夹中。这些变量可在应用程序中使用。
-
在接下来的步骤中,你将为从 OPC UA 客户端到 OPC UA 服务器的加密通信创建证书。
-
单击“查看 安全屏幕” 。
-
切换到“Devices” 选项卡。
-
在左侧视图中,选择控制器。
在右侧视图中,显示了控制器所有需要证书的服务。
-
选择服务“CmpOPCUAClient” 。
-
为设备创建新证书。为此,请单击
图标。
此时将打开“Certificate Settings” 对话框。
-
定义证书参数,然后单击“OK” 关闭对话框。
证书在控制器上创建。
-
单击
按钮,将证书保存到 OPC UA 服务器本地文件目录下的
certs
文件夹中。现在,当你重新启动 OPC UA 服务器时,它将识别客户端证书。服务器向客户端发送证书。在接下来的步骤中,客户端将 "信任 "该证书。
-
为此,在“Security Screen” 视图中,在“Devices” 选项卡上,单击左侧区域中的“Certificates in Quarantine” 文件夹。
证书显示在右侧区域。
-
将此证书拖动到“Trusted Certificates” 文件夹。
现在,服务器证书已被客户端 "信任"。
-
现在,当您连接到控制器并启动应用程序时,OPC UA 客户端的数据源变量可通过加密连接与 OPC UA 服务器进行交换。