研发埠

标题: SIMATIC S7-300 400 组态相位偏移有何作用以及何时起作用? [打印本页]

作者: 魏冲    时间: 2013-6-6 15:55
标题: SIMATIC S7-300 400 组态相位偏移有何作用以及何时起作用?

作者: 姬晓军    时间: 2013-6-6 16:03
使用相位偏移可以实现在偏移时间后继续执行带时间间隔公倍数(例如:OB35[100ms]以及OB36 [50ms])的循环中断程序。于是可以获得更为精确的时间间隔。时间间隔和相位偏移的起始点为系统从STARTUP向RUN切换的那一时刻。相应地,循环中断OB的调用时间为时间间隔加上相位偏移。如图1所示示例。在上面的例子中编写了两个没有相位偏移的循环中断程序(调用间隔为两倍关系)。因为低优先级的OB3y程序必须等待OB3x处理程序完成,而OB3x程序处理时间也不固定,所以OB3y组态的时间间隔就有差异(不精确)。在下面的例子中,对OB3y的相位偏移tph进行了参数化处理,时间值大于OB3x的最长处理时间。也就是说,对OB3x和OB3y的时间值进行时序分散处理,于是可以精确地保持OB3y的时间间隔。通常情况下请遵守下列注意事项:如果希望处理两个优先级(=两个循环中断OB)调用间隔成公倍数关系的程序,那么请遵守下列事宜:· 低优先级OB3y的相位偏移应该大于高优先级OB3x的最大可能执行时间;· 最大可能执行时间加上低优先级OB3y的执行时间应该小于高优先级OB3x的调用间隔。上述两个优先级的情况也适用于多个优先级的场合。在HW Config下CPU的属性对话框中设置调用间隔、相位偏移和优先级(基于CPU情况而定)。[img][/img]




欢迎光临 研发埠 (http://bbs.yanfabu.com/) Powered by Discuz! X3.2