在下遇到一个比较迷惑的问题,望各位前辈不吝指教:
在下写了一个电机控制的子程序,子程序带有5个输入局部变量,和一个输出局部变量,然后拿到主程序中分别调用五次,供五个电机控制使用,运行时发现运行其中一个电机其他电机全部输出,并没有给其他电机启动信号,难道子程序中的局部变量释放后数值还保留,后来单独写了五个子程序(名字不一样,程序跟以前一样),分别供每个电机单独享用,还是出现上述结果,难道不用的子程序的局部变量共用,并且数据一直保留,后来把所有子程序的参数类型全部改成输入输出型好了,不知到为什么,不知道哪位前辈帮忙解释一下,另外一个运行周期中子程序中变量的变化关系。
问题补充:
说错了“难道不用的子程序局部变量共用”应该是:难道不同的子程序变量共用
最佳答案
原则:先赋值后调用。好好想想,你应该能明白,为什么数据类型改过就正常了。
提问者对于答案的评价:
我明白你的意思,后来在子程序的开始网络1加了一个局部变量清零,然后在使用,出现了另一个现象,每个电机都不能启动,我在慢慢琢磨琢磨!谢谢!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc316289.html