关于临时变量

分享到:
134
下一篇 >

菜鸟:

现场查看一个加热棒的程序时,发现里面的程序觉得挺奇怪的,贴上来大家帮忙指点一下的

network2 :

AN M 113.4

AN M 121.4

A I 24.3

A DB39.DBX 152.0

AN M 38.2

A #Secu_general

= #Securite

network5

AN M 113.5

AN M 121.5

A I 24.4

A I 24.5

A DB39.DBX 152.0

AN M 38.2

A #Secu_general

= #Securite

这两个地方对应着俩个写的地方,这两个写的地方是由不同的点控制的,如果出现了network2和network5出现不同的值怎么办。在这个两个网络段后面紧跟跟随着一个读的地方。这个程序是怎么做到的,一个变量能去实现不同的值。大家指点一下吧,这个可以肯定的说程序是没有问题的,在机床上面工作的好好的,对这个问题感到很困惑,贴上来向大家求助一下的。谢谢大家了



斑竹:

从NW5以后,Securite得值由NW5中的状态决定 NW2至NW5之间Securite的值由NW2的状态决定。

菜鸟:

这是为什么呢?真没有见过这样编程的

斑竹:

*终的 #Securite的值时看整个程序扫描后的结果,前面不能决定它的结构。如果两个network不一致,那么就是以后面的执行结果为准。

游民:

我看了楼主提供的程序,发现一个问题:楼主在断章取义!

程序中#Securite仅仅作为临时变量存在,在下一次被赋值前,它的状态已经被可靠读取,故:不存在“如果出现了network2和network5出现不同的值怎么办”的问题!

菜鸟:

这个块主要是是用来控制几个个加热棒的接触器,Q16.4 ,Q16.5,Q16.6,Q16.7。在现场有一个加热棒没有工作,查找程序时发现这几个临时变量的值竟然不一样,其余三个临时变量通了,就剩下的一个临时变量没有通,当时就觉得奇怪了。这程序编的真有意思,还真是**次见这么编的程序的。这种编程方法是不是由于CPU工作是扫描方式决定的,上面的一段的扫描结果给下一段用?


你可能感兴趣: 工控菜鸟园 图片 自动化系统
无觅相关文章插件,快速提升流量