Back to courseLesson 5 of 6

MOV: one timer, many recipes

What you'll learn

Write a value into a timer's preset while a rung is true — a selector switch becomes a recipe book, if the writes stay mutually exclusive.

Compares READ the analog world. MOV writes it — it copies a number into a destination while its rung is true. One instruction, and suddenly your timers have interchangeable presets: recipes.

The recipe pattern

The recipe circuit runs a motor for a timed shot — but how long depends on a selector switch:

──────[/SS1]──────( MOV  3.0 s → T1.PRE )     recipe A
──────[ SS1]──────( MOV 12.5 s → T1.PRE )     recipe B

      ┌──[ PB1 ]───┐
──────┤            ├──────( TON T1 )
      └──[ T1.EN ]─┘
──────[ T1.TT ]──────( M1 motor )

The timer rung never changes. The run rung never changes. The selector just decides which number is sitting in T1.PRE when Start is pressed. Flip the selector in the recipe circuit and watch the TON box: the preset rewrites in front of you — 3.0 s becomes 12.5 s without touching the timer instruction.

That's the whole trick, and it scales: a 3-position selector and three MOV rungs is a three-recipe machine. On real Logix hardware the MOV's source can be another tag — an HMI writes the recipe screen, the MOV moves it into the working timer. Same rung shape.

MOV writes EVERY scan

One semantic detail carries all the sharp edges: while its rung is true, MOV writes its value on every single scan — thousands of times a minute. Two consequences:

  • You can't "set it once and edit it later" while the rung is still true — the next scan stomps your edit. The value belongs to the MOV as long as the rung holds.
  • Two MOVs, same destination, both rungs true = scan order decides. The one lower on the ladder writes last and wins — every scan. The machine "works" and lies to you.

The recipe circuit is immune by construction: /SS1 and SS1 can never be true together, so exactly one MOV owns the preset at any moment. Copy that discipline — make writes to one destination mutually exclusive, and a print full of MOVs stays readable.

Where this is going

You now have the full analog vocabulary: scale the signal in, compare it into rungs, seal the compares into deadbands, and write setpoints with MOV. One question is left, and it's the one that pays the bills: what happens when the number itself is wrong? That's the last lesson.

Check your understanding

Question 1 of 2

While its rung is true, a MOV instruction:

Next lesson