I am trying to figure out Matlab. Tried the cmd shown in the attachment, get different response(see attachment)

5 Kommentare

dpb
dpb am 20 Feb. 2025
Include the code as text, not images...
Ken
Ken am 20 Feb. 2025
Verschoben: dpb am 20 Feb. 2025
A=[-.01 .1 0 32.2;-0.4 -.8 180 0;0 -.003 -.5 0;0 0 1 0]
B=[0 -10 -2.8 0]'
P=ctrb(A,B)
P=poly(P)
A=[-.01 .1 0 32.2;-0.4 -.8 180 0;0 -.003 -.5 0;0 0 1 0]
A = 4×4
-0.0100 0.1000 0 32.2000 -0.4000 -0.8000 180.0000 0 0 -0.0030 -0.5000 0 0 0 1.0000 0
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
B=[0 -10 -2.8 0]'
B = 4×1
0 -10.0000 -2.8000 0
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
P=ctrb(A,B)
P = 4×4
0 -1.0000 -139.7500 112.9035 -10.0000 -496.0000 654.6000 -328.6400 -2.8000 1.4300 0.7730 -2.3503 0 -2.8000 1.4300 0.7730
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
P=poly(P)
P = 1×5
1.0e+05 * 0.0000 0.0049 -0.0302 -2.0054 1.5469
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
So, how do you get a different result?
A1=[-.01 .1 0 32.2;-0.4 -.8 180 0;0 -.003 -.5 0;0 0 1 0];
B1=[0 -10 -2.8 0]';
P1=ctrb(A,B);
P1=poly(P1);
all(P1==P)
ans = logical
1
Provided code doesn't produce different results for the same inputs...
Ken
Ken am 20 Feb. 2025
The original post showed 2 images of the 2 separate cmds used with the resultswhich are quite different, cannot dig why they are different
Voss
Voss am 20 Feb. 2025
@Ken: What are the different results/responses you see? Only one of your screenshots shows a result in the command window, which is the result of P=poly(P), a command which does not appear in the other screenshot.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Ken
Ken am 21 Feb. 2025

0 Stimmen

As mentioned earlier, I am trying to get familiar with MATLAB in aircraft controls. Focus now is Matlab. I saw a presentation with Matlab code which I posted a screenshot of. (I also posted my code to compare). Tried to duplicate the code but do not get the result shown in the Matlab window of the screenshot. Trying to figure out if something missing on my end.

1 Kommentar

Sam Chak
Sam Chak am 21 Feb. 2025
Hi @Ken,
Thank you for your response. One plausible explanation for the differing results is that your Aircraft Control Professor may have used functions from a decade-old version of MATLAB and the Control System Toolbox. Most professors I know do not frequently update their lecture slides. Therefore, if you are using more recent versions of MATLAB and the Control System Toolbox, you are likely obtaining different results.
The best approach would be to post the Control Problem Example from the lecture slides so that we can verify which result is correct or more accurate. In some rare cases, bugs can occur after MATLAB is updated.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 20 Feb. 2025

1 Stimme

A=[-.01 .1 0 32.2;-0.4 -.8 180 0;0 -.003 -.5 0;0 0 1 0]
Your screen image shows you using -32.2 rather than 32.2

4 Kommentare

Ken
Ken am 20 Feb. 2025
Thanks. The issue here is that the answers to the 2 codes posted in the 2 images of my first post (which shows the 2 images) is different. Both show -32.2 yet answer is different
dpb
dpb am 20 Feb. 2025
Again, post THE EXACT CODE as text that you ran that shows the differing results; trying to do something with images is futile...and my aging eyes couldn't see the difference Walter spotted (although he's not that much younger than I... <vbg>)
If this happens, you should be able to execute the code here and have it spit out the different results.
It's virtually a certainty that the issue is something like what Walter saw, but it's not provable without the actual code/data.
Ken
Ken am 20 Feb. 2025
I am trying to compare my code with one at a presentation of which I do not have the code in text. I thought ctrb gives the matrix and poly gives the polynomial of that matrix equation.
Sam Chak
Sam Chak am 20 Feb. 2025
Hi Mr. @Ken
I noticed from your screenshots that your issue pertains to the controller design problem. Would you please describe the original control problem so that we can understand the full context that led to the 'cmd' issue?

Melden Sie sich an, um zu kommentieren.

Kategorien

Produkte

Tags

Gefragt:

Ken
am 20 Feb. 2025

Kommentiert:

am 21 Feb. 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by