Bird
Raised Fist0
PLC Programmingscripting~5 mins

State machine in ladder logic in PLC Programming

Choose your learning style10 modes available
Introduction
A state machine helps control machines step-by-step by remembering what happened before. It makes sure the machine does tasks in the right order.
Controlling a traffic light that changes colors in a cycle.
Operating a washing machine with different stages like wash, rinse, and spin.
Managing a conveyor belt that stops and starts based on sensor input.
Running an elevator that moves between floors and opens doors.
Automating a packaging line with steps like fill, seal, and label.
Syntax
PLC Programming
Use ladder logic rungs with contacts and coils to represent states.
Use internal bits or memory bits to store the current state.
Use conditions to move from one state to another by setting and resetting bits.
Each state is usually represented by a memory bit (coil) that is ON when active.
Transitions happen by turning OFF the current state bit and turning ON the next state bit.
Examples
Simple example showing two states controlled by conditions.
PLC Programming
State1:  --[ ]--( )--  // If condition true, turn ON State1 coil
State2:  --[ ]--( )--  // If condition true, turn ON State2 coil
Transition from State1 to State2 when Condition is true, turning off State1 and turning on State2.
PLC Programming
Rung1: --[ State1 ]--[ Condition ]--( State2 )--
       --[ State1 ]------------------( /State1 )--
Transition from State2 to State3 similarly.
PLC Programming
Rung1: --[ State2 ]--[ Condition2 ]--( State3 )--
       --[ State2 ]------------------( /State2 )--
Sample Program
This example shows a simple state machine with three states. It starts in State1. Pressing Start moves to State2. Pressing Next moves to State3, then pressing Next again returns to State1. The output shows which state is active.
PLC Programming
(* Simple 3-state machine example in ladder logic style pseudocode *)
(* Memory bits: State1, State2, State3 *)
(* Inputs: Start, Next *)

// Initial state: State1 ON
State1 := TRUE;
State2 := FALSE;
State3 := FALSE;

// Transition from State1 to State2 when Start is pressed
IF State1 AND Start THEN
  State1 := FALSE;
  State2 := TRUE;
END_IF;

// Transition from State2 to State3 when Next is pressed
IF State2 AND Next THEN
  State2 := FALSE;
  State3 := TRUE;
END_IF;

// Transition from State3 back to State1 when Next is pressed
IF State3 AND Next THEN
  State3 := FALSE;
  State1 := TRUE;
END_IF;

// Output current state
IF State1 THEN
  OUTPUT := 'State1 Active';
ELSIF State2 THEN
  OUTPUT := 'State2 Active';
ELSIF State3 THEN
  OUTPUT := 'State3 Active';
END_IF;

// Simulate pressing Start and Next inputs step by step
Start := TRUE;
Next := FALSE;
(* Run transitions *)
IF State1 AND Start THEN
  State1 := FALSE;
  State2 := TRUE;
END_IF;
Start := FALSE;

Next := TRUE;
IF State2 AND Next THEN
  State2 := FALSE;
  State3 := TRUE;
END_IF;

IF State3 AND Next THEN
  State3 := FALSE;
  State1 := TRUE;
END_IF;

// Final output
IF State1 THEN
  OUTPUT_FINAL := 'State1 Active';
ELSIF State2 THEN
  OUTPUT_FINAL := 'State2 Active';
ELSIF State3 THEN
  OUTPUT_FINAL := 'State3 Active';
END_IF;

// Print final output
PRINT(OUTPUT_FINAL);
OutputSuccess
Important Notes
In real PLC ladder logic, states are often stored in internal coils or bits.
Make sure only one state bit is ON at a time to avoid confusion.
Use clear naming for states and transitions to keep the program easy to understand.
Summary
A state machine controls steps by remembering the current state.
Use bits/coils to represent states and conditions to change states.
Transitions turn OFF the current state and turn ON the next state.

Practice

(1/5)
1. What is the main purpose of a state machine in ladder logic?
easy
A. To control a process by remembering and switching between states
B. To perform mathematical calculations
C. To store large amounts of data
D. To display information on an HMI screen

