1.S7-PLCSIM简介
西门子为S7-300/400 PLC设计了一款可选仿真软件包PLC Simulation(本书简称S7-PLCSIM),此仿真软件包可以在计算机或者编程设备中模拟可编程控制器运行和测试程序,它不能脱离STEP7独立运行。如果STEP7中已经安装仿真软件包,工具栏中的“仿真开关”按钮 是亮色的,否则是灰色的,只有“仿真开关”按钮是亮色才可以用于仿真。
S7-PLCSIM提供了简单的用户界面,用于监视和修改在程序中使用各种参数(如开关量输入和开关量输出)。当程序由S7-PLCSIM处理时,也可以在STEP7软件中使用各种软件功能,如使用变量表监视、修改变量和断点测试功能。
2.S7-PLCSIM应用
S7-PLCSIM仿真软件使用比较简单,以下用一个简单的例子介绍其使用方法。
【例1-21】将如图1-73所示的程序用S7-PLCSIM进行仿真。
图1-73 用于仿真的程序
【解】具体步骤如下:
1)先新建一个工程,并进行硬件组态,在组织块OB1中输入如图1-73所示的程序,保存工程。
2)开启仿真。在管理界面中单击工具栏上的“仿真开关” ,如图1-74所示。
图1-74 开启仿真
3)下载程序。先选定“SIMATIC 300(1)”,再单击工具栏的“下载”按钮 ,将硬件组态和程序下载到仿真器中,如图1-75所示。
图1-75 下载程序
4)进行仿真。先选择“RUN”,也就是将仿真器置于运行状态,再将I0.0划上“√”,也就是将I0.0置于“ON”,这时,Q0.0也显示为“ON”;当去掉I0.0上的“√”,也就是将I0.0置于“OFF”,这时Q0.0上的“√”消失,即显示为“OFF”,如图1-76所示。
图1-76 进行仿真
5)监视运行。打开程序编辑器,在工具栏中单击“监视”按钮 ,可以看到:若仿真器上的I0.0和Q0.0都是“ON”,则程序编辑器界面上的I0.0和Q0.0也都是“ON”,如图1-77所示。这个简单例子的仿真效果与下载程序到PLC中的效果基本相同,相比之下前者实施要容易得多。
(www.xing528.com)
图1-77 监视运行
3.S7-PLCSIM与真实PLC的差别
S7-PLCSIM提供了方便、强大的仿真模拟功能,与真实的PLC相比,它的灵活性高,并提供了许多PLC硬件无法实现的功能,使用也更加方便。但是仿真软件毕竟无法完全取代真实的硬件,不可能实现完全仿真。用户利用S7-PLCSIM进行仿真时,还应该了解它与真实PLC的差别。
S7-PLCSIM有如下功能在真实PLC上无法实现。
1)仿真的CPU正在运行时可以用“Stop”选项中断程序,恢复“运行”时是从程序中断处开始继续处理程序。
2)与真实的CPU一样,仿真软件可以改变CPU的操作模式(RUN、RUN-P和STOP)。但与实际CPU不同的是仿真的CPU切换到STOP模式并不会改变输出的状态。
3)仿真软件在目标视图中变量的每个改变,其存储区对应相关地址的内容会被同时更新。CPU并不是等到循环周期结束或开始时才更新改变的数据。
4)使用关于程序处理的选项可以指定CPU如何执行程序:
●选择“By cycles”程序执行一个周期后等待命令再执行下一个循环周期。
●选择“Automatic”程序的处理同实际自控系统一样,即一旦一个循环周期结束马上执行下一个周期。
5)仿真定时器可以使用自动或手动方式处理,自动方式按照程序执行结果;手动方式可以给定特殊值或复位定时器。复位定时器可以复位单独的定时器或一次复位所有定时器。
6)可以手动触发诊断中断OB:OB40~OB47(过程中断)、OB70(I/O冗余错误)、OB72(CPU冗余错误)、OB73(通信冗余错误)、OB80(时间错误)、OB82(诊断警告)、OB83(插拔模块警告)、OB85(程序执行错误)和OB86(机架故障)。
7)过程映像区和I/O区:如果改变一个输入映像区的值,S7-PLCSIM立即将此值复制到输入外设区。这就意味着从输入外设区写到输入过程映像区所需要的值在下一个循环周期开始时不会丢失。同样如果改变了输出映像区的一个值,此值立即被复制到输出外设区。
S7-PLCSIM与“实际”的自动化系统还有以下不同:
1)诊断缓冲区:S7-PLCSIM不能支持所有写入诊断缓冲区的错误消息。例如,关于CPU中的电池电量不足的消息或者EEPROM错误是不能仿真的。但大部分I/O和程序错误都是可以仿真的。
2)在改变操作模式时(比如从RUN切换到STOP)输入输出没有“安全”状态。
3)不支持功能模块(FM)。
4)不支持点对点通信(例如同一机架上的两个S7-400 CPU之间)。
5)S7-PLCSIM与S7-400 CPU一样支持4个累加器。在某些情况下S7-PLCSIM上运行的程序与真实的只有2个累加器的S7-300 CPU上的运行结果不同。
6)输入/输出的不同。大多数S7-300产品系列的CPU可以自动配置输入/输出设备:如果将模块连接到控制器,CPU即自动识别此模块。对于仿真的自动化系统,这种自识别是不能模拟的。如果将一个自动组态了I/O的S7-300 CPU程序装载到S7-PLCSIM中,系统数据中将不包含任何I/O组态。因此,如果使用S7-PLCSIM来仿真S7-300的程序,为了CPU能识别所使用的模块,必须首先装载硬件组态。在S7-PLCSIM中,S7-300 CPU不能自动识别I/O,例如CPU315-2DP、CPU316-2DP或CPU318-2DP等CPU,为了能将硬件组态装载到S7-PLCSIM,需要创建一个项目。复制相应的硬件组态到这个项目并装载到S7-PLCSIM,然后从任意S7项目装载程序块,I/O处理都不会有错误。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。