Learn PLCs free
Programming Guides22 min read4,296 words

Ladder Logic Symbols: Complete Chart + Printable PDF

Use an original ladder logic symbol chart with generic, Rockwell and Siemens names, scan behavior, worked rungs, and a printable PDF reference.

PPI
PLC Programming IO Editorial Team
Sourced guidance with documented review and correction standards

Quick answer: a ladder contact reads a Boolean condition, while a coil or instruction box writes or transforms a value. A normally-open contact is true when its referenced bit is 1; a normally-closed contact is true when that bit is 0. Those logical tests do not tell you whether the field device itself is physically wired NO or NC.

Printable ladder logic symbol chart comparing generic symbols with Rockwell Logix and Siemens names and scan behavior
Original PLCProgramming.io reference. Select the chart for the print-ready PDF; confirm exact instruction behavior in the manual for your controller and firmware.

Take the reference with you: download the printable PDF, download the editable SVG, or open the full-resolution PNG. These files are free to use in a classroom or internal project document with attribution to PLCProgramming.io; do not present them as a substitute for the selected controller's instruction manual.

Ladder Logic Symbols at a Glance

Generic symbol or box Logical behavior Rockwell Logix name Siemens / common name
`— —` True when the referenced bit is 1
`— / —` True when the referenced bit is 0
Positive-edge contact True for the implementation-defined rising-edge event ONS or OSR, depending on use Positive signal edge
—( )— Writes the rung result to a Boolean OTE Output coil
—(S)— Sets a Boolean when the rung is true OTL Set coil
—(R)— Clears a Boolean when the rung is true OTU Reset coil
TON box Starts a non-retentive on-delay when enabled TON TON
CTU box Counts qualifying rising events CTU CTU
Compare box Returns a Boolean result such as A >= B GEQ >= compare
Move box Copies a source into a destination when enabled MOV MOVE

This mapping is intentionally behavioral rather than decorative. Editor artwork changes between platforms and versions, while the truth condition is what determines whether power continuity reaches the next instruction. Rockwell's XIC/XIO names are vendor terms; they do not mean the referenced field contact is physically closed or open.

Introduction: The Visual Language of Industrial Control

Ladder Logic symbols form the foundation of the world's most widely used PLC programming language, providing an intuitive graphical representation of control logic that closely mirrors traditional electrical control circuits. Understanding these symbols is essential for anyone working with programmable logic controllers, from entry-level technicians to experienced automation engineers.

The power of Ladder Logic lies in its visual nature—symbols represent real-world electrical components including contacts, coils, timers, and counters in ways that electricians and technicians can immediately understand. This visual approach makes troubleshooting more intuitive and enables faster system commissioning and maintenance compared to text-based programming languages.

Ladder Logic symbols are standardized according to IEC 61131-3 international standards, though individual PLC manufacturers may use slight variations in symbol appearance while maintaining consistent functionality. This standardization enables programmers to work across different PLC platforms while applying the same fundamental knowledge of symbol meanings and applications.

Modern Ladder Logic has evolved far beyond simple contact-and-coil logic to include sophisticated function blocks for mathematical operations, communication, data manipulation, and advanced control algorithms. However, the basic symbols remain the foundation upon which all complex control systems are built.

This comprehensive guide explores every category of Ladder Logic symbols, their proper usage, programming best practices, and real-world applications. Whether you're learning PLC programming for the first time or refreshing your knowledge of advanced symbols, this guide provides the complete reference needed for effective Ladder Logic programming.

Mastering Ladder Logic symbols enables you to read, understand, modify, and create control programs that form the backbone of modern industrial automation. The investment in understanding these symbols pays dividends throughout your automation career, regardless of which PLC platforms or applications you encounter.

Chapter 1: Fundamental Contact Symbols

Normally Open (NO) Contacts

The normally open contact represents the most basic element in Ladder Logic programming, symbolizing a contact that allows current flow when the associated input condition is TRUE (energized) and blocks current flow when the condition is FALSE (de-energized).

Symbol Representation: The NO contact appears as two parallel vertical lines with a gap between them, resembling an open electrical switch. This universal symbol is consistent across all PLC platforms, though some manufacturers may use slightly different line weights or styling.

