h**********3 发帖数: 427 | 1 问一个简单的matlab问题
有一个圆(半径5mm)绕圆外一点(距离圆心10mm)旋转,旋转速度是3000rpm,同时在
以线性速度25mm/s沿x轴移动
怎么去用matlab画运动轨迹?
本人刚刚matlab入门,望高手们指点指点,谢谢了! | l********a 发帖数: 1154 | 2 什么在沿x轴移动?是旋转中心吗?
否则边旋转怎么边移动啊 | h**********3 发帖数: 427 | | h**********3 发帖数: 427 | | j**u 发帖数: 6059 | 5 你这个是物理问题,应该先把公式写出来,最后用matlab画图而已。
【在 h**********3 的大作中提到】 : 问一个简单的matlab问题 : 有一个圆(半径5mm)绕圆外一点(距离圆心10mm)旋转,旋转速度是3000rpm,同时在 : 以线性速度25mm/s沿x轴移动 : 怎么去用matlab画运动轨迹? : 本人刚刚matlab入门,望高手们指点指点,谢谢了!
| l*******G 发帖数: 1191 | 6 anglev=3000*2*pi/60.0 %angular velocity rad/sec
dt=2*pi/anglev/600; %T/600
t=(0:dt:60); %sec %one minute total
v=25; %mm/sec
xo=0+v*t; %center of rotation
yo=xo*0;
R=10 ; %10mm away from xo, yo
angle=0+t*anglev; %angle relative to x axis
xc=xo+R*cos(angle); %center of cirlcle
yc=yo+R*sin(mod(angle,2*pi));
%draw the circle
r=5; %5mm circle
angc=(0:0.1:2*pi);
for i=1:length(t)
x=xc(i)+cos(angc)*r; %circle
y=yc(i)+sin(angc)*r;
x(length(angc)+1)=x(1); %close the circle
y(length(angc)+1)=y(1);
plot(x,y,'r-'); %draw circle
axis([xo(i)-20,xo(i)+20,yo(i)-20,yo(i)+20]);
hold on;
plot([xc(i),xo(i)],[yc(i),yo(i)],'b-') %rotation arm
plot(0,0,'k+'); %origin
xlabel('x(mm)');
ylabel('y(mm)');
title(['time=',num2str(t(i)),' sec']);
pause(0.1)
hold off;
end | j**u 发帖数: 6059 | 7 真是热心网友呀,包子奖励一个
【在 l*******G 的大作中提到】 : anglev=3000*2*pi/60.0 %angular velocity rad/sec : dt=2*pi/anglev/600; %T/600 : t=(0:dt:60); %sec %one minute total : v=25; %mm/sec : xo=0+v*t; %center of rotation : yo=xo*0; : R=10 ; %10mm away from xo, yo : angle=0+t*anglev; %angle relative to x axis : xc=xo+R*cos(angle); %center of cirlcle : yc=yo+R*sin(mod(angle,2*pi));
| h**********3 发帖数: 427 | |
|