调试软件下载:
2.压缩包:
文章最终做出来的程序下载:
一、OPC UA (安全访问)教程____CODESYS(文字版)
1.双击打开codesys软件(此处以CODESYS V3.5 SP20 Patch 4为例)

2. 进入codesys界面后,点击“新建工程”→选择标准工程→输入程序名字→选择程序存放位置→点击“确定”

3.选择设备和编程语言→点击“确定”

4.双击打开“PLC_PRG(PRG)”→在声明区声明变量(opc ua要传输的变量)

5.添加设定时间戳的库文件:双击库管理器→点击添加库→输入添加库名称“SysTimeRtc”→点击对应的库→点击“确定”;点击添加库→输入添加库名称“SysTypes”点击对应的库→点击“确定”。


6.添加时间戳设定程序:声明区和程序部分输入下列程序,注意时间戳是“用于存储自1970年1月1日以来的秒数”可通过此此链接工具计算当前的时间戳:时间戳(Unix timestamp)转换工具 - 在线工具(可以自己网页搜索相关工具)
声明:
//设定时间
first:BOOL:=TRUE;
ulTimestamp:UDINT:=1737339350; // 用于存储自1970年1月1日以来的秒数
result1: RTS_IEC_RESULT; // 用于存储函数执行结果
程序:
// 设置系统时间
IF first THEN
result1 := SysTimeRtcSet(ulTimestamp);
first:=FALSE;
END_IF
备注:first置成1的时候,设置时间戳生效

7.在“Application”右键→点击“添加对象”→点击“符号配置”

8.填写名称→勾选“支持OPC UA”→点击“添加”

9.双击代开刚添加好的“符号配置”→点击“编译”(以下两个位置的编译,点哪个都可以)

10.点击“编译”以后会出现如下视图→勾选想要进行 OPC UA通讯的变量

11. 双击打开“Device”→点击“扫描网络”→点击“扫描网络”(打开扫描网络,默认扫描模式,如果没扫到设备,可以点此项,如果还是没扫描到设备可以尝试ping设备ip看能否ping通,或联系售后解决)→选择对应设备→点击“确定”

12.添加密码:点击“设备”→“修改Runtime安全策略...”→在新策略选择“实施用户管理”→点击“确定”。


13.如出现如下弹窗点击“确定”。

14. 登陆设备:
(1)点击“登录”→出现如下图弹窗点击“确定”

(2)出现添加设备用户弹窗输入“名称、密码、新密码”→点击“确定”

(3)出现设备用户登录弹窗输入“用户名、密码”→点击“确定”。

(4)出现如下弹窗,点击“确定”。

(5)点击“运行”。

15. 添加证书:点击“视图”→选择“安全界面”→在安全界面里面点击“Device”→点击

刷新→点击“Device”→选择“OPC UA Server”→点击添加

→输入长度和时间→点击“OK”。(注意:如果Encrypted Application没有证书,按照上面的方法添加即可)。



16. 打开“UaExpert”软件

17.点击“Server”→点击添加

→在Local上右键→选择“Edit URL”→输入opc ua服务器的地址和端口(plc默认ip192.168.1.30,opc ua端口4840,端口不支持修改)→点击“OK”→在Local上右键→选择“Rebrowse”。



18.添加OPC UA Server:
(1)展开“Local”→展开“OPCUAServer@GCAN-PLC-530(opc.tcp://192.168.1.30:4840)”→选择“Basic256Sha256 - Sign & Encrypt (uatcp-uasc-uabinary)”→勾选“Store”→输入plc下载程序时所用的用户名和密码→点击“OK”。

(2)点击“Trust Server Certificate”→勾选“Accept the server certificate temporarily for this session”→点击“Continue”。

19.codesys添加证书:当UaExpert软件点击“Continue”后,codesys的安全界面的Device中的“Quarantined Certificates”中会出现证书(如果没出现可点击刷新或者在UaExpert软件重复点击“Continue”)→将此证书拖拽到“Trusted Certificates”。

20.在UaExpert软件中点击对应的“OPC UA Server”→点击“连接”

→勾选“Accept the server certificate temporarily for this session”→点击“Continue”。

如出现此弹窗点击“Ignore”

21.连接成功以后界面中会出现数据源,展开数据源找到“PLC PRG”,拖拽到右侧显示变量的界面。

22.当程序中的变量发生改变后,UaExpert软件监控变量的界面的变量也对应改变。