Electrical Analogy: In traditional electrical circuits, a normally open contact represents a pushbutton, sensor, or switch that is open (non-conductive) in its resting state and closes (becomes conductive) when activated. This same concept applies directly to Ladder Logic programming.

Programming Applications: NO contacts are used to represent input conditions that must be TRUE for control logic to execute. Common applications include start buttons, safety switches, sensor inputs, and internal memory bits that indicate specific system states or conditions.

Logic Behavior: When the associated input or memory bit is energized (TRUE), the NO contact allows power flow to continue to the right in the ladder rung. When de-energized (FALSE), the contact blocks power flow, preventing downstream logic from executing.

Addressing and Naming: NO contacts are typically addressed using the input address or memory bit designation associated with the physical or logical signal they represent. Proper naming and documentation of contact functions is essential for maintainable programming.

Best Practices: Use NO contacts for positive logic where TRUE conditions should enable outputs or advance sequential operations. Avoid excessive use of normally closed logic, which can make programs difficult to understand and troubleshoot.

Normally Closed (NC) Contacts

The normally closed contact represents the logical inverse of the normally open contact, allowing current flow when the associated condition is FALSE and blocking flow when the condition is TRUE.

Symbol Representation: The NC contact appears as two parallel vertical lines with a diagonal line crossing through them, indicating a closed contact that opens when activated. This diagonal line distinguishes NC contacts from NO contacts in Ladder Logic diagrams.

Electrical Analogy: In electrical circuits, normally closed contacts represent components that conduct electricity in their resting state and interrupt conduction when activated. Examples include normally closed pushbuttons and safety switches that must remain closed for normal operation.

Programming Applications: NC contacts are commonly used for safety systems, stop buttons, alarm conditions, and interlocks that must remain satisfied for normal operation. They're also used in logic that should execute when certain conditions are NOT present.

Logic Behavior: When the associated input or memory bit is de-energized (FALSE), the NC contact allows power flow to continue. When energized (TRUE), the contact opens and blocks power flow, interrupting the logic path.

Safety Applications: NC contacts are preferred for critical safety applications because they provide fail-safe operation—if the input device fails or wiring is damaged, the contact state changes to the safe condition (open), stopping potentially dangerous operations.

Troubleshooting Considerations: Understanding NC contact behavior is crucial for effective troubleshooting. A rung that isn't executing might be due to an unexpected TRUE condition on an NC contact rather than a FALSE condition on an NO contact.

Contact Symbols in Series and Parallel

The arrangement of contacts in series (AND logic) and parallel (OR logic) configurations creates the fundamental logical operations that control industrial processes and equipment.

Series Configuration (AND Logic): When contacts are placed in series on the same rung, ALL contacts must allow power flow for the rung to execute. This creates logical AND operation where multiple conditions must be simultaneously TRUE for outputs to energize.

Parallel Configuration (OR Logic): When contacts are arranged in parallel branches, power can flow through ANY of the parallel paths. This creates logical OR operation where any one of several conditions can cause outputs to energize.

Mixed Logic Configurations: Real-world control applications typically combine series and parallel contact arrangements to create complex logical expressions that meet specific operational requirements. Understanding how these combinations work is essential for effective programming.

Documentation Practices: Complex contact arrangements benefit from clear documentation including logic descriptions, operational sequences, and safety considerations. Well-documented programs are easier to troubleshoot, modify, and maintain.

Optimization Strategies: Efficient contact arrangement can improve program scan times and readability. Placing most frequently TRUE contacts first in series chains and most frequently FALSE contacts first can optimize execution performance.

Troubleshooting Techniques: Understanding series and parallel contact behavior enables systematic troubleshooting approaches that can quickly identify which conditions are preventing rung execution or causing unwanted operation.

Chapter 2: Output and Coil Symbols

Output Coil Symbols

Output coils represent the actions taken when ladder logic conditions are satisfied, energizing physical outputs or setting internal memory bits to control equipment and system states.

Standard Output Coil: The basic output coil appears as a circle or oval on the right side of ladder rungs, representing an output that energizes when the rung logic is TRUE and de-energizes when FALSE. This symbol directly corresponds to physical outputs or internal memory bits.

