ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:395.40KB ,
资源ID:28949970      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28949970.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(机械原理各机构运动学分析说明.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

机械原理各机构运动学分析说明.docx

1、机械原理各机构运动学分析说明基于mat lab的机械原理杆件运动分析2012-6-5目录一概述 2二程序编制过程 21.铰链四杆机构 22.倒杆机构 53.曲柄滑块机构 84.popupmenu设计 105.保存 11三总结 12一概述大二时学习机械原理课程的时候,杆件的运动分析用的是作图法,不经效率较低,而且不精确。用解析法求数学表达式繁杂,易出错。为了解决以上问题,我用mat lab做了一个分析铰链四杆机构、曲柄滑块机构和倒杆机构的分析。只要输入数据,便可以分别做出各个杆件或滑块的位移、速度、加速度图像,如果需要的话可对生成图像分别保存,简单实用。 二程序编制过程1.铰链四杆机构基本功能:

2、用if语句,如果符合杆长条件则按要求计算,如果不符合,则输出相应提示信息。程序段: l1=str2num(get(handles.edit1,string);l2=str2num(get(handles.edit2,string);l3=str2num(get(handles.edit3,string);l4=str2num(get(handles.edit4,string);w1=str2num(get(handles.edit5,string); th1=0:0.1:2*pi;if (l1+l2=l3+l4)&(l1+l3=l2+l4)&(l1+l4=l2+l3)&(l1l3)&(l1l2

3、)&(l1=l4)|(l4+l2l3+l1)&(l4+l3l1+l2)&(l4+l1l2+l3)&(l4=l1)&(l4l2)&(l430+25):2.倒杆机构这些都是一些简单的程序。程序段:l1=str2num(get(handles.edit1,string);l2=str2num(get(handles.edit2,string);w1=str2num(get(handles.edit5,string); th1=0:0.1:2*pi;th2=asin(-l1*sin(th1)/l2);%位置分析th2=asin(-l1*sin(th1)./l2);%杆2的角位移xc=l1*cos(th

4、1)+l2*cos(th2);%滑块的位置变化 %速度分析vc=-l1*w1*sin(th1-th2)./cos(th2); %滑块c的速度w2=-l1*w1*cos(th1)./(l2*cos(th2);%杆2的角速度%加速度分析ac=-(l1*w1.*w1.*cos(th1-th2)+l2*w2.*w2)./(l2*cos(th2); %滑块c的加速度a2=(l1*w1.*w1.*sin(th1)+l2*w2.*w2.*sin(th2)./(l2*cos(th2);%杆2的角加速度 plot(handles.axes2,th1,th2); title(handles.axes2,杆2角位移

5、变化曲线) xlabel(handles.axes2,th1); ylabel(handles.axes2,角位移rad); axes(handles.axes2); grid on; plot(handles.axes4,th1,xc); title(handles.axes4,滑块的位置变化) xlabel(handles.axes4,th1); ylabel(handles.axes4,位移); axes(handles.axes4); grid on; plot(handles.axes6,th1,vc); title(handles.axes6,滑块c的速度曲线) xlabel(ha

6、ndles.axes6,th1); ylabel(handles.axes6,速度); axes(handles.axes6); grid on; plot(handles.axes7,th1,w2); title(handles.axes7,杆2的角速度曲线) xlabel(handles.axes7,th1); ylabel(handles.axes7,杆2角速度); axes(handles.axes7); grid on; plot(handles.axes8,th1,ac); title(handles.axes8,滑块c的加速度) xlabel(handles.axes8,th1)

7、; ylabel(handles.axes8,加速度); axes(handles.axes8); grid on; plot(handles.axes9,th1,a2); title(handles.axes9,杆2的角加速度) xlabel(handles.axes9,th1); ylabel(handles.axes9,加速度); axes(handles.axes9); grid on; else if z1=2l1=str2num(get(handles.edit1,string);l4=str2num(get(handles.edit4,string);w1=str2num(get

8、(handles.edit5,string); th1=0:0.1:2*pi; %位置分析th3=atan(l1*sin(th1)+l4)./(l1*cos(th1); %杆3的位置变化s=l1*cos(th1)./cos(th3);%滑块2在杆3上的位移变化 %速度分析vb2b3=-l1*w1*sin(th1-th3);%滑块2相对于杆3的速度w3=l1*w1*cos(th1-th3)./s;%杆3的角速度 %加速度分析ab2b3=s.*w3.2-l1*cos(th1-th3)*w1.2;%滑块2相对于杆3的加速度a3=-(2*vb2b3.*w3+l1*w1.2.*sin(th1-th3).

9、/s;%杆3的角加速度 plot(handles.axes2,th1,th3); title(handles.axes2,杆3角位移变化曲线) xlabel(handles.axes2,th1); ylabel(handles.axes2,角位移rad); axes(handles.axes2); grid on; plot(handles.axes4,th1,s); title(handles.axes4,滑块2在杆3上的位移变化) xlabel(handles.axes4,th1); ylabel(handles.axes4,位移); axes(handles.axes4); grid o

10、n; plot(handles.axes6,th1,vb2b3); title(handles.axes6,滑块2相对于杆3的速度) xlabel(handles.axes6,th1); ylabel(handles.axes6,速度); axes(handles.axes6); grid on; plot(handles.axes7,th1,w3); title(handles.axes7,杆3的角速度曲线) xlabel(handles.axes7,th1); ylabel(handles.axes7,杆3角速度); axes(handles.axes7); grid on; plot(h

11、andles.axes8,th1,ab2b3); title(handles.axes8,滑块2相对于杆3的加速度) xlabel(handles.axes8,th1); ylabel(handles.axes8,加速度); axes(handles.axes8); grid on; plot(handles.axes9,th1,a3); title(handles.axes9,杆2的角加速度) xlabel(handles.axes9,th1); ylabel(handles.axes9,加速度); axes(handles.axes9); grid on;效果如图:3.曲柄滑块机构程序:l

12、1=str2num(get(handles.edit1,string);l4=str2num(get(handles.edit4,string);w1=str2num(get(handles.edit5,string); th1=0:0.1:2*pi; %位置分析th3=atan(l1*sin(th1)+l4)./(l1*cos(th1); %杆3的位置变化s=l1*cos(th1)./cos(th3);%滑块2在杆3上的位移变化 %速度分析vb2b3=-l1*w1*sin(th1-th3);%滑块2相对于杆3的速度w3=l1*w1*cos(th1-th3)./s;%杆3的角速度 %加速度分析

13、ab2b3=s.*w3.2-l1*cos(th1-th3)*w1.2;%滑块2相对于杆3的加速度a3=-(2*vb2b3.*w3+l1*w1.2.*sin(th1-th3)./s;%杆3的角加速度 plot(handles.axes2,th1,th3); title(handles.axes2,杆3角位移变化曲线) xlabel(handles.axes2,th1); ylabel(handles.axes2,角位移rad); axes(handles.axes2); grid on; plot(handles.axes4,th1,s); title(handles.axes4,滑块2在杆3上

14、的位移变化) xlabel(handles.axes4,th1); ylabel(handles.axes4,位移); axes(handles.axes4); grid on; plot(handles.axes6,th1,vb2b3); title(handles.axes6,滑块2相对于杆3的速度) xlabel(handles.axes6,th1); ylabel(handles.axes6,速度); axes(handles.axes6); grid on; plot(handles.axes7,th1,w3); title(handles.axes7,杆3的角速度曲线) xlabe

15、l(handles.axes7,th1); ylabel(handles.axes7,杆3角速度); axes(handles.axes7); grid on; plot(handles.axes8,th1,ab2b3); title(handles.axes8,滑块2相对于杆3的加速度) xlabel(handles.axes8,th1); ylabel(handles.axes8,加速度); axes(handles.axes8); grid on; plot(handles.axes9,th1,a3); title(handles.axes9,杆2的角加速度) xlabel(handle

16、s.axes9,th1); ylabel(handles.axes9,加速度); axes(handles.axes9); grid on;效果如下:4.popupmenu设计当选中不同的杆件时,见面发生对应变化,这里面界面button比较多,不同的杆件需要不同edit text的数值,所以容易混乱。用if语句编制如下:z1=get(handles.popupmenu1,value);if z1=1 tu1=imread(jiaolian.png);axes(position,0.01,0.4,0.2,0.3);%显示图像image(tu1);axis offset(handles.edit7

17、,string,铰链四杆机构运动分析)set(handles.gan3,visible,on)set(handles.gan2,visible,on) set(handles.gan4,visible,on) set(handles.edit3,visible,on) set(handles.edit2,visible,on) set(handles.edit4,visible,on) set(handles.edit6,visible,on)elseif z1=2 tu3=imread(qubingyaogan.jpg);axes(position,0.01,0.4,0.2,0.3);ima

18、ge(tu3);axis offset(handles.gan3,visible,off)set(handles.gan4,visible,on) set(handles.gan2,visible,off) set(handles.edit4,visible,on) set(handles.edit3,visible,off) set(handles.edit2,visible,off) set(handles.edit6,visible,off)set(handles.edit7,string,倒杆机构运动分析) else z1=3 tu2=imread(qubinghuakaui.jpg)

19、;axes(position,0.01,0.4,0.2,0.3);image(tu2);axis offset(handles.gan3,visible,off) set(handles.gan4,visible,off) set(handles.gan2,visible,on) set(handles.edit2,visible,on) set(handles.edit3,visible,off) set(handles.edit4,visible,off) set(handles.edit6,visible,off) set(handles.edit7,string,曲柄滑块机构运动分析)

20、end 5.保存生成了图像,对其保存:FileName, PathName, filterindex = uiputfile(*.jpg,JPEG(*.jpg);. *.bmp,Bitmap(*.bmp);. *.gif,GIF(*.gif);. *.*, All Files (*.*),. Save Picture,Untitled); if filterindex h = getframe(handles.axes9); imwrite(h.cdata,PathName,FileName);end三总结做了这个大作业之后,感觉matlab这个软件功能十分强大,自己不过只用了它的冰山一角,而且大部分都是用的课本上简单的基础命令。在调试程序的过程中,虽然改正一次次的错误很辛苦,但自己从这些错误中学到了这些命令的用法,也看到了matlab的灵活性、实用性。其次,这也是对以前专业基础课的一个升华,学到了知识要综合利用,这样才能使知识得到交融,自己对它们也会有新的认识,从而”温故而知新“,获得意想不到的效果。今后的学习生活中,遇到一些实际问题完全可以用matlab编一些程序来解决,尤其是涉及数值计算和图像处理。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1