三菱PLC中的模数运算
Modulus Operation in Mitsubishi PLC
我使用的是三菱Q系列PLC,Q06UDH。
我正在尝试执行模数运算,以获得数据收集的采样率,即我有一个寄存器 R0,它不断在 0 和 3600 之间循环,以及一个与 R0 相关的寄存器 W0,其值位于介于 -100 和 1300 之间的任何值,具体取决于 R0。
我想做的是取W0的值,当值:
R0 % 100 = 0 (R0 MOD 100 = 0)
并将此数据存储在别处以计算 W0 的平均值
所以我想要这样的东西。
--|R0 % 100 = 0|----+--|MOV W0 D0Z0|---
|
|
+--|INCP Z0|---------
有没有我缺少的接线员?或者我没有看到的解决方法?
最后我决定使用一个简单的0.1s时钟来采样数据。它并不像我喜欢的那样优雅和漂亮,并且经过反复试验才正确,但它确实有效。
如果在Mits中进行除法运算[/D0 K100 D100]
除法结果在 D100 中,模数在 D101 中。
所以在你的情况下
|SM400|------------[/R0 K100 D100]
[= D101 K0]--------[MOV W0 D0Z0] 等...
我使用的是三菱Q系列PLC,Q06UDH。
我正在尝试执行模数运算,以获得数据收集的采样率,即我有一个寄存器 R0,它不断在 0 和 3600 之间循环,以及一个与 R0 相关的寄存器 W0,其值位于介于 -100 和 1300 之间的任何值,具体取决于 R0。
我想做的是取W0的值,当值:
R0 % 100 = 0 (R0 MOD 100 = 0)
并将此数据存储在别处以计算 W0 的平均值
所以我想要这样的东西。
--|R0 % 100 = 0|----+--|MOV W0 D0Z0|---
|
|
+--|INCP Z0|---------
有没有我缺少的接线员?或者我没有看到的解决方法?
最后我决定使用一个简单的0.1s时钟来采样数据。它并不像我喜欢的那样优雅和漂亮,并且经过反复试验才正确,但它确实有效。
如果在Mits中进行除法运算[/D0 K100 D100] 除法结果在 D100 中,模数在 D101 中。 所以在你的情况下
|SM400|------------[/R0 K100 D100]
[= D101 K0]--------[MOV W0 D0Z0] 等...