有2个温度值(PLC读取),一个参考温度 50 度,当大于50 时 选择2个温度值更高的一个,低于50 度时选择最接近50度的值,然后操作温度值所对应阀门?
问题补充:
优先选择大于50度的,一个高50一个低于50 就选50度,我题目上的意思是,都没有高于50度了,才选去在2个低于50度中找个离50度差距最小的。如何2个都高于50度,选个最高的温度。
最佳答案
把两个数进行排序,然后判断最大值是否小于50,如果小于50,则设定值=最大值,如果最小值大于50,则设定值=最大值,如果最小值小于50且最大值大于50,则设定值=50。wincc vbs脚本:
dim maxvalue,minvalue,mytag(2)
mytag(0)=hmiruntime.tags("temp1").read
mytag(1)=hmiruntime.tags("temp2").read
if mytag(0)>=mytag(1) then
maxvalue=mytag(0)
minvalue=mytag(1)
else
maxvalue=mytag(1)
minvalue=mytag(0)
end_if//以上是数据排序
if maxvalue<=50.0 or minvalue>=50.0 then
hmiruntime.tags("temp_set").write maxvalue
else if maxvalue>=50.0 and minvalue<=50.0 then
hmiruntime.tags("temp_set").write 50.0
end_if
然后阀门控制判断变量temp_set的值就行了。
提问者对于答案的评价:
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc357203.html