//利用控制变量将归档数据记录删除
SetTagFloat("@UA_arRecipeParamter_ID", RecordID);
SetTagFloat("@UA_arRecipeParamter_Job", 8);
//利用控制变量将变量数据添加到配方参数归档中
SetTagFloat("@UA_arRecipeParamter_ID", -1);
SetTagFloat("@UA_arRecipeParamter_Job", 6);
这段代码,分开单独执行没问题,但放在一起执行问题就来了,查看归档记录发现,实际上执行的结果是这样的:
//把最小ID的记录给我删除了。
SetTagFloat("@UA_arRecipeParamter_ID", -1);
SetTagFloat("@UA_arRecipeParamter_Job", 8);
SetTagFloat("@UA_arRecipeParamter_ID", -1);
SetTagFloat("@UA_arRecipeParamter_Job", 6);
怎么破???
最佳答案
上下脚本不一样啊
下面没有使用变量进行控制啊
放在一起的时候,ID和JOB都是一个变量,变量归档还没执行第一个动作了,ID和job就变了
使用内部变量做个延时或者脚本分开放置,需要两个都执行的话,使用第一个脚本里的变量触发执行第二个脚本的变量,在全局脚本里面的话
如果在按钮里面,那就做两个按钮吧,或者做个函数,使用按钮调用
提问者对于答案的评价:
您说的很对,在第一条控制还未执行时,变量内容被更改了,导致执行器的处理出现问题。如果这里WINCC修改成队列的方式就好了。
感谢您的回答。
begin
add
add
end
begin
add
add
end
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc361842.html