Monday, August 16, 2010

Case of the Mondays

Here are the first results from using the "optimal" FIR filter, computed using the data-drive approach. Surprisingly it performs pretty well compared to the AO loop, the fact that its not spitting out absolute crap is a small miracle.



Here's a sampling of the modal output


I'm not sure what's going on with the AO loop. Looking at the commands with the adaptive loop closed shows lots of lower-end saturation going on about 1/3 of the time, so something is probably screwed up somewhere in the experiment. Hard to say at the moment since I'm running this remotely from home. The frustrating part is that it takes to friggin long to run an experiment, around 40 minutes for 10000 frames, that its easy to distract my already OCD mindset. I'm going to have to start doing this in simulations first.

This is good for a first step, but there are still some outstanding questions I'd like to look at this week. The first few deal with this optimal FIR filter calculation:

1. Determine what's really causing the difference between the data and impulse response drive methods to finding the optimal gains.

2. What's the real disturbance model that should be used in the calculation? What's the difference between computing it and identifying it from i/o data? Should it be SISO or MISO?

3. How does the filter order affect performance?

4. Write a script to determine the optimal IIR filter by solving an LQR problem.

Also, all of this stuff so far has been for the first focus mode. Sooner or later I'm going to have to do everything over again al MIMO, so I'd be nice to have some heads up if there are potential problems in the road. The first step is to look at the transfer matrix for multiple modes with the classical loop closed. Everything depends on this being diagonal with the same SISO tf on the diagonals. If this doesn't hold to a reasonable extent then there could be serious limitations. With that in mind:

1. How similar are the diagonal transfer functions for each mode? Models identified with significant saturation are garbage.

2. If they're all of the same form, but with a different gain, can the transfer matrix be factored into a single transfer function times a static gain matrix? If so, can this matrix just be incorporated into the poke matrix?

3. What's the difference between doing a MIMO subspace ID and multiple SISO id's?

4. Does the simulation even have enough accuracy to identify the model for multiple channels?

All this will be much faster if I just suck it up and do it in silico first.

No comments: