如图上编写的脚本程序,由于测试把上部分屏蔽了,现在的问题是上图中!DataGetFloat()指令无法正确读取寄存器的值,但是!DataSetFloat()指令却可以正常写入值到寄存器,图中SetObjName是字符串类型的,里面的值为LT004,SetObjName + "_Param_PID_MaxValue"与"LT004_Param_PID_MinValue"是等价的,下段!DataGetFloat("LT004_Param_PID_MaxValue", Test)读取到的值一直是0,但实际PLC的值是50.2,Test关联的数值输入框中修改Test的值会被!DataGetFloat("LT004_Param_PID_MaxValue", Test)读取到的0所覆盖,但是通过赋值指令Test = LT004_Param_PID_MaxValue是可以正常的把50.2读取到Test里的,并且PLC端修改该值也会及时变化。所以目前情况是通过!DataSetFloat(SetObjName + "_Param_PID_MaxValue", LT_PID_MaxValue_Temp)可以正常写入值,但是!DataGetFloat(SetObjName + "_Param_PID_MaxValue", LT_PID_MaxValue_Temp)却无法正常读取到值,各位大神你们有这样使用的情况吗?是我指令错了吗还是什么问题呢?
楼主最近还看过