python opcua模块加密认证通讯配置教程

python opcua 模块签名加密通讯教程

第一章 Python 通过opcua模块进行通讯搭建



搭建流程

通过SIEMES博途配置OPCUA服务器,并启动PLC仿真完成OPCUA服务器的搭建
通过Python pip安装OPCUA模块,搭建OPCUA客户端进行通讯
教程目标:
1、通过OPCUA加密及签名认证建立OPCUA通讯
2、获取服务端Node节点,并导出为json文件
3、获取节点数值
4、更改节点数值

action: 你需要了解SIEMENS plc博途plc项目创建流程及组态


一、搭建SIEMENS plc OPCUA服务器

1、在博途软件中创建SIEMENS 1500系列plc项目,并激活OPCUA服务器

在这里插入图片描述

2、配置SIEMENS OPCUA 服务器

在这里插入图片描述

3、配置OPCUA通讯安全策略

在这里插入图片描述## 4、配置用户认证
在这里插入图片描述

5、配置客户端证书

在这里插入图片描述

6、启动仿真,启用opcua服务器

启动仿真前提是博途软件已经成功安装PLCSIM Advance
在这里插入图片描述

7、配置仿真环境

设置plc实例名称、ip地址、子网掩码及plc系列型号,点击start;
实例启动完成后,需要在博途中点击在线,搜索plc,并将项目下载到plc实例中,启动plc完成OPCUA服务器搭建工作

在这里插入图片描述

8、仿真环境搭建完成验证

可以通过UAExpert调试工具对OPCUA服务器通讯进行验证

二、调试python代码进行客户端搭建

本文以OPCUA模块搭建OPCUA通讯基本搭建,最新的OPCUA模块建议选择opcua-asnicio;
如果你对python异步陌生,那OPCUA通讯仍可适用

1.pip安装opcua模块

通过pip install opcua来为python 环境安装模块
建议通过虚拟环境安装模块

2.编写python代码

代码如下(示例):

import time
from opcua import Client, ua
import json

# opcua client class


class OpcuaClient:
    def __init__(self, url: str,
                 user_name: str = None,
                 user_password: str = None,
                 basic256: bool = False,
                 sha256: bool = False,
                 cert_path: str = None,
                 key_path: str = None,
                 application_uri=None
                 ) -> None:
        self._url = url
        self._client = Client(url)

        if user_name and user_password:
            self._client.set_user(user_name)
            self._client.set_password(user_password)
        if basic256 and not sha256:
            self._client.set_security_string("Basic256,SignAndEncrypt,None,None")
        if sha256:
            self._client.set_security_string(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值