Identified linear system contribution of input is zero
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Valeriy
el 27 de Abr. de 2024
Comentada: Valeriy
el 27 de Abr. de 2024
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 comentarios
Respuesta aceptada
Paul
el 27 de Abr. de 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.
Más respuestas (0)
Ver también
Categorías
Más información sobre Linear Model Identification en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!