As system integrators, one of DMC’s primary goals is to be as efficient as possible when developing and deploying systems for our clients. The old-school method of sitting beside a machine to perform PLC testing is effective but inefficient. Studio 5000 Logix Emulate took the first steps towards moving us away from needing a fully built machine to test our code against, but it had limitations that often meant you still needed to test against real hardware.
Enter FactoryTalk Logix Echo. Released by Rockwell Automation in 2021, Logix Echo is a full-fidelity PLC emulation tool that allows you to directly download and test any modern Rockwell PLC project – no controller or I/O changes required! This emulator behaves exactly as if it were a physical PLC sitting on your desk, which allows for significant testing of your PLC logic before you ever connect to the real machine. In cases where your project necessitates some form of digital twin – whether it be minimal I/O simulation or a full-fidelity machine model – tools like Emulate3D and Simulink can integrate with Logix Echo to provide full virtual commissioning functionality.
At DMC, we make heavy use of FactoryTalk Logix Echo every day to allow Automation engineers in any of our offices to program and test PLC code before deployment for our customers. To do this, we set up a centralized Logix Echo server that many users can access at once. This blog will walk through the process of setting up a FactoryTalk Logix Echo server, creating an emulated PLC, downloading PLC programs, and connecting your simulated PLC to external Rockwell applications.
Using FactoryTalk Logix Echo on a server can support lots of developers at once.
Step 1: Set Up Your Server
Server Performance
Before you get started, make sure you have the right IT hardware for the job. From testing, we’ve found that each emulated PLC likes to take up one entire processor core and around 1GB of memory on the host computer. Excessive numbers of emulated PLCs on an undersized server can quickly lead to performance issues or cause some PLCs to lose their onboard programs. At DMC, we got around this problem by using a virtualized server with the following critical stats:
- Windows Server 2022
- Intel Xeon processors @ 2.30 GHz
- 36 GB RAM
- 24 (virtual) processor cores
These stats work very well for us right now, but having a virtual server allows us to quickly add or remove processing resources as necessary to keep up with our customers’ project needs.
Network Provisioning
Since your Logix Echo server will be hosting many PLCs at once, it’s likely you’ll want to assign a unique IP address to each PLC. Fortunately, there’s a way to do this without running bundles and bundles of Ethernet cable to the same server! We’ve taken advantage of Windows’ ability to assign multiple IP addresses to the same physical Ethernet port on a PC.
To do this, open the adapter properties for your (virtual) server’s network adapter, navigate to the IPv4 settings, and click the “Advanced” button on the bottom-right corner of the pop-up window. The “Advanced” pop-up window that opens allows you to add an arbitrary number of IP addresses. The server at DMC has over 10 IP addresses all running off the same physical Ethernet connection! This gives us a large pool of IP addresses to use when spinning up a brand-new Logix Echo PLC.
Once you have your server configured properly, install FactoryTalk Logix Echo using Rockwell’s install wizard.
Step 2: Add a Controller to Your Server
Now that we’ve got Logix Echo installed, it’s time to go ahead and set up our first emulated PLC! To do this, we’ll use the FactoryTalk Logix Echo Dashboard::
The left-hand toolbar on the Logix Echo dashboard shows a list of all emulated PLCs that have been created on the server. Emulated ControlLogix controllers are hosted in a virtual chassis, just like a physical ControlLogix. Emulated CompactLogix controllers do not belong to a chassis.
To add a new controller (or chassis) to your Logix Echo server, right-click in any white space in the Devices toolbar or press the hamburger button on the top right-hand corner of the toolbar.
Choosing “Add controller” will open a configuration pop-up window. Here, you will pick the controller type and firmware version, give your controller a name, and assign it to a chassis slot (if it’s a ControlLogix).
Note that at the time this blog was published, only the following PLCs are available for emulation with Logix Echo:
- ControlLogix 5580 controllers
- GuardLogix 5580 controllers
- CompactLogix and Compact GuardLogix 5380 controllers
Before hitting “Add,” the last step is to assign an IP address to your controller. If you’ve assigned lots of IP addresses to your Echo server using the steps above, they will all appear in the drop-down menu here.
Once your controller has been added to the server, you can always go back and edit its properties by double-clicking on the device in the “Devices” toolbar on the left-hand side. This will open a status page on the main window of the dashboard where you can:
- Cycle controller “power”
- Change the controller’s name and IP address
- Change the assigned chassis or slot (for ControlLogix controllers only)
- Attach or detach a simulated SD card to your controller
- Yes, really! Logix Echo creates a folder on your server that emulates file storage on an SD card connected to a physical controller – you use all the functions of a real SD card in your emulated PLC environment.
- The server storage location for the emulated SD card is in
C:\ProgramData\Rockwell Software\FactoryTalk Logix Echo\Controllers\<your_controller>\Root\sd
Step 3 – Connect to Your Echo PLC and Get Programming!
The next series of steps should be familiar to any Rockwell PLC programmer – since your emulated PLC is running and has an IP address, you should be able to browse it using FactoryTalk Linx. To make things easy for myself, I’ve created a whole Ethernet driver in FactoryTalk Linx specifically to browse for Logix Echo PLCs on DMC’s server. Keeping the Logix Echo PLCs segregated from physical ones in my Linx browser helps me remember what I’m connected to.
Once your emulated PLC shows up in FactoryTalk Linx, you’ll notice that it will have a model number of 9310-WED300ENT
. Don’t panic! You can still download your ACD file without needing to change the controller type in your project – just make sure the firmware version of your project matches the firmware running on your Logix Echo PLC.
Once you confirm you can successfully locate your PLC in FactoryTalk Linx, you should be able to perform the following Linx-based tasks:
- Connect and download an ACD file using FactoryTalk Logix Designer
- Create a shortcut to the PLC inside a FactoryTalk View ME or SE application
- Expose PLC tags to third-party software via OPC-UA using FactoryTalk Linx Gateway
- Configure scheduled PLC program backups using FactoryTalk AssetCentre
We’ve used all these functions – plus plenty more advanced Logix Echo tricks – to continue to deliver quality solutions for customers.
For more information on FactoryTalk Logix Echo, check out Rockwell’s Getting Results Guide or this helpful Knowledgebase Article explaining the differences between FactoryTalk Logix Echo and Studio 5000 Logix Emulate. Of course, you can also always reach out to DMC and see how we can help you use these tools to bring your project to life!