I didn't want to hijack Doug Cooper's thread and this topic deserves its own.
NO, it is a convolution on the motion profile. The motion profile is convoluted with two pulses about 180 degree from each other. This cancels out the oscillations.
I have not had much time to read up on it... perhaps
See the link below for an exmpale
It doesn't
Not in the case of feed fowards!
You may be making the CL MORE stable,
No! Feed forwards have nothing to do with the closed loop or the poles. Feed forwards just make it so the closed loop controller doesn't have to work as hard. Normally the feed forwards gains are just multiplies by the desired motion profile and the derivatives. One can also use feed forwards and the motion profile to exaggerate the target position. This is like putting a carrot on a stick and leading the donkey around by exaggerating the desired path. This compensates for the lags.
ftp://ftp.deltacompsys.com/public/NG/t1p1%20i-pv%20c1%20ol.pdf
Here is an example of input shaping that I did for JCH's example. It shows two moves, one to 7 meters and another to 17 meters. The two examples show the effect of the two pulses. The motion profile is just a simple. Crude is a better description.
position(time):=velocity*time
I didn't use any acceleration or deceleration. It is only the input shaping
No feed forwards are used. Only simple a PID is used to control the crane. It is what the two impulses do to the very simple motion profile that make the load swing into position without oscillating. The controller doesn't even follow the motion profile very well. There is a lot of lag.
I didn't show how I calculated the impulses. It isn't hard if you think about it.
Tim seems to be a skeptic but what are the alternatives? One could estimate the load state by using cameras or accelerometers. This would also require a controller that can handle higher derivative gains. The input shaping works with very little effort.
Peter Nachtwey