Last year from November to mid-December, a Spanish professor called Jaume visited our lab. He is a mathematician from one of the universities in Barcelona. He is interested in differential flatness, just as we control engineers are. Back in November, I wrote about a bicycle trip I did together with Jaume.
I was quite impressed when he showed me how he found a flat output for one of the systems that Susi was working on in her study thesis. The system has six states (these are x1 … x6) and three inputs (u1 … u3). It can be written in an input-affine way as:
For what I want to show you, the drift vector field f(x) does not really matter, but the input vector fields do. They are given as:
The interesting question was now how to find the flat outputs themselves. Control engineers are usually afraid of solving partial differential equations (PDEs) and therefore try to find solutions for linearized systems. But luckily, Jaume is no engineer, so he went for the PDE itself. And it turned out that he was quite lucky:
The flat outputs do not depend on x4.
The flat outputs do not depend on x6.
Well, this PDE was a bit harder. It looks like this:
But Jaume could still solve it analytically, which gave him a flat output that depended both on x3 and x5. He used the two spare flat outputs to represent both x1 and x2. Then his job was done. My job was to implement the whole thing, and it turned out that his solution worked! :-)
I wish I would be good in analytically deriving flat outputs :-/.
By the way: Whenever I write down numbers in the US, I have to keep in mind that the people here will read my German “1” as a “7”. In fact, most people around the world will only put a little serif on the top end of the vertical line instead of a huge upstroke. To find more about writing numbers, I asked Jaume to write them down in his own handwriting. So here is how a Spanish mathematician writes numbers: