How to linearize a command signal?

agarb

Member
Join Date
May 2006
Location
USA
Posts
309
We commonly use proportional pressure relief valves to control hydraulic system pressure. These valves are driven by an analog output card in our PLC rack. Now, most proportional relief valves that I've used are pretty non-linear, especially at the lower end. Something like this:

Curve.jpg


What are some ways that one could use to linearize the control in the logic? For this example, let's assume we are using a SLC 5/03 and it is totally open loop control, with no pressure feedback.

The best I've been able to come up with is multiple SCP instructions, each preceeded with a comparsion that only allows one SCP to be active at a time. See attached.

Anybody have a better way to do this?

(In real life, I wouldn't typically hard-code all the values and would instead use values from a populated data table. For clarity in this example, I didn't do that...)

Aaron
 
I do something like this in our system to program and select various pressures. We use a proportional relief valve and I can enter a pressure from the OIT in real numbers and get an acceptable output from the system.

Initially, I plotted quite a few points and eventually devised a formula which gave me a pretty close approxamation of the pressure I wanted. Generally my range is from about 1000 to 2500 psi.

Putting this into a compute statment in our SLC 5/04 it looks something like this: ((desired pressure in psi)* 82)+ 7400.

Seems I needed a constant to offset the non-linearity of the valve.

Hope this helps.
 
You can plot the data in Excell, chart it, and add a trendline to the chart with the option set to display the equation. This will give you a single equation that will closely approximate the data. You can pick from several equation types to find the best one.

As an aside, if you are routinely operating in the non-linear area below 10% command perhaps your valve selection should be re-examined.
 
Not so simple

It looks like this function needs two sections. There is a curved section when the command is < 10% but the rest looks linear. I would use two functions or segments to approximate this response is there is more that hasn't been mentioned. You need to have the over all linear gain. This case is simple because the over all linear gain is 1.

(PressMax-PressureMin)
---------------------- = 1
(CommandMax-CommandMin)

To linearize your system you need to

Compensated command = Gain*Command/fn(Command)

where fn(Command) is your approximation. Dividing by the approximation linearizes the response.
 

Similar Topics

This is a bit of an academic exercise and I wanted to check if anyone has already developed a formula before I start diving into some integral...
Replies
6
Views
2,609
I have a 5K potentiometer with a 1.2K resistor in series which I am using to convert 24VDC to ~4-20mA (close enough). I did not anticipate the...
Replies
4
Views
2,817
Hey guys. As the title suggests, I need to configure a Danfoss Aquadrive FC202 inverter, so that its logic inhibits the local command when the...
Replies
2
Views
48
Kindly, we have the following configuration fault on a Kinetix 5700 axis. It only appears when we go online on the Plc. We are just starting the...
Replies
2
Views
95
Sigh, DeviceNet noob... I have a 1756-L55, with a DeviceNet module, and 10 PF700 all commanded with DeviceNet. One of the PF700's blew up...
Replies
3
Views
133
Back
Top Bottom