RSLogix JMP & LBL Instructions – Jump and Label Guide

Published on Aug 18, 2025 | Category: Program Contol

Share this Page:

Jump (JMP) and Label (LBL) are key program control instructions in RSLogix 5000. They help manage the flow of large and complex PLC programs efficiently.

The JMP instruction allows the program to skip specific sections of ladder logic and jump to a corresponding LBL instruction. This helps control which parts of the program execute under different conditions.The LBL instruction serves as a target or marker for JMP. Together, JMP and LBL make ladder logic programs more organized, modular, and easier to maintain.

What is a Label (LBL) Instruction in RSLogix 5000?

The Label (LBL) instruction is used in RSLogix 5000 to mark a specific location or point in a ladder logic program. It acts as a target for the Jump (JMP) instruction, allowing the program to skip sections of ladder logic and continue execution from the labeled point. LBL itself does not perform any action; it only serves as a marker for program control flow.

What is a Jump (JMP) Instruction in RSLogix 5000?

The Jump (JMP) instruction in RSLogix 5000 is used to skip a section of ladder logic and continue program execution from a corresponding Label (LBL) instruction. It allows you to control the flow of the program, bypassing rungs that do not need to execute under certain conditions. JMP is commonly used in large or complex programs to make the ladder logic more organized and efficient.

Where JMP and LBL Instructions Are Used in RSLogix 5000

The JMP and LBL instructions are mainly used in large or complex PLC programs where controlling the flow of execution is important. They help skip unnecessary rungs and jump to specific sections of ladder logic, making the program more efficient.

Typical applications include:

Using JMP and LBL together ensures that complex sequences can be managed effectively, allowing programmers to create flexible and maintainable control systems.

Practical Example of JMP and LBL Instructions

This ladder logic demonstrates the use of JMP (Jump) and LBL (Label) instructions in RSLogix 5000. These instructions are used to control the flow of the program by skipping or jumping to a specific point in the logic.

img/rslogix5000-jmp-lbl/rslogix5000-jmp-lbl-instruction-example.webp

Explanation:

Summary: The JMP instruction is used to skip over the conveyor start/stop logic if the safety switch is triggered. The LBL instruction marks the point to jump to, ensuring safety interlocks are prioritized and the warning light is activated.

RSLogix 5000 JMP and LBL Example with Counter & Timer

This ladder logic program demonstrates a batch process using a conveyor motor, a part counter, and a delay timer. The logic utilizes JMP and LBL instructions to keep the program organized.

img/rslogix5000-jmp-lbl/rslogix5000-jmp-lbl-instruction-example-practical.webp

Rung 1 – Start and Jump to Motor Control

When the Start push button is pressed, the JMP instruction jumps directly to the RunMotor label. This avoids unnecessary intermediate rungs and keeps the logic modular.

Rung 2 – RunMotor Label and Motor Control

The RunMotor label marks the motor control section. The motor output is energized if:

while ensuring that the Stop button or a Safety_Switch disables the motor immediately when activated.

Rung 3 – Counter Increment

The CTU counter1 increments each time a part passes the part_counter_sensor while the motor is running. The counter preset is set to 10.

Rung 4 – Move Counter Value to PartCounter Tag

The MOV instruction moves the accumulated value of counter1 to the PartCounter tag for comparison and display purposes.

Rung 5 – Check if Batch is Complete

When PartCounter reaches 10, the JMP instruction jumps to the DelaySection label for a post-batch delay.

Rung 6 – Delay Section Label

The DelaySection label begins the delay timer sequence. The TON DelayTimer runs for a preset value (1000 ms in this example). The reset_counter bit triggers the timer.

Rung 7 – Reset Counter After Delay

Once the timer is done (DelayTimer.DN), the RES instruction resets counter1, preparing the system for the next batch.

Summary of Flow

  1. Press Start → jump to RunMotor section.
  2. Motor starts and counts parts via the CTU counter1.
  3. Move the accumulated counter value to PartCounter.
  4. When PartCounter ≥ 10 → jump to DelaySection.
  5. Run TON DelayTimer for a specified delay.
  6. After timer completion → reset counter1 and prepare for the next batch.

Advantages of JMP and LBL in This Program