文章详情
OPC UA通讯笔记: 贝加莱PLC做服务器
2021-06-15 2513

  为保持内容的垂直度,继上篇西门子PLC做OPC UA 服务器后,又测了一下贝加莱 PLC 做OPC UA服务器。服务器选用贝加莱 X20系列PLC X20CP1585,客户端使用UaExpert软件。

  实操部分拟后续录个视频,本文着笔于思路和心得,非实操指导文档。但测试过程中,以前一些没弄懂的问题,逐步豁然,望对大家有用处。

  知识无品牌之分,本文为个人学习笔记,参考了网络文章及贝加莱官方培训资料!

  基本设置

  OPC UA工作基于服务器-客户端架构。一般PLC作服务器,可实现与SCADA、MES和ERP系统之间的垂直通信以及PLC到PLC的独立于供应商的通信(如贝加莱 PLC 与西门子PLC之间的通讯)等。PLC也可做客户端。

  集成OPC UA服务器的PLC,一般需手动激活OPC UA服务器功能。在贝加莱AS软件中,需激活OPC-UA System,

  路径:Physical View -> CPU(右键)->Cinfiguration…

  图1:OPC-UA System及相关设置

图片.png

  1。      从默认"off"设成“on”,激活PLC的OPC UA 功能。

  2。      OPC UA服务器的默认端口号是4840,可根据需要更改。客户端连接服务器时的URL地址一般如图2所示:

  图2:连接PLC,或软件仿真时的URL:

图片.png

  3。 Conversation: Security Policies

  定义客户端与服务器之间数据传输的加密策略和信息模式。可理解为对传输数据进行加密、签名、认证等一系列技术。

  当此项选择为No Security时,信息为非加密传输,在此策略下,信息传输是不安全的,易被监听或截获。

  4。 Authentication : Security Policies

  定义登录数据(Login Data)的加密策略,如用户名和密码等敏感信息。

  当上述3的安全策略设置为No Security时,黑客就容易截获未加密的信息。如果4也选择No security策略,那么黑客就能从截获的信息中,直接获取到未加密的用户名和密码等登陆信息。如果4选择了加密策略,则即便黑客截获了传输的信息,也无法解密用户名和密码。

  如3选择NoSecurity,其危险程度相当于授人以鱼

  如4选择NoSecurity,其危险程度相当于授人以渔

  5。      选择允许客户端登录服务器的方式。是否允许匿名登录,或必须以服务器端定义的用户名和密码登录。(见下一段:服务器端Role和User的定义)

  6。      Software Cerfiticates: 定义是否需要服务器和客户端之间的证书认证,及认证要求。

  后续几个条目设置Pub/Sub的周期和限值等,测试中保持默认即可。

  综上,  OPC UA定义了多重安全策略,以保证通讯的安全。

  服务器端Role和User的定义

  在OPC UA服务器端,需定义具有不同授权的Role,及对应各种Role的User。 Role相当于职位,如总经理,总监,经理等。User为各个职位上的人,如赵总经理、钱总监、孙经理、李经理等。

  路径:ConfigurationView->CPU-> AccessAndSecurity->User Role System

  图3:Role和User的设置

图片.png

  右图创建了三个User,为每个User分派一个Role。相当于给每个员工分派一个职位。也可以为每个User设置一个密码。

  图1中第5条,当设置需要Username登录时,则客户端需要输入相应的用户名和密码才能登录。

  图4:客户端的用户登录

图片.png

  至此,建立了Role和User,但并没有具体定义各个role的权限。其授权指对相关数据对象(变量)或方法的操作权限。

  PLC变量创建及管理

  在服务器侧需要创建相关变量,并编写一段代码,如通过一个布尔变量触发累加的程序,用于测试,不详表。

  须在OPC UA服务器上使能允许客户端访问的变量,在AS中通过添加OPC UA Default View File实现。

  路径:ConfigurationView ->Connectivity->OPC UA下添加

  图5:OPC UA Default View及其属性也

图片.png

  在Default View的属性页,添加各个Role后,即可设置各个Role的权限。

  各个变量根据需要进行使能。客户端只能访问到在Default View中使能的变量和方法。

  可分别设置各变量的属性,如上下限值、单位、针对不同Role的权限等。

  至此,即可从UaExpert客户端进行服务器的连接测试。

  证书

  若图1中第6条,Software Certificates后选择了SSL Configuration,则必须添加服务器或客户端的证书。SSL Configuration配置服务器和客户端的证书。当不启用Software Certificates时,客户端信任服务器的默认证书。

  证书的管理及相关操作:ConfigurationView ->CPU->Access And Security 下!

  图6:证书

图片.png

  1。  在OwnCertificates下添加新定义的服务器证书。

  2。 在ThirdParty Certificates下导入从UaExpert导出的客户端证书。(从UaExpert导出证书步骤略…)。

  3。      在TransportLayer Security下添加并设置SSL Configuration

  SSL Configuration中客户端证书可选择on或off,其配置页见图7。

  图7:SSL Configuration中的证书配置

图片.png

  SSL Configuration配置好后,在OPC-UA System 下的Software Certificates下,即有SSL Configuration选项,以定义启用或不启用证书认证。

  如果证书认证不成功,即便图1,Conversation下的Security Policy 选择No Security, 也是无法建立连接的(重新启动一下服务器,就会有多么痛的领悟!)。

  三种安全措施,加密归加密、登录归登录、证书归证书,各司其职!

  图8:客户端登录

图片.png  在客户端连接服务器时,需要选择数据传输的安全策略,并按要求输入用户名和密码登录。证书工作于后台。

  后记

  OPC UA服务器侧的设置相对简单,激活OPC UA服务器功能、选择安全策略、创建角色和用户,把变量在服务器上激活,对证书进行管理等,没有涉及到针对OPC UA通讯的编程。若客户端需要执行服务器上的方法,需在服务器上编程,创建方法,复杂些。当PLC做OPC UA 客户端时,会涉及到更复杂些的编程。

关键词:通讯,笔记,服务器
相关文章
  • 无服务器计算技术发展分析报告
    服务器,计算技术,报告,关键词
    2025-05-07
  • 2025年3月无服务器计算学术动向
    服务器,学术,动向,概况
    2025-04-24
  • 2022年连接器市场的国产替代在通讯和新能源领域有望加速
    市场,国产,替代,通讯,新能源,领域
    2022-05-12
运动控制工作室

专注伺服、运动控制、工业通讯,不懂问我吧!

进入