simscape电机转速不稳定系统
simscape motor speed is not stable system
我正在尝试在 simscape 中构建直流电机
我使用命令 ssc_dcmotor
获取示例
我添加了受控电压源而不是电压源和 s-ps 转换器和
制作输入端口...我用输出端口替换了范围
我做这个是为了使用 [A, B, C, D]=linmod('dcmotor')
获得直流电机速度的线性模型
当我得到 eig(A)
时,我看到极点为零,这意味着系统不稳定
我的理解有什么错误?
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
我正在尝试在 simscape 中构建直流电机
我使用命令 ssc_dcmotor
获取示例
我添加了受控电压源而不是电压源和 s-ps 转换器和 制作输入端口...我用输出端口替换了范围
我做这个是为了使用 [A, B, C, D]=linmod('dcmotor')
当我得到 eig(A)
时,我看到极点为零,这意味着系统不稳定
我的理解有什么错误?
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