Solution

  1. Step 1: Understand state machine concept

    A state machine controls a process by remembering the current step or state and moving to the next based on conditions.
  2. Step 2: Compare options to concept

    Only To control a process by remembering and switching between states describes controlling process flow by switching states, which matches the state machine purpose.
  3. Final Answer:

    To control a process by remembering and switching between states -> Option A
  4. Quick Check:

    State machine controls steps = D [OK]
Hint: State machines remember and switch states to control flow [OK]
Common Mistakes:
  • Confusing state machine with data storage
  • Thinking it only does math
  • Assuming it controls display only
2. Which ladder logic element is typically used to represent a state in a state machine?
easy
A. Timer
B. Bit or coil
C. Counter
D. Analog input

Solution

  1. Step 1: Identify state representation in ladder logic

    States are usually represented by bits or coils that can be ON or OFF to show current state.
  2. Step 2: Eliminate other options

    Timers and counters are for timing/counting, analog inputs read values, so only bits/coils represent states.
  3. Final Answer:

    Bit or coil -> Option B
  4. Quick Check:

    States use bits/coils = C [OK]
Hint: States are bits or coils ON/OFF in ladder logic [OK]
Common Mistakes:
  • Choosing timers or counters as states
  • Confusing analog inputs with states
  • Not knowing bits represent ON/OFF
3. Given this ladder logic snippet for a state machine:
--[ State1 ]--+--[ Condition ]--( State2 )
              |
              +--( Reset State1 )

What happens when Condition is TRUE?
medium
A. State2 turns OFF and State1 turns ON
B. State1 and State2 both turn ON
C. State1 stays ON and State2 stays OFF
D. State1 turns OFF and State2 turns ON

Solution

  1. Step 1: Analyze ladder logic behavior on Condition TRUE

    When Condition is TRUE, the coil for State2 energizes and the Reset coil for State1 de-energizes State1.
  2. Step 2: Understand state transition

    This means State1 turns OFF and State2 turns ON, moving the machine to the next state.
  3. Final Answer:

    State1 turns OFF and State2 turns ON -> Option D
  4. Quick Check:

    Condition TRUE switches states = A [OK]
Hint: Condition TRUE switches OFF current and ON next state [OK]
Common Mistakes:
  • Thinking both states turn ON simultaneously
  • Assuming no change happens
  • Confusing which state resets
4. You wrote this ladder logic for a state machine:
--[ State1 ]--+--[ Condition ]--( State2 )
              +--( State1 )

Why does the state machine never leave State1?
medium
A. Because State1 coil is never reset, so it stays ON
B. Because Condition is never TRUE
C. Because State2 coil is missing
D. Because the rung has a syntax error

Solution

  1. Step 1: Check how State1 coil is controlled

    State1 coil is energized again on the same rung without a reset coil, so it stays ON continuously.
  2. Step 2: Understand why state never changes

    Without turning OFF State1, the machine cannot move to State2 even if Condition is TRUE.
  3. Final Answer:

    Because State1 coil is never reset, so it stays ON -> Option A
  4. Quick Check:

    No reset keeps state ON = B [OK]
Hint: Always reset current state coil to move states [OK]
Common Mistakes:
  • Ignoring need to reset current state
  • Assuming Condition is always FALSE
  • Thinking missing coil causes lock
5. You want to design a 3-step state machine in ladder logic: State1 -> State2 -> State3 -> State1. Which approach correctly implements the transitions?
hard
A. Use timers to switch states automatically without conditions
B. Use one bit for all states and toggle it on each condition
C. Use bits for each state; each transition resets current state bit and sets next state bit based on conditions
D. Use counters to count states and reset after 3

Solution

  1. Step 1: Understand state machine design

    A proper state machine uses separate bits for each state and transitions that turn OFF the current state bit and ON the next state bit.
  2. Step 2: Evaluate options for correct implementation

    Use bits for each state; each transition resets current state bit and sets next state bit based on conditions matches this approach; the other options do not correctly represent state transitions in ladder logic.
  3. Final Answer:

    Use bits for each state; each transition resets current state bit and sets next state bit based on conditions -> Option C
  4. Quick Check:

    Separate bits with reset/set transitions = A [OK]
Hint: Reset current and set next state bits for transitions [OK]
Common Mistakes:
  • Using one bit for all states
  • Relying only on timers or counters
  • Not resetting current state bit
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard