Two valves on one axis for high speed and low speed

One method of designing a system that requires high flow and high precision is to use two valves, where one is low flow, and the other is high flow. Transitioning between the valves can be a challenge. One way to do so very smoothly is described here. An RMCTools project demonstrating this is also attached at the end.

Approach
The main axis to which the position feedback is connected is configured as an outer loop axis. The outer loop axis commands two output only axes, one for each valve. The valves will open and closed based off user-generated curves and the current Control Output of the outer loop axis.

Theory
The curves are designed such that the small valve range will be -100% to 100% when the Outer Loop axis’ Control Output goes from -x% to x%, where x = Small Flow / (Large Flow + Small Flow) x 100%. Then, the large valve will kick in.
These curves should result in the linear total flow, so that the feed forwards and gains of the main outer loop axis can operate as normal.

Designing the curves
The curves are very simple, as shown below. The Control Output Transition point, Ct, is:
Ct = Small Flow / (Large Flow + Small Flow )

Small valve curve:
small valve curve

Large valve curve:
large valve curve

Added together, the resulting flow will be linear.

User Program

The following continuously-running user program will apply the curves to each valve:

user program

Requirements and Limitations:

  • Requires user program to always run
    The user program must always be running. See https://forum.deltamotion.com/t/make-a-user-program-always-run/436
  • Use high-performance, linear valves
    To be successful, the valves must be high-response, zero-lapped, with a linear flow.
  • Cannot auto-tune
    The axis cannot be auto-tuned, since autotuning requires that the controller be in program mode. Instead, start tuning manually with the P gain, generate a couple good plots of motion in each direction, then use the tuning wizard with existing plot.

Valve Voltage Transition.rmcproj (33.2 KB)

An alternative approach to this problem is as follows:

  1. Installed 2 valves in parallel.
  2. For “fast speed,” copy the control output from the slow valve to the fast valve so they get the same voltage command.
  3. Tune with the control output continuously copied from the slow valve to the fast valve. Save these values in the variable table.
  4. For the “slow speed,” stop copying over the control output to the second valve.
  5. Tune for the slow speed condition.

The tune for each method should be simple but will require 2 gain sets and a User Program that copies the control output from one valve to the other for fast speed and writes a 0 to the large valve for the slow speed.