Identified linear system contribution of input is zero
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello,
I identified a cont. 3rd order linear system using System Identification Toolbox:
y = Cx + Du + e
dx/dt = Ax + Bu + Ke
Upon inspecting the model (which looked decent to me) I see that the "D" value, which is the contribution of input to system output, is zero.
How can this be? The system describes a DC motor controlled by PWM commands (output is shaft position). Surely the commands sent to the motor should influence the position?
I get the following values:
% A weights (3x3 matrix)
A = [ ...
0.0356, -3.4131, -14.9525;
-1.0591, 85.8128, 334.3098;
1.5729, -95.1123, -175.5517;
];
% B weights (3x1 vector)
B = [ ...
-0.0019;
0.0403;
-0.0225;
];
% C weights (1x3 vector)
C = [ -5316.9, 24.87, 105.92 ];
% D weight (scalar)
D = 0;
% K weights (3x1 vector)
K = [ ...
-0.0025;
-0.0582;
0.0984;
];
% Initial state
x0 = [ ...
-0.0458;
0.0099;
-0.0139;
];
0 commentaires
Réponse acceptée
Paul
le 27 Avr 2024
The commands do influence the position of the motor through the dynamics as described by the differential equation. The output of the motor is position, so the input to the motor can't have an instantaneous effect on the position, as would be the case if D were non-zero. For example, torque has to integrate to velocity, which in turn has to integrate to position. Hence, a physically realizable applied torque will not cause an instantaneous change in position.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Linear Model Identification dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!