Positioning hydraulic motor

aand74

Member
Join Date
Dec 2005
Location
Deinze
Posts
131
We have now a working installation that is a big 'jar' of liquid cupper (100ton).
It is rotated by a hydraulic motor on each side of the jar. The hydraulic motors are directly coupled on the rotation axis of the jar (no gearbox).
On the hydraulic motor there is an encoder (absolute position, 16bit) also directly on the axis (360° of the jar = 360° of the encoder).
The hydraulic motors are fed by a proportional valve that on its turn is fed by a constant pressure pump. The construction can be considered 'stiff' towards both sides of the rotation axis.
Now when the jar needs to be kept in constant position we use e position loop with the encoder on the motor. When we rotate the jar, we do it in 'open loop' : the proportional valve is opened in direct relation with the position of a joystick without influence of the encoder. When the joystick is back a zero position, we go to position loop again to maintain the position of the jar.
The concept of position loop at when holding position and open loop when rotating was proposed by the hydraulic constructor.
Now we were asked to do the rotation also in closed loop.
But I have my doubts, because in the very beginning I have tested this and the movement was not fluent. I suppose because of the resolution of the encoder.
Details : speed of the jar when the proportional valve is 100% opened : +- 1°/sec, encoder : 16 bits directly on the axis of the jar. Cycle time of the position loop in the controller : 1 ms. The speed can be chosen manually with a joystick. Speeds should be possible between 5% and 90% of the maximum (1°/sec). Now the position loop (for holding static position) is a pure proportional controller.
What resolution of the encoder should we at least have for fluent movements?
 
the speed setting dictats the max opening of the valve, and yes a closed loop with the joystick as psoitionsetting is better as there is no need to chnge the type of control.
 
But I have my doubts, because in the very beginning I have tested this and the movement was not fluent. I suppose because of the resolution of the encoder.
That is because there is a lot of static friction in the motors. The static friction is due to tight seals used to avoid leakage.

Can you monitor the pressure across the motor? It bet it increases when starting then decrease after it starts to move. The fact you use open loop now is also a clue. If the static friction is much higher than the dynamic friction the system will suffer for stick-slip and motion will not be smooth at slow speeds even in open loop. If this is the case it will be almost impossible to control in closed loop.

Look up Stribeck friction and stick-slip.


Are you pouring copper into molds? If so it is good to use closed loop. The rate of angle change must always change as a function of the angle to keep the flow consistent. Usually some sort of cam table or splines are used to do this. Many times the whole laddle moves over the mold and tilts as a function of time or some virtual master.
 
Attached is logging from the system.
In the left lower corner the logged variables are named.
Hoekmeting M3270 : position of the encoder in degrees
FCV3231 Setpunt SchuifPos ventiel : setpoint of the proportional valve (-100% 100%) for left side
FCV3431 Setpunt SchuifPos ventiel : setpoint of the proportional valve (-100% 100%) for right side
Druksensor assensturing servo IN (pink) : pressure at A-port of left motor (bar)
Druksensor assensturing servo IN (red) : pressure at C-port of left motor (bar)
Druksensor assensturing servo IN (white) : pressure at A-port of right motor (bar)
Druksensor assensturing servo IN (bleu) : pressure at C-port of right motor (bar)
FCV3231 Actuele positie ventiel : position of the proportional valve (-100% 100%) for left side (should correspond more or less setpoint)
FCV3431 Actuele positie ventiel : position of the proportional valve (-100% 100%) for right side (should correspond more or less setpoint)
The rotation movement is only activated by a joystick, no automatic movement.
Because of open loop : joystick 100% = setpoint prop valve 100% (and 0% = 0%)
Position of 360°=0° is when opening of the jar is pointing upwards, this is the natural restposition, the center of gravity is lower then the rotation axis.

hydraulic motor.jpg
 
I am assuming port A and port C are the ports across the motor
Torque = (port A pressure - port c pressure )*motor volume/(2*PI)
Looking at the left motor only
Port A ( pink ) rises to much higher level than port c ( red ). This means it takes a lot of torque to get moving.
Then port C red rises above port a. This seems to indicate that the at around 0 degrees the load changes from opposing the aiding motion. The sin of port a - port c changes.
This doesn't surprise me. It seems like the load is not balanced well on the tilting axis.

During the first move where the angle is decreasing it looks like a lot of torque is required to g

The torque required to hold position at each angle should be measured and plotted.
It looks like the load is changing as a function of angle. This doesn't surprise me.

The controller may need to have a cam table for each gain so it can change gains as a function of tilt.
 
As I understood the stick-slip is a problem if we should do the movements now in closed loop (for the moment it is still in open loop)?
What about the encoder resolution, would that be too low for moving in closed loop?
 
65536 counts/rev should be OK but it depends on how slow you want to go. If you want to move smooth and slow it is better to have more resolution. It is hard to tell from the graph. You need to compute the counts per motion controller scan at the slow speed. If the counts change by less than 10 you should probably get a higher resolution encoder.

The encoder will not help solve the slip-stick problem. That is a mechanical problem.
There are things that can be done to reduce the effects of the slip-stick but you need the right motion controller for that. You need to use a second derivative gain. To use the second derivative gain you need very high resolution feed back or model based control.
 
I would change the encoder position to 180 degrees, as that position is not going thru zero, thus the control is better.
and use a speed control to get it fluent.
 
65536 counts/rev should be OK but it depends on how slow you want to go. If you want to move smooth and slow it is better to have more resolution. It is hard to tell from the graph. You need to compute the counts per motion controller scan at the slow speed. If the counts change by less than 10 you should probably get a higher resolution encoder.

The encoder will not help solve the slip-stick problem. That is a mechanical problem.
There are things that can be done to reduce the effects of the slip-stick but you need the right motion controller for that. You need to use a second derivative gain. To use the second derivative gain you need very high resolution feed back or model based control.

You speak about second derivative gain to reduce the effects of slip-stick.
What in the situation where the position setpoint is stable all the time, but we have to react on on external disturbances of the position?
Considering that now we have a pure P-position controller (but that can be changed off course).
 
Attached is a trace of the actual position (yellow curve) as response to a manual activation of the proportional valve to a around 13% (lightbrown curve). We see a 'dead time' of 1.67 sec.
This will not be easy for good position control (at fixed setpoint).
 

Similar Topics

Hello, A question that does not involve a PLC but I hope someone can help me anyway. We are to develop a system with a simple hydraulic...
Replies
8
Views
3,681
The system of position control is quite different in Beckhoff compared to Siemens. In a Beckhoff controller with Beckhoff drives on Ethercat, the...
Replies
3
Views
837
I'm working on a SCADA project in FTView SE where there are many instruments, each of them has a Faceplate that can be called by a "Go-To Button"...
Replies
1
Views
544
Hi, I am using P&F - WCS reader to read position of a trolley motion on a crane. Sometimes there is Ethernet communication failure error given by...
Replies
1
Views
1,029
We have a project with a couple different fairly simple positioning tasks. Speeds are fairly slow and positioning doesn't need to be super...
Replies
3
Views
2,013
Back
Top Bottom