不知为何S7-200两个子程序中的临时变量可以互相访问。例如,我建立了两个子程序,分别为SBR1和SBR2,在这两个子程序中都创建了临时变量L0.0和L0.1。在两个子程序都导通的情况下,两个子程序中的临时变量L0.0和L0.1会互相影响,例如我如果在SBR1子程序中让L0.0导通,在SBR2子程序中,如果有L0.0导通的话,M0.0就置位。结果发现只要SBR1子程序中让L0.0导通,SBR2子程序中的M0.0就会导通。有什么方法让S7-200几个子程序中的临时变量不能互相影响吗?
最佳答案
这种用法是错误的,SBR1和SBR2都会受主程序调用,运行时也就是一个程序。所以才会相互作用。建议临时变量需要不同结果时,就不要用同一种。
提问者对于答案的评价:
谢谢各位的回答,临时变量使用前先赋值再使用好像没有用,我现在是通过在调用的时候有条件调用,不使那几个块同时调用
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc212856.html