Controller Adapts without a Process Model
Theoretically, all information that a feedback controller requires to regulate a continuous process is contained in the process input and output (I/O) data. A PID controller can be manually tuned by analyzing the I/O data from a series of step tests. A self-tuning controller can automatically select its own tuning parameters by analyzing a process model derived from the step test data.
Theoretically, all information that a feedback controller requires to regulate a continuous process is contained in the process input and output (I/O) data. A PID controller can be manually tuned by analyzing the I/O data from a series of step tests. A self-tuning controller can automatically select its own tuning parameters by analyzing a process model derived from the step test data. An adaptive controller can do the same online, using whatever input/output data happen to be available.
All three techniques employ dynamic models of the process in order to distill the process' behavior into a set of convenient mathematical formulas. Even the cookbook tuning techniques pioneered by Ziegler and Nichols are based on the implicit assumption that the process behaves according to a first-order differential equation with deadtime.
Why use a mode
It seems to me, however, that there should be a way to compute control actions directly from the I/O data without first creating any model at all. The necessary information is already there; it should just be a matter of crunching the numbers correctly. The engineers at CyboSoft, a division of General Cybermation Group (Rancho Cordova, Calif.) share that opinion. In fact, they claim to have designed a "dream controller" that can regulate time-varying, multivariable processes without mathematical models or tuning procedures. They call it CyboCon.
CyboCon runs on a PC or a workstation and interfaces to most major PLCs and DCSs. It analyzes a history of control efforts and the resulting process variable measurements, then applies a new control effort to minimize errors between the process variables and the respective setpoints. CyboSoft claims CyboCon provides smooth start-up and operation for cascade loops, control processes with large deadtimes, and guarantee closed-loop stability in most practical applications.
How CyboCon does all this without operator intervention is a carefully guarded secret. CyboSoft does admit that for deadtime-dominant processes, they use a special delay predictor that can produce an error signal before the deadtime has elapsed. This allows the controller to "feel" the effects of its control efforts almost immediately and thus avoid saturation. Unlike a Smith Predictor, however, the CyboCon predictor does not require a precise model of the process, only a rough estimate of deadtime.
Hints from the user
CyboSoft also notes that CyboCon does need a little bit of qualitative information about the process. Users need to come up with at least a rough estimate of the process time constant and deadtime (if any). Users must also select the control algorithm most appropriate for the process. The standard algorithm works for a majority of processes. However, the "smooth" algorithm is better for high-order processes while the "sharp" algorithm is better for low-order processes. The "antidelay" algorithm with its delay predictor is best for processes with significant deadtime.
PC-based versions of CyboCon run under Microsoft Windows 95 or Windows NT and require at least a 486DX processor plus 16 to 32 MB of RAM, 50 MB of available hard disk space, a 3.5-in. floppy drive, a VGA monitor (or better), a keyboard, and a mouse. Serial ports or network boards are required for the I/O interface. Prices start at $995 for the single-loop version, $2,500 for the multivariable version, and go up from there with the number of loops to be controlled. CyboCon versions for VMS, UNIX, and QNX are also available.
For more information on CyboCon, visit www.controleng.com/info .
Consulting Editor, Vance J. VanDoren, Ph.D., P.E., is president of VanDoren Industries, West Lafayette, Ind.