我试图在simscape中构建直流电机
我使用命令ssc_dcmotor
来获取示例
我添加了受控电压源而不是电压源和s-ps转换器 输入端口...我用输出端口替换了范围
我使用[A, B, C, D]=linmod('dcmotor')
当我得到eig(A)
时,我看到极点为零,这意味着系统不稳定
我的理解中的错误是什么?
答案 0 :(得分: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/Friction
,Rotor 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