恭喜,你发布的帖子
发布于 2020-09-16 08:02:54
21楼
浮点数相等的比较是一个危险的动作,建议还是改成整数。
如果是只有这几个规格,我有一个更简便的做法:
1、规格通过文本列表,选择输入而不是直接输入,限定输入范围。
2、因为是通过文本列表,PLC的实际输入是索引而不是实际值
3、我看了下,不同规格,计算公式都是一样的,只是数值不一样,那就不同规格的参数用一个结构数组存储,不需要那么多的比较,直接用索引值从结构数组中取数值,进行计算就好了。
比如:0 对应 270,1对应300 .。。。对应plc变量 idx
然后结构数组Z 包含两个元素 z0和z1
Z[0].Z0 = 1278
Z[0].Z1 = 1478.7
Z[1].Z0 = 1263
Z[1].Z1 = 1478.7
.
.
.
最后计算公式就是
Mandrel_Z0:=Z[idx].Z0-x0;
Mandrel_Z1:=Z[idx].Z1 - x1;
你的意思用FOR循环语句,是可以的,条条大道通罗马,另外比较mandrel_D在某个区间我是认可的,这样会更可靠,还好我们这个程序不参与控制,如果有问题我会急时更改!
请填写推广理由:
分享
只看
楼主