Latched Output Coil: Also called a SET coil, this symbol (typically shown as a circle with an 'S' inside) energizes an output that remains energized even after the rung logic becomes FALSE. Latched outputs require separate RESET logic to de-energize them.

Unlatched Output Coil: The RESET coil (typically shown as a circle with an 'R' inside) de-energizes a latched output when the rung logic becomes TRUE. RESET coils are used in conjunction with SET coils to create maintained memory functions.

Negated Output Coil: Some PLC platforms provide negated output coils that energize when rung logic is FALSE and de-energize when logic is TRUE. These coils provide convenient inverse logic operation for specific applications.

One-Shot Output Coils: These specialized coils energize for only one scan cycle when rung logic transitions from FALSE to TRUE, regardless of how long the input conditions remain TRUE. One-shot coils are useful for triggering actions that should occur only once per input transition.

Retentive Outputs: Some systems provide retentive output coils that maintain their state through power cycles and program downloads. These coils are useful for maintaining critical system states during power interruptions or system updates.

Internal Memory and Flag Symbols

Internal memory bits and flags provide temporary storage and logic control capabilities that don't directly control physical outputs but enable complex program logic and data management.

Internal Relay Bits: These memory locations appear as standard coil symbols but address internal memory rather than physical outputs. Internal relays enable complex logic operations, temporary data storage, and program flow control without affecting external devices.

System Flag Bits: PLCs provide system-generated flags including first scan bits, always-on bits, clock pulses, and diagnostic flags that programs can use for timing, initialization, and system monitoring functions.

User-Defined Flags: Programmers can create custom flag bits for specific application needs including sequence step tracking, mode selection, alarm acknowledgment, and inter-routine communication.

Timer and Counter Done Bits: Timer and counter instructions generate done bits that programs can use as contacts in other logic rungs. These bits provide indication when timing or counting operations have completed.

Communication Status Bits: Network communication instructions typically provide status bits indicating communication success, failure, or progress that programs can monitor for diagnostic and error handling purposes.

Alarm and Diagnostic Bits: Many applications use internal bits to track alarm conditions, diagnostic states, and system health indicators that operator interfaces can monitor and display.

Chapter 3: Timer and Counter Symbols

Timer Symbols and Functions

Timer symbols in Ladder Logic represent time-delay functions that are essential for controlling sequential operations, providing delays, and implementing time-based control strategies.

Timer On-Delay (TON): The most common timer function provides a time delay before energizing its done bit. The TON timer starts timing when its enable input becomes TRUE and sets its done bit when the accumulated time equals the preset value.

Timer Off-Delay (TOF): This timer provides a time delay before de-energizing its done bit. The TOF timer's done bit is normally TRUE and de-energizes for the preset time period after the enable input becomes FALSE.

Retentive Timer (RTO): The retentive timer maintains its accumulated time value even when the enable input becomes FALSE. RTO timers continue accumulating time each time the enable input becomes TRUE until reset by separate reset logic.

Timer Symbol Representation: Timer symbols typically appear as rectangular blocks containing timer type designation (TON, TOF, RTO), preset value, accumulated value, and enable/reset inputs. Output connections include done bits and timing bits.

Timing Base Selection: Timers can typically operate in different time bases including seconds, deciseconds (0.1 seconds), centiseconds (0.01 seconds), or milliseconds, allowing precise timing control for different applications.

Timer Status Bits: In addition to done bits, timers typically provide timing bits (TRUE while timing is active) and enable bits that programs can use for advanced timing logic and diagnostic purposes.

Counter Symbols and Applications

Counter symbols represent counting functions that track events, quantities, or cycles in automated systems, providing essential functionality for production counting, batch operations, and sequence control.

Count Up (CTU): The count-up counter increments its accumulated value each time its count input transitions from FALSE to TRUE. The CTU counter sets its done bit when the accumulated count equals or exceeds the preset value.

Count Down (CTD): The count-down counter decrements its accumulated value on each FALSE-to-TRUE transition of its count input. The CTD counter sets its done bit when the accumulated count reaches zero.

