1

我正在尝试在 simscape 中构建直流电机

我使用命令ssc_dcmotor来获取示例

我添加了受控电压源而不是电压源和 s-ps 转换器并制作了输入端口......我用输出端口替换了示波器

我做了这个来获得直流电机速度的线性模型[A, B, C, D]=linmod('dcmotor')

当我得到时,eig(A)我看到极点为零,这意味着系统不稳定

我在这里理解的错误是什么?

4

1 回答 1

2

返回的系统linmod状态包括它所有块的状态(即使这些状态是空的或恒定的)。尝试执行

sstr= linmod('dcmotor1');
disp(sstr.StateName);

你会看到

[1x50 char]
[1x50 char]
'dcmotor1/DC Motor/Inertia'
'dcmotor1/DC Motor/Rotor Inductance'
'dcmotor1/Sensing/Ideal Rotational Motion Sensor'
'dcmotor1/DC Motor/Friction'
'dcmotor1/DC Motor/Rotor Resistance'
[1x50 char]
[1x50 char]

显然,我们不需要 的状态DC Motor/FrictionRotor Resistance以及Ideal Rotational Motion Sensor它们的 dx/dt= 0 形式的方程。但是,删除未使用的状态很容易(需要控制系统工具箱):

sys= ss(A,B,C,D);     % create the state space model
sys= minreal(sys)     % remove the unnecessary states
pole(sys)             % now we can calculate the poles
于 2016-10-11T15:47:41.280 回答