Ethernet & Sequencer Programming SM15K
27 / 44 DELTA ELEKTRONIKA B.V. rev. Aug. 2019
#I
Variable I (#I) is a timer of 1 ms. This command sets a value in the variable and the value decreases every
1 ms with 1 until it reaches zero.
Syntax : #I=<NR1> <NR1> = 0 to 65535
#J
Variable J (#J) is a timer of 100msec. This command sets a value in the variable and the value decreases
every 100msec with 1 until it reaches zero.
Syntax : #J=<NR1> <NR1> = 0 to 65535
6.2.2 Jumps
JP
JP stands for Jump. It's an unconditional jump to a step anywhere in the sequence.
Syntax : JP<sp><label> <label> = jump to step defined by label.
See section 6.3, Add labels for a description on labels.
JS / RET
JS stands for Jump to Subroutine. RET stands for Return. These two commands (always used together)
allow to create subroutines within a sequence. JS <step> jumps to the subroutine located at <step>. The
commands in the subroutine will be executed until a step contains RET. Then the subroutine is finished and
the program returns to the step after the jump instruction JS. It's possible to nest up to 6 jumps.
Warning! do not use RET without JS or visa versa. The sequencer will be in an undefined state.
Syntax : JS<sp><label> <label> = jump to step defined by label.
RET
See section 6.3, Add labels for a description on labels.
CJE
CJE stands for Compare Jump if Equal. Can be used in combination with Inputs, Outputs and Variables.
CJE allows to create conditional jumps to any step within the sequence. It compares the first two operands
and branches if their value is equal to the step declared in the third operand.
Syntax : CJE<sp><Ix><slot>,<boolean>,<label> x = input A,B,C,D,E,F,G or H
CJE<sp><Ox><slot>,<boolean>,<label> x = output A,B,C,D,E, F,G or H
CJE<sp><#x>,<NR1>,<label> x = variable A,B,C,D,E,F,G,H,I or J
CJNE
CJNE stands for Compare Jump if Not Equal. Can be used in combination with Inputs, Outputs and
Variables. CJNE allows to create conditional jumps to any step within the sequence. It compares the first
two operands and branches if their value is not equal to the step declared in the third operand.
Syntax : CJNE<sp><Ix><slot>,<boolean>,<label> x = input A,B,C,D,E,F,G or H
CJNE<sp><Ox><slot>,<boolean>,<label> x = output A,B,C,D,E or F
CJNE<sp><#x>,<NR2>,<label> x = variable A,B,C,D,E,F,G,H,I or J
CJG
CJG stands for Compare Jump if Greater. Can be used in combination with Source / Measure Voltage /
Current / Power and the variables. CJG allows to create conditional jumps to any step within the sequence.
It compares the first two operands and branches (if the first value is greater than the second) to the step
declared in the third operand.
Syntax : CJG<sp><SV>,<NR2>,<label>
CJG<sp><MV>,<NR2>,<label>
CJG<sp><SC>,<NR2>,<label>
CJG<sp><MC>,<NR2>,<label>
CJG<sp><SCN>,<NR2>,<label>
CJG<sp><SP>,<NR2>,<label>
CJG<sp><MP>,<NR2>,<label>
CJG<sp><SPN>,<NR2>,<label>
CJG<sp><#x>,<NR1>,<label> x = variable A,B,C,D,E,F,G,H,I or J
SV stands for Source Volt, which is the voltage setting, SC stands for Source Current, SCN for Source
Current Negative, SP for Source Power, SPN for Source Power Negative. MV stands for Measure Volt,
which is the actual output voltage, MC and MP stands for Measure Current and Measure Power.
For example CJG<sp>MV,10,voltage ; When the actual output voltage is greater than 10V, the program
jumps to step define by the label voltage, otherwise it continues with the next step.