Robb B
Lifetime Supporting Member
Hello everyone, I've been reading through the forums on motion, servos, etc. I'm looking for some help in determining the cause of some oscillation in our machine.
The machine is a tie stacker, it uses an SSI encoder and a proportional valve (I don't know the brand/model at the moment) to run a hydraulic motor which pulls a chain to move the trolley on a rail. There's two operating modes, automatic and manual. When in manual mode, MAM and MAS commands are used to move the stacker. Sometimes (repeatable, but random) the stacker will oscillate around a commanded stop position. In the M02AS the tolerance is set at 1", typically it will home between 0.01 and 0.001 inches from commanded position, reasonably precise. When the oscillation occurs, the commanded position is set exactly, but the actual position varies approximately 1.4" to either side. I am new to motion control, but I believe the issue is to do with the trapezoidal profile vs the s-curve, and the accel/decel rates. The controller is attempting to recalculate the speed and position, but I think the requirement is to reach full acceleration/deceleration before a stop can be achieved. Scan time on the motion loop is about 40 ms, which is probably faster than the valve can respond to the positioning.
I will attach the MAS and MAM files to this post. If you want the whole logic file, I can try.
The machine is a tie stacker, it uses an SSI encoder and a proportional valve (I don't know the brand/model at the moment) to run a hydraulic motor which pulls a chain to move the trolley on a rail. There's two operating modes, automatic and manual. When in manual mode, MAM and MAS commands are used to move the stacker. Sometimes (repeatable, but random) the stacker will oscillate around a commanded stop position. In the M02AS the tolerance is set at 1", typically it will home between 0.01 and 0.001 inches from commanded position, reasonably precise. When the oscillation occurs, the commanded position is set exactly, but the actual position varies approximately 1.4" to either side. I am new to motion control, but I believe the issue is to do with the trapezoidal profile vs the s-curve, and the accel/decel rates. The controller is attempting to recalculate the speed and position, but I think the requirement is to reach full acceleration/deceleration before a stop can be achieved. Scan time on the motion loop is about 40 ms, which is probably faster than the valve can respond to the positioning.
I will attach the MAS and MAM files to this post. If you want the whole logic file, I can try.