09-28-2010 05:15 PM
Hello,
I am trying to implement a order reduced observer in Labview. First I used Labview blocks for programming but it happens that I get different results when I am using Matlab. For that reason I used Mathscript to make a simple 'place' command to check it. The result in Labview and Mathscript is the same, but not in Matlab...
This is the instruction in Matlab:
09-28-2010 05:54 PM
Actually the one I wanted to attach is this VI. Sorry for the inconvenience...
09-29-2010 05:56 AM
Hi,
The difference is normal, since the place function in Matlab is using the algorithm 2/3 from "Kautsky, J. and N.K. Nichols, Robust Pole Assignment in Linear State Feedback" and CD pole placement from Control Design toolbox in Labview is using the algorithm SEAP (Standard eigenvalue assignment problem) from A.Varga.
cosmin
09-30-2010 02:04 AM
Thanks a lot of the answer. I thought that being the same code the result should be the same at least for Mathscript/Matlab. Now everything is clear.
Thank you again!
Greetings!
10-01-2010 03:59 PM
Hello:
You raised a good point. Please note that the 'place' command does not result in a unique gain matrix as the results are obtained from an optimization algorithm, which could yield several valid solutions. A good way to check the validity of the resulting gain matrix is to look at the closed-loop eigenvalues produced with such gain matrix. The ""Pole Placement" VI and the "place" command output these eigenvalues. For the VI you attached, I verified that the produced gain matrix did indeed place the poles where you requested them. If you have more questions, don't hesitate to ask.
10-04-2010 05:42 AM
Hi,
Indeed there are a lot of gains that places the poles on the desired locations. BUT, seeing as the Varga's SEAP algorithm is implemented, the G matrix is selected through a uniform white noise generator and the desired characteristics are verified (controllability). This does not unsure optimization regarding stability margins or disturbance rejection (sensitivity minimization regarding perturbations an matrix A or B).
As an example, the system presented in this thread, the algorithm implemented in CD Pole Placement.vi computes an observer gain that determine a 7,4455 value for closed loop infinity norm. The place algorithm in Matlab computes an observer gain that determine a 2,8230 value for closed loop infinity norm, so better noise rejection or robustness.
cosmin