Back to tutorials

How to Create a PLC Backup for a ControlLogix Controller

Jacques Venter
July 2, 2020
Table of Contents


Disaster recovery and emergency preparedness are key responsibilities part of any C&I Technician or Engineer’s portfolio. When disaster strikes, the extent to which one is prepared for the situation will ultimately decide how positive the outcome will be. Having PLC backups in place, in this instance, is the best way of preparing for a disaster.

In a processing environment, the focus is on production and thus downtime must be minimized as far as possible when a failure occurs. This means that your PLC backups must be easily accessible and up to date. There are more reasons for backups than just for failures and disaster recoveries, as we will explore in this tutorial.

The goal of this tutorial is to explain in detail how to create software backups in an RSLogix 5000/Studio 5000 environment. Keep in mind that the ideas and concepts that we’ll explore can be used with other PLCs and their applicable software applications.

PLC’s ‘runtime’ Software

Prevention is better than cure. First, some attention must be given to reduce the chance of disaster in the form of PLC software going missing. In the L6X and L5X series of ControlLogix Controllers, an input for a backup battery is found. This was to ensure that the controller’s volatile memory (RAM) would stay energized in the event of a power failure. The reason for this is that unlike the firmware that is stored in the non-volatile memory (ROM), the PLC’s ‘runtime’ software is stored in this memory and is the logic that is executed to control the process/operation.

Performing basic maintenance by ensuring that this battery is still in a good condition is the first line of defense in ensuring that the software is not lost, in the event that a power failure should occur. With the newer range of ControlLogix controllers like the L7X and L8X series of controllers, the battery has been “replaced” by an SD card. Now it is possible to ensure that the software running on the PLC is synchronized and stored on the SD card. When the PLC boots up the logic software is loaded from this storage device. Ensuring that these types of PLCs have a functional SD card installed, in this case, is key for safe software storage when no power is applied to the controller. By making these types of inspections part of your routine PLC maintenance procedures, most power failures should not result in a disaster occurring.

Unfortunately, not all failures that occur are in the form of a normal power failure. The other types of failures may include:

  • hardware malfunctions, 
  • physical hardware damage 
  • or certain types of Major Non-recoverable faults removing the software from memory.  

Asset Management

Making backups on a regular basis of all PLCs should suffice in most circumstances. This can be in the form of doing it on a routine basis, once a week or once a month. This in turn can be stored on the workstation (computer running RSLogix 5000) for quick access when needed. Due to the possibility of a workstation failing as well, it is advised to keep a secondary backup on either a flash disk or a network-connected backup server.

In an environment where regular changes are made to the PLC software, more frequent backups might be necessary. This is due to the fact that minor changes may adversely affect the process or operation and quick reverting back to a previous version must be made possible. The best practice, in this case, is to not just keep the previous version in the form of a backup, but rather a series of backups that are timestamped.

This form of keeping backups, together with a diary of the changes that were made per revision empowers the whole team to know who made what changes when. This adds another edge when fault finding and makes it possible to quickly eliminate some faults by comparing previous revisions with current revision.

FactoryTalk AssetCentre PLC Backups

The whole asset management process can become very tedious, as the same level of discipline must be maintained by the entire team for it to be effective. It’s for this is the reason Rockwell Automation also has another software package available for these types of functions which they call FactoryTalk AssetCentre. This automates the whole procedure as outlined above. PLC software for a specific asset, or numerous PLC assets are stored in a SQL database. Every time that a Technician/ Engineer needs to work on a PLC program, it can be checked out from AssetCentre. Changes are made to the program and then checked back into the database. The changes made to the software are stored in the database, together with the newest revision of the software.

This ‘Check Out’/’Check In’ process ensures that all changes are captured and stored in the database. Every time that this process happens, a new version of the PLC project is created and the version number is tagged to the project file. This makes it possible to go through the different versions and then use the ‘Get’ function in AssetCentre to retrieve a specific version of the file. This file can then be compared with the current version, using the RSLogix5000 Compare Tool, to retrieve a report on the differences between the selected and current version. If an older version should be identified as the version that should be used going forward, the functionality is also there in AssetCentre to ‘Promote’ a version to the current version.

