The short answer
Control Expert
Control Expert is the engineering environment for the Modicon M340, M580, and the Unity-generation Quantum, Premium, and Momentum controllers, and it is the same product that was called Unity Pro until version 14. A project holds the hardware configuration, the variables with their data types, the derived function block library, the program sections in any of the five IEC 61131-3 languages, and the animation tables and operator screens used for testing. The version of the software must suit the controller firmware and the project file, which is why a plant keeps a record of which version built each controller and a machine that can run it. The decisions that matter most later are whether the application was downloaded with upload information, whether the project archive was stored with the site documentation, and whether the derived function blocks were written once and reused.
Key points
- One product, two names: Unity Pro through version 13, Control Expert from version 14.
- Five IEC 61131-3 languages plus derived function blocks and derived data types for reusable site libraries.
- Project files are version-sensitive; keep archives and a machine with the matching version.
- Upload information downloaded with the application is what lets the next engineer recover it from the controller.
- Application passwords, section protection, and the controller access settings are set here; write them down.
Project structure
- Hardware configuration
- The racks, modules, and communication settings, chosen from the catalog; the I/O addressing follows from the slot positions.
- Variables
- Elementary and derived data types, located or unlocated; a located variable maps to an address for communication with SCADA and other controllers.
- Derived function blocks
- User blocks with inputs, outputs, and internal logic, instanced wherever they are needed; the pump, valve, alarm, and PID wrappers of a site library.
- Program
- Tasks containing sections in ladder, function block, structured text, instruction list, or sequential function chart; sections execute in order within a task.
- Animation tables and screens
- Engineering tools for watching and forcing variables and for simple test screens; not the operator interface.
- Communication
- Ethernet and serial configuration, I/O scanning tables, and, for Ethernet I/O, the device configuration through the device type manager browser.
Versions and files
| Item | Notes |
|---|---|
| Software version | Must support the controller firmware; a newer software version can usually open older projects, and a controller may need a firmware update for a newer version |
| Working project file | Tied closely to the version that saved it |
| Archive file | The portable form; keep one with the site documentation after every change |
| Export files | Text exports of sections and variables, useful for comparison and for moving logic between projects |
| Editions | Licensed by the range of controllers supported; the edition on the laptop must cover the controller on site |
Online and download
A full download stops the controller, loads the application, and restarts it, which at a running plant is planned with the operators. An online change builds only the modified sections and applies them without stopping, subject to limits on what can change online; a hardware change or a change to a located variable often requires a full download. Before either, the running application is uploaded and archived, so that the state before the change exists somewhere other than the controller.
Upload information
When an application is downloaded, the project can include the information needed to rebuild it from the controller: variable names, comments, and section structure. Without it, an upload recovers the logic in a form nobody can maintain. The option costs controller memory and is the single most valuable setting for the plant that will own the system for twenty years. Set it, and store the archive anyway.
Security settings
- Application password, required to open the project and, depending on settings, to connect to the controller.
- Section protection, which hides or locks sections of logic.
- Controller access settings: which services are enabled, access control lists on the M580, and the firmware protections.
- All of them recorded in the site documentation in a secure place; a password nobody remembers is a controller nobody can maintain.
Habits that pay off
- A site library of derived function blocks, documented, tested once, and used everywhere.
- Naming conventions for variables that match the tag database and the drawings.
- Comments on every section stating what it does and which narrative paragraph it implements.
- An archive after every change, named with the date and the change, in the engineering library and the offline backup.
- A record of software version, controller firmware, and license for every controller.
Frequently asked questions
- Can Control Expert open a Unity Pro project?
- Generally yes, the archive from an older version opens in a newer one and is converted on save. The reverse is not possible. Keep the original archive before converting.
- The controller says the project does not match. What does that mean?
- The application in the controller differs from the project open on the laptop: a later change, a different build, or a different project. Upload the controller application and compare before downloading anything.
- Where is the operator interface built?
- Not here. Control Expert builds the controller application; the operator screens are in the SCADA or HMI software. The operator screens in Control Expert are engineering test tools.
- How do I move a pump block from one plant project to another?
- Export the derived function block and its data types from one project and import them into the other, or maintain the site library as a separate exported file that every project imports. A block copied by hand drifts.
Related topics
- Unity ProField notes on Unity Pro, the earlier name of Control Expert and the software behind most installed Modicon M340, Quantum, and Premium applications: versions, moving projects to Control Expert, keeping an old version alive, and the Concept and PL7 originals.
- Modicon M580Field notes on the Schneider Electric Modicon M580, the Ethernet-backplane controller at the top of the range: remote I/O drops on a ring, hot standby CPUs, built-in security features, the networks it defines, Quantum migration, and what to check on site.
- IEC 61131-3The standard behind PLC programming languages: the five languages, the common elements of data types, variables, and program organization units, what conformance actually means, and how the standard shows up in real platforms.
- Program OrganizationStructuring a controller program so that someone else can maintain it: a layout that follows the plant, one routine per job, standard device blocks, I/O mapped in one place, a fixed execution order, naming that means something, and comments that say why.
- PLC Program BackupsWhat a complete controller backup contains, how often to take one, where to keep it, why the upload from the running controller is not the master, and the verification that turns a folder of files into a recovery plan.
- Controller Program IntegrityKnowing that the program in the controller is the one that was approved: checksums and change counters, the scheduled compare against the trusted backup, signed and protected projects, what an unexplained difference means, and making the check routine.
Direct contact
Have a controls question?
Reach Eric Sullivan directly about anything on this site, a controls or automation topic, or one of his personal projects.