Count Up/Down (CTUD): This bidirectional counter can both increment and decrement its accumulated value based on separate up-count and down-count inputs. CTUD counters provide flexible counting functionality for complex applications.

Counter Symbol Components: Counter symbols typically show counter type, preset value, accumulated value, count input, reset input, and output status bits including done and overflow conditions.

Preset Value Configuration: Counter preset values can typically be constants entered during programming or variables that can be modified during runtime to provide flexible counting parameters for different products or operating modes.

Counter Applications: Common counter applications include production counting, batch quantity control, cycle counting for maintenance scheduling, and sequence step tracking in automated processes.

Chapter 4: Mathematical and Data Manipulation Symbols

Arithmetic Operation Symbols

Mathematical operation symbols enable PLCs to perform calculations required for process control, data analysis, and advanced automation functions that go beyond simple on/off logic.

Addition (ADD) Blocks: Addition function blocks add two or more input values and place the result in a destination address. ADD blocks typically show input addresses (A and B) and output address (Destination) with overflow status indication.

Subtraction (SUB) Blocks: Subtraction blocks subtract one input value from another and store the result. These blocks are commonly used for calculating differences, remaining quantities, and error values in control applications.

Multiplication (MUL) Blocks: Multiplication blocks multiply input values and store products, enabling calculations for scaling, unit conversions, and complex mathematical relationships in control algorithms.

Division (DIV) Blocks: Division blocks divide one input by another with provisions for handling division by zero errors. Division functions are used for averaging, ratio calculations, and unit conversions.

Advanced Math Functions: Modern PLCs support trigonometric functions (SIN, COS, TAN), logarithmic functions (LN, LOG), exponential functions, and square root operations for sophisticated calculation requirements.

Data Type Considerations: Mathematical operations must consider data types including integer, floating-point, and double-precision values to ensure calculation accuracy and prevent overflow conditions.

Comparison Operation Symbols

Comparison operations enable programs to make decisions based on numerical relationships between values, providing the logic needed for process control and system monitoring.

Equal (EQU) Blocks: Equal comparison blocks compare two input values and energize their output when the values are equal. EQU blocks are commonly used for setpoint comparison and state detection.

Not Equal (NEQ) Blocks: Not equal blocks energize their outputs when input values are different, providing inverse logic for equal comparisons and alarm detection applications.

Greater Than (GRT) Blocks: Greater than comparisons energize outputs when the first input value exceeds the second input value, enabling high-limit detection and process control logic.

Less Than (LES) Blocks: Less than blocks energize outputs when the first input is less than the second input, providing low-limit detection and minimum value enforcement.

Greater Than or Equal (GEQ) and Less Than or Equal (LEQ): These blocks provide inclusive comparisons that are useful for range checking and tolerance-based control applications.

Comparison Applications: Comparison operations are essential for analog process control, alarm detection, quality control, and automated decision-making based on measured values and calculated results.

Data Movement and Conversion Symbols

Data movement and conversion functions enable programs to transfer information between different memory locations and convert data between different formats and types.

Move (MOV) Instructions: Move instructions copy data from source addresses to destination addresses, enabling data transfer between different memory areas and program routines.

Copy (COP) Instructions: Copy instructions transfer blocks of data from source arrays to destination arrays, providing efficient bulk data movement for recipe management and batch operations.

File Fill (FLL) Instructions: Fill instructions load the same value into multiple consecutive memory locations, useful for initializing arrays and clearing data blocks.

Data Conversion Functions: Conversion instructions change data between different formats including integer-to-floating-point, BCD-to-binary, and ASCII-to-numerical conversions required for interfacing with different devices.

Bit Manipulation Instructions: These functions operate on individual bits within data words, enabling packed data handling and efficient memory utilization for digital I/O and status information.

String Manipulation Functions: Text processing functions enable programs to handle alphanumeric data for operator messaging, recipe names, and communication with business systems.

Chapter 5: Advanced Function Block Symbols

Communication Function Symbols

Communication function blocks enable PLCs to exchange data with other devices, systems, and networks, providing the connectivity required for modern integrated automation systems.

Message (MSG) Blocks: Message instructions enable communication with other PLCs, operator interfaces, and computer systems using various protocols including Ethernet/IP, Modbus, and proprietary communication methods.

