代码:
clear allclcw=pi/4;g=98;alpha0=pi/4;v0=1000;t=0:1:100;alpha=atan(tan(alpha0)-gt/(v0cos(alpha0)));ax=gsin(alpha);ay=gcos(alpha)cos(wt);az=gcos(alpha)sin(wt);plot3(ax,ay,az)
给你个简单的例子,g可以根据你的需要改变,但是里面应该不能有k这种未知量。
s=tf('s');
g=10(s+2)/(s^2+2
s+3);
rlocus(g)
判断稳定的k值范围,最基本的方法是首先求出闭环传递函数,然后根据routh判据即可判断。routh判据具体内容比较复杂,这里不详述,你随便一搜就很容易知道,也不难。
如果要用根轨迹判断的话,可能比较复杂,需要准确的画出根轨迹及其变化趋势,求其与虚轴的交点,工作量不比routh判据少。
欢迎追问~
theta=0:pi/20:2pi;
a=2;
b=1;
x1=acos(theta);
y1=bsin(theta);
x2=0:04:10;
y2=2x2;
for k=1:size(x2,2)
plot(x2,y2);%斜线
hold on
plot(x1+x2(k),y1+y2(k));%椭圆
axis equal
drawnow();
hold off
end
对于K做根轨迹
首先求得开环传递函数G=119/s(s+10)
直接利用rlocus()函数可绘制根轨迹
具体程序如下:
s=tf('s');%定义传递函数算子
G=119/(s(s+10));
rlocus(G)
你这公式对不我咱觉得好像有个符号错了,是s(t)=y0+v0t-1/2gt^2
程序如下:
function Thrw(N,y0,v0)
t=1:001:N;%你觉定计时的长短
s=y0+v0t-49t^2;
plot(t,s)
很简单的程序啊LZ加油学习
画出根轨迹后,用sgrid命令可以画出等阻尼比和等wn的栅格线。
用sgrid(z,wn)的形式可以绘制任何你想要的值的栅格线。(z和wn需事先分别定义,向量的形式,为你想绘制的阻尼比和wn的值。
判断稳定的K值范围,最基本的方法是首先求出闭环传递函数,然后根据Routh判据即可判断。Routh判据具体内容比较复杂,这里不详述,你随便一搜就很容易知道,也不难。
如果要用根轨迹判断的话,可能比较复杂,需要准确的画出根轨迹及其变化趋势,求其与虚轴的交点,工作量不比Routh判据少。
对离散系统,使用rlocus画根轨迹,然后用grid on即可得到类似的根轨迹图。
示例: z=tf('z');
G=(z^2-18z+1)/(z(z-1)(z^2-17z+1));
rlocus(G)
grid on
set(gca,'DataAspectRatio',[1 1 1])
ylim([-1 1])
t1 = 0:pi/50:10pi;
t2=100:05:250;
plot3(sin(t1),cos(t1),t1,'-r',cos(t2),sin(t2),t2,'-b')
grid on
axis square
以上就是关于matlab已知速度绘制运动轨迹全部的内容,包括:matlab已知速度绘制运动轨迹、如何用matlab画相轨迹、你好,想请教一个轨迹运动的问题,用matlab让椭圆沿着斜线运动的程序怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)