Matlab 在给定错误的值范围内绘制传递函数时,输入参数不足
我需要知道kc的哪个值是稳定的,哪个值是不稳定的 系统具有以下传输功能: -2Kc/s^4+3s^3+4s^2+3s+1-2Kc 计算后,为了使该系统稳定,kc应在以下数值范围内: -1Matlab 在给定错误的值范围内绘制传递函数时,输入参数不足,matlab,Matlab,我需要知道kc的哪个值是稳定的,哪个值是不稳定的 系统具有以下传输功能: -2Kc/s^4+3s^3+4s^2+3s+1-2Kc 计算后,为了使该系统稳定,kc应在以下数值范围内: -1
syms s kc;
t=(-2*kc)/(s^4+3*s^3+4*s^2+3*s+1-2*kc);
kc=-2:0.1:1;
plot(t)
我得到了以下错误:
使用绘图数据时出错必须是数字、日期时间、持续时间或数组
可转换成双人的
使用绘图时出错。输入参数不足
我尝试单步执行函数,但得到了相同的错误。错误消息说t不是数字数组。t是一个符号对象;plot函数对符号对象一无所知,无法正确处理它们。第二个问题是kc变量的定义
kc=-2:0.1:1;
没有效果,因为它不影响符号对象t的内容
有一个函数ezplot,用于打印符号对象。此外,还需要一个循环:
syms s
for kc=-2:0.1:1;
t=(-2*kc)/(s^4+3*s^3+4*s^2+3*s+1-2*kc);
ezplot(t);
hold on;
end
为了绘制阶跃响应,可以使用控制系统工具箱:
for kc=-2:0.25:1;
h = tf(-2*kc,[1 3 4 3 1-2*kc]);
step(h,10);
hold on;
end
谢谢,先生。我会直接试一试。