Allen-Bradley PLC Programming | Advanced Course

Allen-Bradley PLC Programming | Advanced Course

Allen-Bradley PLCs are a popular brand of automation controller used throughout the world for machine control, process control, and motion control.

In a previous RealPars course, we introduced the MicroLogix 1100 PLC and how to program this small, but full-featured CPU with a free version of programming software called RSLogix500 Micro.
In this course, we will introduce more advanced concepts in PLC programming using additional instruction types and program constructions, such as indirection, in the development of a new example program.

Allen-Bradley PLC Programming | Advanced Course
  • 1. Allen-Bradley PLC Programming - Introduction

    Allen-Bradley PLCs are a popular brand of automation controller used throughout the world for machine control, process control, and motion control.

    In a previous RealPars course, we introduced the MicroLogix 1100 PLC and how to program this small, but full-featured CPU with a free version of pro...

  • 2. Downloading “RSLogix 500” Software

    To download the RSLogix500 Micro software, go to this website:

    At the landing page, click the magnifying glass to start a search. Type in RSLogix Micro. Choose the “RSLogix Micro Starter Lite without RSLinx EN (8.30.00)”.
    Next, click “Download”, th...

  • 3. Downloading the Program File

    - Start the RSLogix 500 program and open the BALLMILL program developed in the previous course: (Right click and Save as)

    Open the Channel Configuration window to see the MicroLogix 1100 communication channels.

    Channel 0 is configured as a serial channel using the Rockwel...

  • 4. Review of Data Files and Program Files

    In the introductory course, we introduced the major data file types available in the PLC.

    Output file 0 and Input file 1 are defined to hold values from physical I/O cards.

    B3 represents a binary file.
    Each of these three file types can be addressed by word, such as B3:1, or by bit reference, ...

  • 5.Writing to EEPROM

    The MicroLogix 1100, as well as other MicroLogix PLC models, have the capability to install a memory module of up to 128 kilobytes.

    The PLC program can be written to this memory module, or EEPROM, which stands for Electrically Erasable Programmable Read Only Memory.

    The program can be written t...

  • 6. System Configuration Options

    To view the RSLogix 500 configuration options, select Tools from the main menu and then select Options.
    - The first tab lists System Preferences. On this tab, we can select AutoSave and the frequency to save the program. We can adjust items related to how symbols and comments are displayed, and a...

  • 7. Controller Properties

    There are several options for configuring the MicroLogix 1100 that can be very useful.
    - Double-click on the Controller Properties item in the project tree and then select the Passwords tab.
    If we want to protect the program, we can assign a password. We can also assign a Master Password so that...

  • 8. Search and Replace in Ladder

    As with a Word document, when RSLogix is OFFLINE, it is possible to search and replace data table addresses in the ladder file.

    Select Search in the main menu and then select Find if you want to search for where an address is used or select Replace if you want to replace one address with another...

  • 9. Appending and Inserting Rungs and Instructions

    - If we select a rung of logic and right-click, we can choose “Append Rung” which adds a new, blank rung after, or below, the rung we had chosen.
    - If we instead right-click on a rung and choose “Insert Rung”, a new, blank rung is added before, or above, the rung we had chosen.
    A similar editing ...

  • 10. The ASCII Editor

    To enter the ASCII editor mode for a rung, we double-click on the rung we want to edit, or we can select the rung and select “ASCII Edit Mode” from the Edit menu in the toolbar. we can also click on a rung and select the key combination CTRL+A.

    In ASCII edit mode, the rung is displayed as a seri...

  • 11. Creating a Cross Reference

    A Cross Reference report identifies everywhere in the ladder program that each data table address is used.
    - We can call up the Cross Reference report by double-clicking on the Cross Reference icon just below the Data File item in the project tree.
    - We can also call up the Cross Reference for an...

  • 12. Using the Database Tools

    Under Database in the program tree, there are several items that can be used to add or modify descriptions, symbols, and comments.
    - We double-click on Address/Symbol, and the “Address and Symbol Editor” opens. We can double-click on any existing symbol or address description, and an editing win...

  • 13. Using the Revision History Editor

    Whenever the program is saved, the RSLogix program gives the opportunity to add revision notes to the file so that a description of the current revision can be captured.

    Entering revision notes is not required but can be helpful later if we need to revert to a previous version.

    If these notes e...

  • 14. Reporting and Printing

    One of the most useful methods for documenting and troubleshooting PLC code is to create a report, or printout, of the ladder program, data tables, cross reference, or other aspects of the RSLogix 500 configuration.

  • 15. Report Page Layout

    We will format the page layout for the report.
    In the Layout section of the Report Options window, we see that we can define the report page title, the page header, and the page footer.
    - We select Title in the window’s menu, and see the default title is RSLogix Title. We also see that the RSLog...

  • 16. Divide by Zero in Status File

    One of the best tools for diagnosing issues and troubleshooting a PLC program is the PLC file S2, the Status file.

    The file presentation type indicates Structured, which is the format displayed. The format can be changed to Binary, Decimal, or other formats if desired.

    On the first tab, Main, t...

  • 17. Arithmetic Overflow in Status File

    A common programming fault is an arithmetic overflow. This occurs when a calculation results in a number too large for the number format. We previously indicated that the largest integer possible is 32767. If a number reaches the maximum value, the CPU faults.

    Some faults, like Low Battery, res...

  • 18. The Lane Sorter Process

    In this example project, bottles are filled and packed in cases on two parallel packaging lines. One line is used to fill small bottles and one line is used to fill large bottles.

    After the bottles are packed into boxes, they are sealed and placed on an outflow conveyor.

    The boxes must travel a...

  • 19. The Lane Sorter Project

    We will create a new project file in RSLogix 500.

    We will select the MicroLogix 1100 Series B processor.

    For this example, We will be using more I/O than is available on-board with the CPU, so we open the I/O configuration item to add one 16-point DC digital input card. For this purpose, we wan...

  • 20. Setting up the IO for the MCR Zone

    We start by setting up I/O descriptions using the Address/Symbol editor.
    We select “Add New Record” and enter the address, description, and symbol for the Emergency Stop input and Conveyor Motors 1 and 2 outputs.
    Note that we have assigned these I/O to the add-on I/O cards instead of the on-boar...

  • 21. Configuring the MCR Zone

    To demonstrate the MCR zone logic, we configure the two rungs between the MCRs, each with an output coil configured for one of the two motor outputs.

    We add one normally open and one normally closed contact to the input side of the first rung so that the MCR is disabled when either of two safety...

  • 22. The Box Detection Logic

    Two sets of proximity switches will be used to detect boxes passing by the sizing station.

    Based on the size of the box that passes the station, the system will route the box to the corresponding palletizer.

    The two sets of detection sensors help prevent unnecessary downtime should a box become...

  • 23. Enhancing the Box Detection Logic

    - Using two sets of proximity sensors ensures that boxes are correctly sized and counted, even if a sensor is not functioning correctly. However, this redundancy requires extra programming to ensure a box is not inadvertently counted by both sets of sensors.
    - When a box passes into the sizing ar...

  • 24. Duplicating the Small Box Detection Logic

    The logic for the detection of a large box should be very much the same as the logic for the detection of the small box. We assume this is the case, and we create a new rung and edit the new rung to reflect the addresses that are unique to the large box detection.

    When a large box passes through...