QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3118|回复: 0
打印 上一主题 下一主题

matlab实现曲柄滑块机构的动画

[复制链接]
字体大小: 正常 放大
595894385        

1

主题

7

听众

217

积分

升级  58.5%

  • TA的每日心情
    开心
    2013-4-25 08:21
  • 签到天数: 59 天

    [LV.5]常住居民I

    自我介绍
    595894385
    跳转到指定楼层
    1#
    发表于 2012-11-13 12:38 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定

    曲柄滑块机构的数学模型
    O点表示原点,A表示曲柄的另一端点(连杆的起点),B连杆的另一端点(与滑块相连点)
    R为曲柄的长度,L为连杆的长度,th为曲柄与X轴的夹角,H为偏心距。

    对于A点:
    XA=R*cos(th)
    YA=R*sin(th)

    对于B点:
    XB=?
    YB=H
    B点满足条件:L^2=(XA-XB)^2+(YA-YB)^2
    XB=XA+sqrt(L^2-(YA-H)^2)

    clear
    clc
    R=1;
    L=2;
    H=0.5;
    th=linspace(0,10*pi,1001);
    XA=R*cos(th);
    YA=R*sin(th);
    XB=XA+sqrt(L^2-(YA-H).^2);
    for k=1:length(th)    %动画
       thk=th(k);     %取角度中的第k个值
       XAk=R*cos(thk);
       YAk=R*sin(thk);
       YBk=H;
       XBk=XAk+sqrt(L^2-(YAk-H)^2);
       XOk=0;     %定义原点
       YOk=0;
       plot(XOk,YOk,'ko');
       hold on
       plot(XAk,YAk,'ko');
       plot(XBk,YBk,'ko');
       plot([XOk,XAk,XBk],[YOk,YAk,YBk],'r');  %各点连线
       plot(XBk+[-1,1,1,-1,-1]*R/4,YBk+[1,1,-1,-1,1]*R/4,'b'); %画出滑块
       plot([0.5,3.5],(H-R/4)*[1,1]);%地面
       axis([-2,2,-2,2])
       axis off
       axis equal
       hold off
       pause(0.001);  %控制画面的延迟时间
    end
    AM=max(XB)-min(XB)    %行程

    untitled.fig

    3.34 KB, 下载次数: 6, 下载积分: 体力 -2 点

    zan
    已有 1 人评分体力 收起 理由
    果珍冰 + 1 很给力!

    总评分: 体力 + 1   查看全部评分

    转播转播0 分享淘帖0 分享分享1 收藏收藏0 支持支持1 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2024-6-20 08:15 , Processed in 0.464411 second(s), 61 queries .

    回顶部