最近一个项目需要使用 WINCC 上位机读取大约70个S7-200 smart PLC,由于WINCC没有配置S7-200 Smart 通讯通道,只能使用OPC UA或者Modbus TCP进行通讯。 考虑到使用Simatic Net 配置OPC UA有些麻烦,且需要授权,因此决定放弃,改用Modbus TCP进行通讯;小编之间没有使用过此通讯,因此准备做一个测试,由于手头没有s7-200 smart PLC,因此使用S7-1500 与 WINCC通过 Modbus TCP进行测试;测试结果正常,具体步骤见下文;
image-2024090314382647001 测试环境软件:
TIA Portal V17STEP 7 ProfessionalWINCC V7.3硬件:
CPU 1513-1 PN注:小编电脑已安装软件如下:
image-2024082611102843302 S7-1500 配置 Modbus TCP Server首先需要在s7-1500中配置Modbus TCP Server (提供数据的为服务器),具体步骤如下(由于之前1200系列文章中,已经详细介绍相关指令,本次不在赘述):
在TIA Portal中新建项目,并添加1500 PLC,并组态IP地址,此处不再赘述; (以实际为准)
新建FC块用于Modbus TCP通讯,从指令中拖入MB_SERVER指令,并指定背景数据块;
image-20240903112321845注:不要忘记在Main程序中调用该FC块
新建数据DB为MB_Server分配引脚参数;(各参数功能可F1查看帮助,或查看之前1200系列文章);并建立测试数据区:
image-20240903113434012注:
InterfaceID指的是以太网口接口的硬件标识符,默认64
ID 范围1到4095,不能有重复
PLC侧配置完成;详细配置可参见本公众号1200系列文章,此处不再赘述;
image-2024090314031960303 WINCC 中建立 Modbus TCP 链接在PLC中建立Modbus TCP Server完成后,接下来将在WINCC建立Modbus TCP通讯,进行测试;步骤如下:
新建单机项目(实际应用中根据需求选择),并保存项目
image-20240903140447169从左侧导航栏中打开变量管理
image-20240903140736152在变量管理中,右键添加新的驱动,并选择ModbusTCPIP;在新增加的ModbusTCP/IP 通道,右键新建链接,并重命名;
image-20240903141333792选中新建的链接,右键选择连接参数,修改ModbusTCP服务器参数(参数与PLC中一致);
image-20240903141434524注:由于WINCC 中 Modbus TCP实际是针对施耐德设置,所以CPU类型里面没有西门子,选择Premium,Micro即可;
在连接中新建测试变量,分别对应PLC变量中的DB500.DBD18,DB500.DBW22,DB500.DBW24,DBW500.DBX26.0;
image-20240903144020275注:DBW500.DB26.0由于寄存器是读取整数,因此存在高低字节的问题,。WINCC中26.0是第8位,27.0为第0位,依此类推;
新建测试画面,并添加IO域,关联对应变量;
image-20240903142327096右键选择计算机属性,在运行时窗口中设置起始画面
image-20240903142519189激活系统运行,并进行测试如下:
image-20240903143826470推荐阅读- 通过 Modbus TCP通讯实现西门子 Wincc 与 s7-1500通讯, 2024-11-21
- 西门子 S7-1200 系列五:TIA博图中OB、DB、FC、FB介绍及应用范围 2024-11-21
- 什么是张力变频器,其优点有哪些?什么是嵌入型变频器,其有哪些优点? 2024-11-21
- 伺服电机抖动不转动是怎么回事? 2024-11-21
- ABB变频器的硬件配置详解 2024-11-21
- 步进电机单极性和双极的优缺点 2024-11-21
- 非接触式温度传感器的优缺点有哪些 2024-11-21
- 变频器通讯故障原因分析及解决 | 变频器主回路常见故障怎么维修? 2024-11-21
- 变频器变频调速后异步电动机机械特性如何? 2024-11-21
- 步进电机和驱动器常见问题汇总 2024-11-21