Heartsuit's Simple Blog
A place to hold mainly reading notes, and some technical stuff occasionally. 这里主要是一些读书笔记、感悟;还有部分技术相关的内容。
Project maintained by heartsuit
Hosted on GitHub Pages — Theme by mattgraham
从零搭建本地PLC仿真环境:SIMATIC_PLCSIM_Advanced、Portal、KEPServer、OPCUA客户端工具
发布:2023-03-26 Sunday
标签:IoT
背景
近期在为一个工业控制领域的上位机数采项目进行技术预研,苦于手头没有PLC
(Programmable Logic Controller,可编程逻辑控制器)硬件设备,为了快速、完整地体验下从 PLC
数据采集、传输到上位机进行存储、展现的完整流程,决定基于 SIMATIC_PLCSIM_Advanced_V3
、 TIA Portal V16
、 KEPServerEX6
以及 UAExpert
搭建西门子 PLC
的仿真环境。
整体组件的架构:
- PLC是TCP服务器;
- KEPServer是TCP客户端,同时也是OPC服务器,并且自带了是OPC客户端;
- UAExpert是OPC客户端。
软件资源来自于微信公众号:dotNet工控上位机
环境准备
- 安装SIMATIC_PLCSIM_Advanced_V3
- 先安装WinPcap_4_1_3.exe
- 再安装SIMATIC_PLCSIM_Advanced_V3.exe
- SimEKBInstall2022.07.26.exe 选中需要的密钥,勾选你的软件,然后选择安装长密钥。
- 重启S7-PLCSIM Advanced V3.0
- 安装TIA Portal V16
- 双击安装
- SimEKBInstall2022.07.26.exe在左侧列表双击TIA Portal,选择TIA Portal V16,勾选右侧的STEP 7 Professional V16,然后选择安装长密钥。
- 安装KepServer
- 安装UAExpert
UAExpert
官网:https://www.unified-automation.com/products/development-tools/uaexpert.html。
西门子PLC仿真环境搭建步骤
- 在
SIMATIC_PLCSIM_Advanced_V3
中配置IP
地址信息,点击Start
- 在TIA Portal V16中建立项目、打开项目视图、添加新设备(这里选择SIMATIC S7-1500中的1513的CPU,如果最后无法点击确定,则需要先安装秘钥!!)
- 走S7协议,则必须勾选:PUTGET协议
- DB块右键属性,在DB块属性中,去掉:优化的块访问
- 项目右键属性,保护Tab下,勾选:块编译时支持仿真
- 点击PROFINET接口,设置以太网地址为在SIMATIC_PLCSIM_Advanced_V3中配置IP地址
- 编译新增的程序块(DB块)
- 下载到设备、搜索设备、下载
KEPServerEX 6
中新建通道、新建设备、新建标记(格式:DB1.DBD0或者DB1.D4)
之后,可以实现KEPServer
(本身作为OPC
服务器,并且提供了OPC
客户端工具)与TIA Portal
的双向通信。
OPC客户端
OPC UA的全名是OPC Unified Architecture(OPC统一架构)。
OPC UA
客户端:UAExpert
- 在OPC UA服务端KEPServer的OPC UA Configuration Manager中,安全策略勾选为无
- 在KEPServer的项目->属性->属性编辑器->opcua->允许匿名登录:是;然后重启程序,不行就重启电脑
- OPC UA客户端UAExpert中添加自定义的OPC连接地址:opc.tcp://localhost:49320,匿名连接
- 连接成功后可以在AddressSpace中看到添加的标记D1与D2,将其拖到中间的Data Access View可以进行实时监控
- 对于Value的值,可以直接双击修改
- 可能遇到的问题:
KEPserver
一个或多个功能有时间限制。
- 解决方案:Crack the KepServer。
- OPC UA客户端:上位机程序
关于上位机程序的编写,我单独开一篇写下使用SpringBoot
开发OPC UA
客户端实现数据的订阅采集与存储。
If you have any questions or any bugs are found, please feel free to contact me.
Your comments and suggestions are welcome!