Back to tutorials

PLC SD Card | Load Restore PLC Program CompactLogix ControlLogix Allen Bradley Studio 5000 Tutorial

Vladimir Romanov
Table of Contents


One of the most critical steps of PLC programming is creating back-ups. This step is present at one form or another within every facility or machine builder in this world. Some programmers will save a file on their laptop, some will save a copy on a shared drive, some will rely on a server that runs FactoryTalk Asset Centre and others will utilize the SD Card feature of the current PLCs. Although it’s not the most reliable way to create a backup, it can be the most cost and time effective way to store a back-up in a small facility or a way to migrate the same program onto multiple machines.

Whatever your strategy may be, it’s important to know how to use this tool as every current CompactLogix PLC now comes with an SD card, so the back-up certainly can’t hurt.

In this tutorial, we will be exploring how you can create a full PLC back-up of a 1769-L24ER-QB1B Programmable Logic Controller onto a 1GB SD Card 1784-SD1. Furthermore, we will briefly go over why you may want to stick with this method and why you should consider certain alternatives.

SD Card Hardware Setup

There are certain requirements to using an SD card with an Allen Bradley PLC. In short, PLCs that have an SD Card slot need to have a certain level of the firmware to accept the functionality. If the PLC has a slot, it has to be at least at 19.x or later; most recent PLCs are typically 28.x and higher.

For the most part, most of the 1769-L1x, 1769-L2x, 1769-L3x, 1769-L3xx, 1756-L7x and 1756-L8x have this functionality.

In terms of official Allen Bradley SD cards, you have two options: 1784-SD1 and 1784-SD2 with 1GB and 2GB of memory respectively. Off-brand SD cards have been confirmed to work, but aren’t supported by the manufacturer. Use them at your own risk.


The PLC will have to be in “Program” mode for the user to be able to work with the SD card. The two options are to either set the switch to “program” mode on the hardware or to set the PLC to “remote program” mode while the switch is in the “remote” position on the PLC. For this tutorial, we have set the switch to the “REM” or “remote” position on the PLC as shown above.

Load and Store Functionality through Studio 5000

Now that we’ve set our hardware into the right mode, we can open Studio 5000 and connect to the controller. By going into “Controller Properties” by double-clicking the PLC name in the IO tree on the left side, we can view the SD Card properties. These are found within the Nonvolatile Memory tab.

Within this tab, the user is given the information about the current SD card inserted into the PLC. It’s important to note that if there’s no information displayed and/or there’s a warning message at the bottom of this screen, the SD card may not be suitable for your PLC. Follow the statements of the warning message to correct the issue. As mentioned previously, use off-brand SD cards at your own risk.


The final warning you should receive, as shown above, is that the Controller must be in program mode in order to proceed. By setting the PLC to program mode, the user is given access to the Load and Store button and functionality. This button is displayed above in the top right corner of the tab.

Once the button is pressed, another window is presented to the user. This window is split into two sections. On the left side, the information with regards to the SD card is shown, on the right side, the matching information with regards to the PLC is displayed. By presenting the information in this format, it’s easy for the user to compare key parameters about the two pieces of hardware.


A key dropdown selection menu is available on the PLC side: Load Image. From this dropdown, the user may change at which point the PLC will load the image from the SD card onto its memory. The three options available are as follows:

  1. Load the program on user input – In this mode, the only way to load the program is through this menu.
  2. Load the program on power up – In this mode, the PLC will load the program regardless of what’s in its memory on every boot-up sequence.
  3. Load the program on uninitialized memory – In this mode, the PLC will only load the program from the SD card if it has no program in its own memory. You may trigger this by resetting the PLC via the button below the switch on the front plate.

Store Program onto SD Card – At the bottom of the screen, you’ll find a button labeled as “<- Store”. By pressing this button, the user will initiate a program save from the PLC onto the SD card. the user will be disconnected from the PLC during the transfer.

Send Program to the PLC – The opposite of the action above is to transfer the program from the SD card onto the PLC. By pressing the “Load ->” button, the program is sent from the SD card to the PLC and the controller is rebooted.

Saving Programs on SD cards

Most CompactLogix and new ControlLogix PLCs are shipped with an SD card. Once you’re done programming the PLC, it’s advised to store the program onto the SD card. In the rare case that the PLC loses the program, it’s easy to restore what was saved on the SD card onto it. However, we’ve never seen this happen with new PLCs. Perhaps it’s a protection against others modifying code unnecessarily.

If you’re looking for a solution to save your programs, you should be looking into FactoryTalk Asset Centre. This enterprise solution from Rockwell Automation allows the plant to create back-ups of all their assets, restore them as needed and keeps track of who’s utilizing certain programs. In other words, it’s a solution  similar to GitHub.


Working with an SD card is straightforward. From the Studio 5000 interface you can either transfer the program to the SD card from the PLC or from the SD card to the PLC. This method of program back-up is effective when it comes to restoring an application in case of a fault or when the same program has to be reapplied to multiple machines.

It’s recommended to use this method with every PLC that comes with the hardware. However, a mature manufacturing environment should employ an enterprise solution that goes beyond this functionality. An excellent software package to consider is the FactoryTalk Asset Centre.

Video Tutorial

Back to tutorials

Related Tutorials


MicroLogix 1100 RSLogix 500 External IO PLC Programming Tutorial

The MicroLogix 1100 PLC is still heavily used in the industry and is one of the most recommended PLCs for learning PLC programming. The MicroLogix 1100 PLC is compact, offers a variety of I/O configurations and is inexpensive relative to other Rockwell options. Furthermore, the MicroLogix 1100 PLC is programmable using the free version of RSLogix 500 that can be downloaded from the official Rockwell website.

Vladimir Romanov

PLC Simulator - PLC Programming & Testing within a Simulated Environment

A PLC Simulator is an excellent avenue to practice PLC ladder logic programming. Although the software environment is not the perfect substitute for hands on experience on an actual PLC, the simulation delivers a very accurate representation of ladder logic execution.

Vladimir Romanov

HMI Software - Different Tools, Applications and Solutions to Meet Your Needs

HMI Software is commonly referred to as the development application that will be used to create the runtime application for an HMI terminal. It’s important to understand this distinction as we will be going over the HMI development environments used by PLC and HMI programmers to create the screens rather than the end-user applications you will see at the plant level.Numerous HMI programming software solutions are found on the market. Although they aim to achieve the same result, different packages have a distinct advantage over others in terms of price, reliability, ease-of-use and technical capability. It is therefore possible to find the right solution that will fit your specific application if you spend the time to research all options.

Vladimir Romanov