4. TIA Portal仿真环境搭建
在真实PLC到货之前,或者在改造项目无法停机验证的情况下,仿真环境是自动化测试工程师最重要的“预演舞台”。TIA Portal提供的仿真能力并不是单一工具,而是一组可以按测试目标组合的组件:S7-PLCSIM用于基础逻辑与程序调试,S7-PLCSIM Advanced用于需要网络通信、OPC UA、外部接口或与第三方软件联调的场合,HMI仿真用于验证画面与操作逻辑,驱动仿真(如Startdrive配合驱动仿真)用于验证运动控制与驱动参数,虚拟网络配置则把这些仿真节点连接成一个可通信的虚拟系统。本节围绕“搭什么、怎么搭、搭完怎么判断可用”展开。
一、先明确仿真目标,再选择仿真组件
仿真环境搭建最容易犯的错误是“先装工具,再想用途”。正确的顺序是先确定本轮测试要验证什么,再决定使用哪些组件。例如,只验证梯形图逻辑和HMI按钮联动,使用PLCSIM加HMI仿真即可;如果要验证PLC与上位机通过OPC UA交换数据,或者验证PLC与机器人控制器、视觉系统的TCP通信,则必须使用PLCSIM Advanced,因为它提供虚拟网卡和更完整的通信能力;如果要验证G120/S120驱动器的启停、速度给定和故障响应,则需要驱动仿真与PLCSIM Advanced配合。
下表给出常见测试目标与推荐组件组合,可作为搭建前的选型参考。表中参数为示例配置,实际项目应按现场设备型号和软件版本调整。
| 测试目标 | 推荐组件组合 | 关键说明 |
|---|---|---|
| 基础逻辑、定时器、计数器验证 | PLCSIM + TIA Portal 程序 | 无需虚拟网卡,下载到仿真PLC即可 |
| HMI画面、按钮、报警联动 | PLCSIM + HMI仿真 | HMI与仿真PLC通过虚拟接口通信 |
| OPC UA、TCP、第三方软件联调 | PLCSIM Advanced + 虚拟网卡 | 需配置虚拟网卡IP,支持外部访问 |
| 驱动启停、速度给定、故障响应 | PLCSIM Advanced + Startdrive仿真 | 需建立驱动与PLC的报文通信 |
| 多PLC、多HMI、驱动混合系统 | PLCSIM Advanced + 虚拟网络 + HMI仿真 + 驱动仿真 | 需统一IP网段与设备名称 |
二、PLCSIM与PLCSIM Advanced的搭建差异
PLCSIM的搭建相对简单:在TIA Portal中创建项目并完成硬件组态后,选中PLC设备,点击“开始仿真”按钮,TIA Portal会自动启动PLCSIM实例并将程序下载到仿真PLC。此时仿真PLC的IP地址通常由PLCSIM内部管理,外部软件一般无法直接访问。它适合在工程师站本机进行逻辑调试,优点是启动快、资源占用低。
PLCSIM Advanced的搭建则需要多一步网络配置。安装PLCSIM Advanced后,系统会创建一个虚拟网卡(如Siemens PLCSIM Virtual Ethernet Adapter)。在Windows网络连接中,需要为该虚拟网卡设置一个与仿真PLC同网段的静态IP。例如,仿真PLC组态IP为192.168.0.1,子网掩码255.255.255.0,则虚拟网卡可设置为192.168.0.100。随后在PLCSIM Advanced控制面板中创建实例,选择“TCP/IP communication”模式,并指定虚拟网卡。启动实例后,将TIA Portal程序下载到该实例,外部软件即可通过192.168.0.1访问仿真PLC。
三、HMI仿真与驱动仿真的接入方式
HMI仿真的核心是让HMI运行系统与仿真PLC建立连接。在TIA Portal中打开HMI设备,点击“开始仿真”即可启动HMI运行系统。若HMI与PLC在同一项目中且连接已组态,HMI仿真会自动指向PLCSIM或PLCSIM Advanced实例。需要注意的是,HMI仿真默认使用“PLCSIM”连接时,只能连接本机PLCSIM;若使用PLCSIM Advanced,则需要在HMI连接中选择“S7-1500”并填写仿真PLC的IP地址。
驱动仿真的接入稍复杂。以Startdrive为例,先在项目中添加驱动设备(如G120 CU250S-2 PN),完成报文组态(例如标准报文1,PZD2/2),然后在驱动设备属性中启用“仿真”选项。启动仿真后,驱动会作为一个虚拟节点运行,PLC通过PROFINET或PROFIBUS与它交换控制字和状态字。测试时,可以通过驱动仿真界面强制修改转速给定、观察使能状态和故障码,从而验证PLC侧的逻辑是否正确。
四、虚拟网络配置与仿真项目创建
当仿真系统中包含多个节点时,虚拟网络配置就成为关键。推荐做法是:为所有仿真节点规划一个独立的虚拟网段,例如192.168.100.0/24,其中PLC_1为192.168.100.1,PLC_2为192.168.100.2,HMI为192.168.100.10,驱动为192.168.100.20。所有节点通过PLCSIM Advanced虚拟网卡或TIA Portal的虚拟网络适配器接入同一网段。若需要与外部软件(如Kepware、Python脚本、测试工具)通信,则外部软件所在主机也需要添加一条指向该网段的路由,或直接使用虚拟网卡IP。
仿真项目创建建议遵循以下顺序:第一步,在TIA Portal中新建项目并完成所有设备的硬件组态,包括PLC、HMI、驱动和通信模块;第二步,为每个设备分配唯一的IP地址和设备名称,确保在同一网段;第三步,建立PLC与HMI、PLC与驱动之间的连接和报文;第四步,编写或导入测试程序;第五步,启动PLCSIM Advanced实例并下载PLC程序;第六步,启动HMI仿真和驱动仿真;第七步,进行通信测试,例如在HMI上操作按钮,观察PLC变量变化,或在驱动仿真中修改参数,观察PLC程序响应。
五、仿真环境可用性判断与常见问题
搭建完成后,不能只看“仿真启动成功”就认为环境可用。建议按以下顺序做连通性判断:第一,在PLCSIM Advanced控制面板中确认实例状态为“RUN”,且IP地址与组态一致;第二,在TIA Portal中在线访问仿真PLC,能够看到“在线”状态并读取到程序块;第三,在HMI仿真中操作一个按钮,观察PLC对应变量是否变化;第四,若使用驱动仿真,在驱动界面修改转速给定,观察PLC程序中的设定值是否同步更新;第五,若使用外部工具,用ping命令测试虚拟网卡到仿真PLC的连通性,再用OPC UA客户端或TCP客户端建立连接。
常见问题中,最典型的是“HMI仿真连不上PLC”。此时先检查HMI连接中指定的IP地址是否与PLCSIM Advanced实例一致,再检查虚拟网卡是否被防火墙拦截。另一个常见问题是“PLCSIM Advanced实例启动后无法下载”,通常是因为TIA Portal中PLC的IP地址与虚拟网卡不在同一网段,或者实例的通信模式选成了“Local”而非“TCP/IP”。驱动仿真中若出现“报文未建立”,应检查驱动设备是否已启用仿真选项,以及PLC侧的PROFINET设备名称是否与驱动组态一致。
六、仿真项目创建检查清单
为便于实际执行,以下清单可直接用于仿真项目搭建后的自检。清单中的参数为示例,实际使用时替换为项目真实值。
| 检查项 | 示例值 | 判断标准 |
|---|---|---|
| PLC仿真实例状态 | PLC_1 / RUN | 控制面板显示RUN,IP为192.168.100.1 |
| 虚拟网卡IP | 192.168.100.100 | 与仿真PLC同网段,可ping通 |
| HMI连接 | 192.168.100.1 | HMI仿真中变量可读写 |
| 驱动报文 | 标准报文1,PZD2/2 | PLC侧能收到状态字,驱动侧能收到控制字 |
| 外部工具连通性 | OPC UA端口4840 | 客户端能浏览到PLC变量节点 |