Controlling two uni-directional valves with a single control output

Problem:
A control system has two valves controlling a swashplate, with one valve for flow in one direction and the other valve for flow in the opposite direction. Each valve only accepts a 0 - 10 V input signal. This approach could also be adapted to any system that requires a separate 0 - 10 V signal for each direction.

Approach
The general approach is to use one control axis that sends its Control Output to two different Output-Only axes.

  1. Create an Outer Loop axis. This axis will use the feedback from the system and has no physical output. It’s output is a register in the RMC.

  2. Create two Output Only axes. These will be wired to each valve on the swashplate.
    See below screenshot for an example output definitions that would work.

  3. The next step is to create a User Program to continually apply the appropriate output to each Output Only axis. The below User Program applies the current control output to one axis, and zero volts to the other axis, based on the polarity of the output.
    image

  4. Run this User Program continuously on an unused task. See Make a User Program Always Run for a refresher on how to do this.

Alternative Approaches
This application can also be solved using Uni-directional Mode, a discrete output, and a DPDT (double pole, double throw) relay. Uni-directional Mode is quite powerful, and the online help does a great job explaining it.