Questioning my tuning plot....or is it something else?

I am in the process of getting a pressure axis tuned. I do not know what more I can do as far as tuning to get the actual pressure to follow the target pressure. The actual follows well to begin on the initial ramp and then just a mess for about 300 ms, and then a big spike up to target. (See attached plot). I’m beginning to think this might be a slow response time from my pressure transducer?? I am using a TD1000 series pressure transducer from “Transducers Direct” as the feedback. Is it that (slow feedback response), or could this be air in the hydraulic system…or is it just my tuning sucks and better tuning will take care of it? The plot is very consistent and pretty much looks like that on every cycle. I do not know what the plot might look like if it were air in the lines (if the plot would be consistent or all over the place).

Just to work things in and to ensure that the lines were getting fully bled, I cycled the axis up and down with the tuning plot as is, from around 10 psi up to 50 (with spikes sometimes reaching 80 psi on the actual pressure). Cycle time was pretty fast at probably around ~6 Hz I’m guessing. Ran about 4000 cycles like that and then the transducer failed even though its rated for 0-700 psi (?).

Thanks for any help that can be provided.
50 psi at 500ms.rmcplots (122 KB)

The plot indicates some strange response from the system, as if the system has some slop in it. Could you describe your system? What are the components, what should they be doing, valve part number, etc.?

From the plot, it doesn’t look like the pressure transducer response is a problem. I checked the datasheet, and the response time says less than 1 msec, so not problems there.


Thanks for the timely response. We are using a Moog D633 Servo valve to apply pressure to a small hydraulic valve on a production component part that we manufacture. When I apply steady hydraulic pressure in open loop, there is very little leakage from the test component under test. So I’m pretty sure there’s no problem there at the test part. I suppose I could plug the servo valve ports and apply the same cycle in closed loop and see what the plot looks like. I probably should have tried that first. Will try tomorrow when I get in to the office.

We do have 3 of the D633’s connected together on a manifold, since we will have three of these in a test bench cycling three test parts all at once. Maybe that’s the problem too (manifold)? These valves have an axis cut spool so they allow leakage past both ports even when the axis is at null position. This is normal although we didn’t know this when we purchased the valves otherwise we would have gotten something different. So maybe when one axis is cycling, it is allowing blow by through another one of the Axis’s ports because they are all connected on the same manifold?? I don’t know. These are things I need to look at. Attached is the .pdf of the Moog D633 that we are using. My main supply pressure to the Moog valves’ manifold is only ~600 psi.

Yes, the datasheet for the TD1000 series transducer states <1 mS but we used this transducer in a similar test setup over a year ago, but we used a STS sensor (PN 119535) as the feedback for the Axis. The TD1000 was in the system as well but just monitoring pressure somewhere else on the test part. There was a difference in the plots of each transducer where it was obvious that the STS’s feedback was faster. I believe the STS transducer datasheet also states <1mS for feedback response. Not saying that is the problem, but its an easy thing to try and at least eliminates that as a culprit. I highly doubt it though now.
Moog-Valves-D633_D634.pdf (769 KB)

I have seen multiple connected valves have strange interplay when only one is active. We have a manifold with 3 valves, but the manifold also includes solenoid valves that isolate the 2 unused valves from the cylinder.
It would be nice to see plots of the pressure response when cycling and open loop signal.

Attached is a document that I wrote up that I sent over to JE Myles and Moog in regards to our test setup and what their recommendations might be. In that document is a sketch of the cylinder that I’m testing and trying to ramp hydraulic pressure on. The pressure plot that I originally posted in my original post was attempting to ramp pressure to the “On Oil side” (see attached document). Although we are questioning the port configuration of the particular servo valve that we have, I believe I can still make this work for at least one of the two test types (“Spring Return Only”).

Jacob, the sketch in the document should answer your questions as to what the servo valve is hooked up to. If I can at least get this tuned properly, we can at least run one of the test types. Although with this port configuration (-364B), it is going to be a challenge to be able to run the other test type (“Spring Assist”), if it can be done at all. Could Delta Motion please review the document and provide feedback on my tuning and what needs to happen in order for the plot to smooth out - Is it simply tuning or is the physical setup limiting anything I can do in regards to proper tuning.

Thank you,
HydII_ForJEMyles.xlsx (363 KB)

I am not sure I understand it as well as I would like. I am confused as to where the Eaton Vickers valves are in the system.

From the initial plot you posted, the following happens:

  1. The Target Pressure starts ramping and the Actual Pressure initially starts rising along with the target
  2. The Actual Pressure suddenly flattens out and very slowly climbs
  3. The Actual Pressure suddenly shoots up.

It would seem to me that the initial ramping in 1) indicates that the flow coming from the valve is meeting some restriction, like an orifice, but that restriction is limited to a certain pressure drop. Once the pressure drop is reached, the oil just continues through, and fills up some cavity with oil, and when that cavity is filled, the pressure suddenly spikes. It is almost as if the piston is not attached to the spring, and the initial flow is pushing the piston toward the spring, then when the piston hits the spring, the pressure spikes. All this is conjecture, being I don’t understand the system.

It think if you cycled the Control Output in open loop, you will find that the system exhibits this same behavior where there is an initial small pressure rise, then a time delay, then a sudden rise. A system that behaves this way is very difficult to control. It’s like controlling a position system with a lot of slop in the clevis.

