声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1454|回复: 10

[绘图技巧] 请问可以用matlab画标准齿轮么?

[复制链接]
发表于 2008-3-31 12:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
如题。。。:loveliness: 。。望有高人指点。。。
回复
分享到:

使用道具 举报

发表于 2008-3-31 12:50 | 显示全部楼层
没有什么不可以,就是得自己知道每一段的方程,:lol
 楼主| 发表于 2008-3-31 19:11 | 显示全部楼层
额。。。。没有人画过吗?我不会阿。。。郁闷阿。。
发表于 2008-4-5 15:46 | 显示全部楼层
可以使用matlab设计好比较难画的曲线,导入autocad,然后简单的线直接用autocad画,这样应该可以

评分

1

查看全部评分

发表于 2008-4-6 10:59 | 显示全部楼层

回复 楼主 的帖子

楼主没有事情做的话可以做一下,知道渐开线方程,matlab实现应该是没有问题的,就是一段一段地画出来

[ 本帖最后由 eight 于 2008-4-7 15:58 编辑 ]
 楼主| 发表于 2008-4-7 22:38 | 显示全部楼层
偶是初学啊。。。。有点困难啊。。。导师的任务。。看来还要好好学一下阿
发表于 2008-4-8 15:53 | 显示全部楼层

回复 楼主 的帖子

无聊建个函数如下:
function chilunplot(r,N)
a=2/5*2*pi*r/N;b=3/5*2*pi*r/N;
R=((a/2)^2+(r+b)^2)^(1/2);
A=atan(a/2/(r+b));
for n=1:N
    p=2*pi/N*(n-1);q=2*pi/N*n;
    theta=2*pi/N*(n-1)+7/10*2*pi/N;
    tao=2*pi/N*(n-1)+2/5*2*pi/N;
    afa=theta-A;beta=theta+A;
    ma1=linspace(p,tao,20);x1=r*cos(ma1);y1=r*sin(ma1);plot(x1,y1);hold on;
    plot([r*cos(tao),R*cos(afa)],[r*sin(tao),R*sin(afa)]);
    plot([r*cos(q),R*cos(beta)],[r*sin(q),R*sin(beta)]);
    plot([R*cos(afa),R*cos(beta)],[R*sin(afa),R*sin(beta)]);
end
axis equal;
axis([-2*r 2*r -2*r 2*r]);

调用格式:chilunplot(r,N),r代表齿轮半径,N代表一共有几个齿;
例如:chilunplot(10,15)
 楼主| 发表于 2008-4-8 16:23 | 显示全部楼层
这个怎么用阿?我把它粘贴过去怎么说
???  function chilunplot(r,N)
     |
Error: Function definitions are not permitted at the prompt or in scripts.
这个阿?是不是我弄错了?:@Q
发表于 2008-4-8 16:49 | 显示全部楼层

回复 8楼 的帖子

你不知道建立函数,暂时就如下使用,改r,和N的值就得到不同的齿轮:
r=10;N=15;
a=2/5*2*pi*r/N;b=3/5*2*pi*r/N;
R=((a/2)^2+(r+b)^2)^(1/2);
A=atan(a/2/(r+b));
for n=1:N
    p=2*pi/N*(n-1);q=2*pi/N*n;
    theta=2*pi/N*(n-1)+7/10*2*pi/N;
    tao=2*pi/N*(n-1)+2/5*2*pi/N;
    afa=theta-A;beta=theta+A;
    ma1=linspace(p,tao,20);x1=r*cos(ma1);y1=r*sin(ma1);plot(x1,y1);hold on;
    plot([r*cos(tao),R*cos(afa)],[r*sin(tao),R*sin(afa)]);
    plot([r*cos(q),R*cos(beta)],[r*sin(q),R*sin(beta)]);
    plot([R*cos(afa),R*cos(beta)],[R*sin(afa),R*sin(beta)]);
end
axis equal;
axis([-2*r 2*r -2*r 2*r]);
发表于 2008-4-8 18:10 | 显示全部楼层
原帖由 hjwth 于 2008-4-8 16:23 发表
这个怎么用阿?我把它粘贴过去怎么说
???  function chilunplot(r,N)
     |
Error: Function definitions are not permitted at the prompt or in scripts.
这个阿?是不是我弄错了?:@Q
初学的话,多看基础书,多浏览置顶区for 新手的帖子
 楼主| 发表于 2008-4-8 23:02 | 显示全部楼层
恩,好的,多谢指导
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-23 13:23 , Processed in 0.063268 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表