Identified linear system contribution of input is zero

1 次查看(过去 30 天)
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;
];

采纳的回答

Paul
Paul 2024-4-27
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.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Linear Model Identification 的更多信息

标签

产品


版本

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by