Software emulation primarily helps determine whether the controller and human machine interface are communicating properly, says Tim Gellner, director of operational consulting at Maverick Technologies in St. Louis. He says software emulation helps identify potential control problems upfront and shortens the machines start-up time and provides a good platform for operator training.
On PLC projects, and some DCS projects where staging is employed, we normally write loop-back code in the controller, says Gellner. It essentially feeds the state of an output back to the inputs associated with it. For example, when a valve is commanded to open from the HMI, the associated valve output is fed back to the open limit switch to indicate on the HMI that the valve opened. It also allows us to check the logic to ensure that it performed as required. With the advent of PC-based, or soft, controllers that run under that same development environment as the hard PLC controllers, we can load the program developed for the hard PLC into a soft controller, add the loop-back code in the soft controller, test the program and its interaction with the HMI without having the actual hard PLC or making any modifications to the original program.
An example of this was an expander turbine start-up Maverick did a few years back. When we got to the site the PLCs ControlLogix program was incomplete and obviously untested, says Gellner. We were not responsible for the PLC programming, but because of the propensity of the expander to upset the process, which could result in explosions, we set up a SoftLogix controller, loaded the PLC program, added some very extensive loop-back code, connected it to the HMI and shook out the wrinkles before we put it online. Explosion avoided.
Read June's cover story Will The Machine Work? to find the best test methods for proving your machine operation.