Serial Communication Blocks: These functions handle RS-232, RS-485, and other serial communication protocols for interfacing with older equipment, instruments, and specialized devices that don't support network communication.

Network Read/Write Functions: Dedicated network functions optimize data exchange with other network devices, providing efficient methods for sharing real-time process data and status information.

Protocol-Specific Blocks: Many PLCs provide function blocks optimized for specific protocols including Profinet, DeviceNet, Foundation Fieldbus, and HART communication standards.

Communication Status Monitoring: Communication functions typically provide status outputs indicating communication success, failure, or progress, enabling programs to handle communication errors appropriately.

Data Formatting Functions: Communication often requires data format conversion between different device requirements, including byte swapping, bit ordering, and protocol-specific formatting.

Process Control Function Symbols

Advanced process control functions provide sophisticated algorithms for precise control of continuous processes, enabling automated systems to maintain optimal performance.

PID Control Blocks: Proportional-Integral-Derivative control blocks implement closed-loop control algorithms for temperature, pressure, flow, level, and other continuous process variables.

Lead/Lag Compensation Blocks: These advanced control blocks provide dynamic compensation for process delays and response characteristics, improving control loop performance.

Dead Time Compensation: Dead time blocks compensate for delays in process response, enabling more aggressive control tuning and better disturbance rejection.

Cascade Control Functions: Cascade control blocks implement multi-loop control strategies where one controller's output provides the setpoint for another controller, improving control of complex processes.

Feedforward Control Blocks: These functions provide predictive control actions based on measured disturbances, enabling faster response to process upsets.

Statistical Process Control: SPC functions calculate control limits, capability indices, and trend analysis for quality control and process optimization applications.

Safety and Diagnostic Symbols

Safety and diagnostic function blocks provide the monitoring, protection, and analysis capabilities required for safe and reliable automated system operation.

Safety-Related Instructions: Safety PLC platforms may provide certified instructions for approved safety architectures. A block name or symbol alone does not create a safety function: hardware, wiring, logic, signatures, verification and validation must follow the selected platform manual and the approved safety lifecycle.

Diagnostic Data Collection: Diagnostic functions monitor system health parameters including scan times, memory usage, communication status, and I/O module health.

Alarm Management Blocks: Alarm functions detect abnormal conditions, prioritize alarms, track acknowledgment status, and manage alarm suppression during startup and shutdown operations.

Equipment Protection Functions: These blocks monitor equipment operating parameters and automatically shut down or reduce loading when conditions exceed safe operating limits.

Fault Detection and Isolation: Advanced diagnostic functions automatically identify and isolate faults to minimize system disruption and provide specific fault information for maintenance personnel.

Predictive Maintenance Functions: These blocks analyze equipment performance trends to predict maintenance requirements before failures occur, reducing unplanned downtime and maintenance costs.

Chapter 6: Symbol Programming Best Practices

Program Organization and Documentation

Effective use of Ladder Logic symbols requires systematic organization and comprehensive documentation that enables efficient programming, troubleshooting, and maintenance throughout system lifecycles.

Logical Grouping: Organize ladder logic into functional groups including inputs, main control logic, outputs, alarms, and diagnostics. This organization makes programs easier to understand and maintain.

Consistent Naming Conventions: Establish and maintain consistent naming conventions for addresses, symbols, and functions that clearly indicate their purpose and function within the control system.

Comprehensive Comments: Document the purpose of complex logic sequences, safety interlocks, and unusual programming techniques using clear, concise comments that explain both what the logic does and why it's necessary.

Cross-Reference Documentation: Maintain cross-reference tables that show where specific addresses and functions are used throughout the program, enabling quick identification of all related logic during troubleshooting.

Version Control: Implement systematic version control procedures that track program changes, modification dates, and the reasons for changes to maintain program integrity and enable rollback when necessary.

Standardized Layouts: Develop and follow standardized layouts for common control functions including motor starters, valve controls, and safety interlocks to improve program consistency and reduce development time.

Symbol Selection and Usage Guidelines

Proper symbol selection significantly impacts program readability, troubleshooting efficiency, and long-term maintainability of Ladder Logic programs.