Assuming the system works as I think it does, then possible methods of mitigating are (1) add an orifice that leaks oil which should reduce the spike, and (2) use a faster responding valve. Of course, tuning comes before all of this, and from the plot, I am guessing that you may be able to use some Differential Gain. To use much Differential Gain, you will likely need to reduce the Output Filter to apply heavier filtering, but you may be limited on tuning with a system that exhibits a delay like this one.


The Eaton-Vicker valves are not on this machine anymore. We had the Eaton-Vicker valves on there before we replaced them with the Moog Servo valves. So, the images in the original document are what the machine looked like prior to putting the Servos on in place of the Eaton-Vicker directional valves. So, the machine does not have the pressure reducing valves OR the Vicker valves anymore. Both were replaced with just the servo valves (see attachment). This was in an effort to mitigate the pressure spikes being seen above set point.

Yes, that is pretty much how it works as you describe. More precise -
The oil coming from the servo valve goes through the open port at the part (On-Oil side) and then hits the side of the piston (Piston is actually blocking the port about 90% when spring is relaxed unlike what is shown in my sketch). The cavity on that side fills with oil so that the piston moves and compresses the spring. Once the spring is completely compressed, then I’m sure that is where the spike happens since there is no where for the oil to go and it all just hits a wall, like driving along blindly and smashing into a brick wall.

Is getting the actual pressure to follow target even possible in this system? Do you think that the pressure spike in the plot can at least be attenuated consistently within ±5 psi in this system? We care more about attenuating the spikes than trying to follow the target pressure. Or am I just chasing my tail trying to get this to work?

Thank you,

I like your car analogy. It is very difficult to stop a car after you sense that it is hitting something. Too bad there isn’t a position sensor in there so you can tell when to slow down.

No, I think it is basically impossible to follow the target, since there isn’t enough resistance. You could try tuning it hotter so it follows better, but we have quite different behaving sections of pressure control here, so tuning it hotter for one area will likely cause huge problems on other areas.

If you are able to attenuate the signal at all, then I think you can get it to be reasonably consistent, assuming constant oil temperature. Currently, the spike is 63, which is 13 above the command value of 50, so a 26% spike. It’s a long way to get down to 5%, which would be 52.5.

The pressure spikes from 20 to 62 in 20 milliseconds. The Moog valve has a step response of 0-100% in 13 milliseconds. I assume 100% - 0% is similar. Therefore, it seems it should be possible to respond more quickly to the pressure spike. This indicates that tuning is the key. The Control Output is changing rather slowly and smoothly, which indicates that we can get a lot more aggressive on the tuning. I guess I would try more Differential and a heavier Output Filter.

If the tuning turns out to be really difficult, you may possibly need to use different tuning gains for the spike than at the beginning. You could make a user program that senses the large spike and then applies different gains.


Is there an equivalent to a Quick move for pressure? Seems like that might be one way to attack this. Go open loop to fill the chamber and then as soon as the pressure climbs (say above 20 in the example plot) switch to pressure with a set of tight parameters. On our nut machines, we are trapping force within about 20-30 msec but we have some material deflection to work with, we are not actually hitting the car into the brick wall. Maybe a good piece of information to know would be what pressure does it take to compress the spring? It seems like it isn’t doing much as the cavity is filling but that could just be because of the way the loop is tuned…?

You could possibly use the Enter Pressure/Force Control (Auto) command. On force-only applications, we typically use that in a user program where first an open loop command is sent, then it waits for the force to exceed a certain value, then sends the Enter Pressure/Force Control (Auto) command. This command will use the current rate of force change as the beginning of the target profile rate, resulting in a bumpless smooth target ramp to the final requested value. Very similar to a quick move.

Jacob and All-

Thanks for the feedback. It appears that using the “Enter Pressure/Force Control (Auto)” command works, with some minor limitations. The limitation being that there is a little bit of delay time added to the cycle time once the program enters step 2 of the program. I may be able to polish and tweak more to get it faster. But I’m attenuating the spike, so that’s good. The initial ramping up of pressure is during step 1 of the program. So I assume that the dip down and then ramp back up is “normal” during the “Enter Prs/Frc Control” step? Here is the beef of the program as of now:

Cycles: 10000
Pressure SP- 58 psi

While program trigger := True

  1. “Open Loop Rate”, Output: 1.0 V, Ramp Rate: 2000 (V/s)
    Wait for Actual Pressure >= 20 psi

  2. “Enter Prs/Frc Control (Auto)”, Prs/Frc (psi): 58, Ramp Type: S-curve
    Wait for Actual Pressure >= 58

  3. “Hold Current Prs/Frc”
    Time Delay : 500 mS

  4. “Open Loop Rate”, Output: -1.0V, Ramp Rate: 2000 (V/s).
    Wait for Actual Pressure <= 3

Here is the scope view of the pressure trace while running the program. Sorry it’s small. I didn’t code in a zoom function on the scope as of yet, but its around 59 psi peak.

Could you attach an RMCTools plot of this? This will give much more info on what is happening.


Attached is the plot and the program. Pressure ramp up set point was 58 psi.

Test.rmcplots (1.29 MB)
Sta1CycleAPortOnly.rmcprog (6.36 KB)


Thanks, that plot helped quite a bit! The dip down after entering pressure control is not normal. You may need to use the Integrator Preload parameter in the Enter Prs/Frc Control (Auto) (44) command. To help figure out if it is necessary, could you add the P,I, D and Rate Feed Forward terms to the plot template, get a new plot, and post it? The terms are are the results of the gains, they are status registers.