6.29. FOR(FOR) Block反复
6.29. FOR(FOR):Block反复
标记 | |
Relay组合 | |
因数 | idx: 目录(index) Relay init: 初始值(initial value) Relay 或数字 final: 结束值(final value) Relay 或数字 step: 作为步骤(step)的Relay 或数字 |
说明 | Rung处于激活状态、 从init到final按Step增加idx Relay值并反复执行到NEXT Block。 执行FOR文时、在无条件idx代入init值。 FOR/NEXT文最大可以重叠至10个。 → FOR() FOR() FOR() ….NEXT NEXT NEXT step>0时、如果init>final、就不执行、直接Jump到NEXT。 step<0时、如果init<final 、就不执行、直接Jump到NEXT。 Final和step即使指定变数、也只适用首次开始for文时的值。 特别在FOR文的中间脱离时、可以使用JMP(负数)命令。(请参考JMP命令说明) 注意) FOR命令不进行Branch所需的另外处理。 |
使用例 | FOR(RB10、1、4、1): 从RB10=1到4逐一增加、反复执行到NEXT命令。 {|--[FOR(SW61、1、256、1)]-—[XIC(X-1)]—-[OTL(Y-1)]—-[NEXT]--|}: 从SW61=1到256逐一增加、反复执行{XIC(X-1)、 OTL(Y-1)}命令。 即、 idx使用相对Addressing(SW61~SW69)所需的Relay、 其XIC的XRelay和OTL的 YRelay为“-1”、适用SW61值的编号、因此只把在X1~X256中属于High信号编号的YRelay 编号输出为High、未输入编号的Y输出保持之前状态。 参考) 相对Addressing是指、不管任何形式的Relay将其编号设为-1~-9值、就按保存于SW61~SW69的值指定Relay编号的方式。 |