Contact Type Selection: Choose a contact instruction from the Boolean condition the program must test. Then document how that Boolean relates to physical NO/NC wiring, healthy state, de-energized state and diagnostics. Do not select a normally-closed-style instruction merely because the field device is a stop or safety input.

Output Strategy: Choose appropriate output types including standard coils for immediate outputs, latched coils for maintained functions, and one-shot coils for triggering actions that should occur only once per input condition.

Timer and Counter Application: Select appropriate timer types (TON, TOF, RTO) based on application requirements and use counters efficiently to minimize memory usage and improve program performance.

Function Block Usage: Use function blocks for complex mathematical operations, communication, and advanced control algorithms while maintaining clear interfaces and error handling.

Memory Optimization: Organize memory usage efficiently by grouping related functions and using appropriate data types to minimize memory requirements and improve program performance.

Error Handling: Implement appropriate error handling for mathematical operations, communication functions, and other operations that might fail, ensuring safe system behavior under all conditions.

Troubleshooting and Maintenance Strategies

Understanding Ladder Logic symbols enables effective troubleshooting strategies that quickly identify and resolve control system problems.

Systematic Diagnosis: Follow logical troubleshooting procedures that start with understanding the intended operation, identifying symptoms, and systematically checking conditions that might prevent proper operation.

Online Monitoring: Use PLC programming software online monitoring capabilities to observe symbol states in real-time, enabling quick identification of logic paths that are or are not executing as expected.

Force Functions: Follow the site's approved force procedure, authorization and removal checks. A force can bypass normal program intent; use it only with the equipment in a controlled condition and never treat a standard force as a safety-test method.

Historical Data Analysis: Use data logging and historical trending capabilities to identify intermittent problems and system performance degradation that might not be apparent during normal monitoring.

Documentation Updates: Maintain current documentation including logic changes, parameter modifications, and operational procedures to ensure accurate troubleshooting information.

Preventive Maintenance: Implement systematic preventive maintenance procedures for programs including backup verification, memory usage monitoring, and performance analysis to prevent problems before they affect operations.

Conclusion: Mastering Ladder Logic Symbols for Programming Excellence

Ladder Logic symbols provide the visual vocabulary that enables effective communication between programmers, technicians, and control systems. Mastering these symbols is essential for anyone working with PLCs, from entry-level technicians learning their first programming concepts to experienced engineers designing sophisticated control systems.

The comprehensive understanding of symbols presented in this guide provides the foundation for reading, creating, and maintaining Ladder Logic programs that control the automated systems powering modern manufacturing. Each symbol category—from basic contacts and coils to advanced function blocks—contributes to the complete toolkit needed for effective industrial control programming.

Remember that symbols are tools for implementing control strategies, not ends in themselves. The real value lies in understanding how to combine symbols effectively to create control logic that meets application requirements while maintaining safety, reliability, and maintainability throughout system lifecycles.

Effective use of Ladder Logic symbols requires balancing functionality with simplicity, leveraging advanced capabilities when they add value while maintaining program clarity for future maintenance and modification. The best programs use symbols efficiently and consistently to create control logic that performs reliably while remaining understandable to others.

Continue developing your symbol knowledge through hands-on practice, formal training, and exposure to different applications and programming approaches. The investment in mastering Ladder Logic symbols will provide career-long benefits through improved programming efficiency, faster troubleshooting capabilities, and enhanced ability to create control systems that meet demanding industrial requirements.

The future of industrial automation continues to build on the foundation of Ladder Logic programming, making symbol mastery a valuable and enduring skill that opens doors to rewarding careers in industrial automation and control systems engineering.

Primary Sources and Scope

This guide and downloadable chart were reviewed on July 26, 2026 against the following primary documentation:

The chart is a platform-neutral learning aid, not a reproduction of the IEC standard or a vendor editor. Timer reset behavior, retentivity, edge storage, execution order, data conversion and duplicate-output behavior must be verified for the selected CPU, engineering software and firmware.

#LadderLogic Symbols#PLCSymbols#ProgrammingReference#IECStandards#SymbolLibrary
Share this article:

Related Articles