如果用户程序的执行时间超出硬件组态中所设定CPU的扫描周期监控时间,则CPU会因看门狗超时而停机,同时触发定时错误OB80,诊断信息如图1所示:
S7-300/400 CPU的循环扫描时间(看门狗时间)默认为150ms(zui大可修改为6000ms),用户程序的执行时间必须在设定的扫描周期监控时间范围内。zui大扫描周期设置如图2所示:
2. 如何查看S7-300/400扫描循环时间?
如果工程师需要了解程序的扫描周期,可通过如下两种查询。
一、将程序下载到PLC后,进行在线连接,查看CPU信息,如图3所示:
二、通过将OB1相应的临时变量传送到M区,即可读取CPU扫描循环时间,如图4、图5所示:
3. 如何查看S7-300/400中一个子程序的大约执行时间?
使用S7-300/400 CPU时,如果工程师需要了解某个子程序的大约执行时间,可在该子程序前、后分别读取CPU时钟,然后使用时钟相减指令FC34进行编程计算,步骤如下:
1、设置PLC时钟,按图6所示的设置:
2、创建一个块符号名为“time”的数据块(DB1),并创建如下变量,如图7所示:
3、在需要的子程序的***个网络和zui后一个网络读取时钟,然后运用时钟相减指令FC34进行计算。
如下例程中了“FC1”子程序的执行时间,如图8所示:
4、通过变量监控表查看该子程序的大约执行时间,如图9所示:
图9子程序大约执行时间
1多功能测量表SENTRON PAC3200简介
SENTRON PAC3200电能设备可***提供特性,包括电压和电流zui大值、zui小值和平均值,功率值、、功率因数、对称性、逻辑计算、负载趋势、谐波和总谐波失真等。SENTRON PAC3200可检测 50 多个基本数值,具有 10个电能计数器,可用于负载检测。它们的测量准确度电能计数器所规定的较高要求。PAC3200带有MODBUS RTU-RS485接口、PROFIBUS-DP接口和MODBUS TCP 接口,可以很方便将PAC3200的数据上传到PLC中进行处理,也可以上传到HMI中进行数据分析、处理及归档。对于西门子可以地将PAC3200集成到自动化中,例如,集成到西门子 SIMATIC PCS 7 powerrate 和SIMATIC WinCC powerrate 包中。
2 PAC3200通信接口对比
PAC3200可以通过MODBUS RTU RS485接口、MODBUS TCP 以太网接口以及现场总线PROFIBUS-DP接口与PLC和HMI通信。下面分别以连接S7-300 PLC为例,在通信性能、连接的个数、编程方面进行对比:
1) 通信性能:PROFIBUS-DP使用令牌由主站依次访问从站,是实时现场总线,通信响应快,通信的响应时间应考虑PAC3200数据的刷新时间(自身刷新时间可能较PROFIBUS-DP刷新时间慢);如果选择以太网MODBUS TCP 通信,由于不是实时网络,通信性能次之,通信的响应时间也应考虑PAC3200数据的刷新时间(自身刷新时间可能较以太网刷新时间慢);使用RS485 MODBUS RTU通信,由于基于串口,通信性能不能与以太网与PROFIBUS-DP相比较。
2) 连接个数:使用PROFIBUS-DP,基于主站的性能,zui多可以连接126个站点;以太网MODBUS TCP 通信,基于CP的连接个数,通常16个;使用RS485 MODBUS RTU,可以连接一个网段,典型值31个站点。
3) 编程:使用PROFIBUS-DP,不需要编写通信程序;使用以太网MODBUS TCP 通信,需要编写发送接收通信程序;使用RS485 MODBUS RTU通信,需要编写从站轮询程序,比较麻烦,如果没有购买MODBUS RTU的驱动,还需要编写通信程序。
4) 价格:PROFIBUS-DP与RS485 MODBUS RTU通信需要购买选件网卡,而PAC3200本身集成以太网接口,支持MODBUS TCP 通信。
下面将介绍PAC3200的MODBUS TCP 通信。
3 MODBUS TCP 通信报文
MODBUS TCP 使MODBUS RTU协议运行于以太网,MODBUS TCP使用TCP/IP和以太网在站点间传送MODBUS报文,MODBUS TCP结合了以太网物理网络和网络TCP/IP以及以MODBUS作为应用协议的数据表示。MODBUS TCP通信报文被封装于以太网TCP/IP数据包中。与的串口,MODBUS TCP一个的MODBUS报文到TCP报文中,不再带有数据校验和地址,如图1所示:
图1:MODBUS TCP报文
由于使用以太网TCP/IP数据链路层的校验机制而保证了数据的完整性,MODBUS TCP 报文中不再带有数据校验”CHECKSUM”,原有报文中的“ADDRESS”也被“UNIT ID”替代而加在MODBUS应用协议报文头中。
MODBUS TCP使用502端口与客户端进行通信。