Apart from this, schedules can also be created which instructs the application/service to make daily backups of the PLC files. Scheduled searches may also be added, which entails a comparison with the software currently in the PLC against the last backup revision. Any changes detected may then be sent via email in a detailed report, showing which changes were made and also in which routine it was made.

Creating a PLC backup in RSLogix5000

As stated from the onset, disaster recovery of a PLC necessitates backups. It is ideal to have asset management software in place to create these backups. In most cases, this type of software is not available and manual backups must be made. The procedure to make a PLC backup is as follow:

Step 1 – Go online with the PLC

  • Open the PLC project file with the RSLogix 5000 application.
  • Go Online with the PLC, selected from the controller options dropdown.

Note: If a Window pops up showing that the offline file and online files differ, either select the most recent file and try to go online again, or upload from the PLC to get the most recent software running on the PLC.

Step 2 – Save a backup

  • Click on File and select Save As
  • The ‘Save As’ Window appears.
  • Browse to the folder where you want to save the file and give it a file name like ‘myPLC_Backup_CurrentDate’

Step 3 – Ensure the backup has the latest variable values

  • Click on Save
  • A window pops up asking to upload tag values before saving.
  • Select ‘Yes’. This will ensure that the latest values for the variables are loaded into the project. Where this matters, is where you may have parameters that are adjusted from an HMI or SCADA and you want these latest operator configurations to be backed up as well.

Step 4 – Close the application

  • The backup has now successfully been made
  • Select ‘Go offline’ to disconnect from the controller.
  • Close the application.

Restoring a PLC Backup in RSLogix 5000

Now that a backup has been made, it is useful to go through the process of restoring this backup. As stated previously, this may be done when failures have occurred or if the need arises to revert to a previous version. It is also worth mentioning, that a backup may be used to change bulk PLC code that can be tedious while online and may then be downloaded using the following process. 

Note: Prior to a download, all stakeholders must be notified to ensure that all personnel and machinery are safe.

Step 1 – Open the PLC project file to be downloaded

  • Browse to the PLC project file that needs to be downloaded.
  • Open the file in RSLogix 5000

Step 2 – Verify the controller

  • Select Download from the controller options dropdown.
  • The Download window appears.
  • Verify that the correct controller has been selected, by ensuring that the name, type, path, and serial number is correct.

Step 3 – Ensure that the operation is in a safe state

  • As a last check, make sure again that everyone involved is notified and that everything is safe.
  • Click on the download button in the Download window.
  • The ‘Downloading’ window appears, scrolling through all the different tags, programs, and routines being downloaded.

Step 4 – Finalize the download

  • After the download has successfully completed, the following popup appears. 
  • The controller was changed to program mode prior to the download and is still in program mode.
  • Click on ‘Yes’, to change the controller to ‘Remote Run’.
  • Save the project, go offline, and close the application.


It’s important to continuously look for ways to minizine the number of failure scenarios. Unfortunately, these can’t be totally eliminated and no matter how hard you try, failures will eventually accrue. This is why you should always make sure that your PLC backups are up to date and easily accessible to minimize downtime. In this tutorial, you learned how to create and restore PLC backup in RSLogix 5000, which is an easy enough process that you should be able to do it routinely, or you can use FactoryTalk AssetCentre to automate it.

Back to tutorials

Related Tutorials


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.

September 25, 2020
Vladimir Romanov

PLC Programming Example Project - Batching Tank Ladder Logic PLC and HMI Tutorial

Generally speaking, there are two types of processes in manufacturing: discrete and analog. A discrete process is a manufacturing methodology that will produce separate widgets. In other words, a production line may output one item, two items, three items, etc. An analog production process is where the plant will create a quantity of product that is quantifiable by weight. Examples include the production of beverages, sauces, raw ingredients, etc. Although it is possible to design a flow that will continuously output the product, such production is often managed in batches. It is important to note that although batches are considered to be analog or continuous flow, most of them end up being packaged for consumption which converts them into a discrete manufacturing process.

September 14, 2020
Vladimir Romanov
PLC Programming Career

PLC Programming Certification - Complete Guide

You may choose to pursue a traditional college degree, learn through online tutorials, or take a course that will issue a plc programming certification upon completion. However, what is the best option, and what are the best PLC programming certifications?

August 6, 2020
Vladimir Romanov