欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于matlab的四杆机构运动分析(共16页).doc

    • 资源ID:14539134       资源大小:506KB        全文页数:16页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于matlab的四杆机构运动分析(共16页).doc

    精选优质文档-倾情为你奉上1  平面连杆机构的运动分析1.1 机构运动分析的任务、目的和方法曲柄摇杆机构是平面连杆机构中最基本的由转动副组成的四杆机构,它可以用来实现转动和摆动之间运动形式的转换或传递动力。对四杆机构进行运动分析的意义是:在机构尺寸参数已知的情况下,假定主动件(曲柄)做匀速转动,撇开力的作用,仅从运动几何关系上分析从动件(连杆、摇杆)的角位移、角速度、角加速度等运动参数的变化情况。还可以根据机构闭环矢量方程计算从动件的位移偏差。上述这些内容,无论是设计新的机械,还是为了了解现有机械的运动性能,都是十分必要的,而且它还是研究机械运动性能和动力性能提供必要的依据。机构运动分析的方法很多,主要有图解法和解析法。当需要简捷直观地了解机构的某个或某几个位置的运动特性时,采用图解法比较方便,而且精度也能满足实际问题的要求。而当需要精确地知道或要了解机构在整个运动循环过程中的运动特性时,采用解析法并借助计算机,不仅可获得很高的计算精度及一系列位置的分析结果,并能绘制机构相应的运动线图,同时还可以把机构分析和机构综合问题联系起来,以便于机构的优化设计。1.2 机构的工作原理    在平面四杆机构中,其具有曲柄的条件为:a.各杆的长度应满足杆长条件,即:最短杆长度+最长杆长度其余两杆长度之和。b.组成该周转副的两杆中必有一杆为最短杆,且其最短杆为连架杆或机架(当最短杆为连架杆时,四杆机构为曲柄摇杆机构;当最短杆为机架时,则为双曲柄机构)。在如下图1所示的曲柄摇杆机构中,构件AB为曲柄,则B点应能通过曲柄与连杆两次共线的位置。            1.3 机构的数学模型的建立1.3.1建立机构的闭环矢量位置方程    在用矢量法建立机构的位置方程时,需将构件用矢量来表示,并作出机构的封闭矢量多边形。如图1所示,先建立一直角坐标系。设各构件的长度分别为L1 、L2 、L3 、L4 ,其方位角为 、 、 、 。以各杆矢量组成一个封闭矢量多边形,即ABCDA。其个矢量之和必等于零。即:                                                           式1式1为图1所示四杆机构的封闭矢量位置方程式。对于一个特定的四杆机构,其各构件的长度和原动件2的运动规律,即 为已知,而 =0,故由此矢量方程可求得未知方位角 、 。角位移方程的分量形式为:                                      式2闭环矢量方程分量形式对时间求一阶导数(角速度方程)为:                                   式3其矩阵形式为:                                式4联立式3两公式可求得:                                         式5                                          式6闭环矢量方程分量形式对时间求二阶导数(角加速度方程)矩阵形式为:                          式7由式7可求得加速度:                               式8                                式9注:式1式9中,Li(i=1,2,3,4)分别表示机架1、曲柄2、连杆3、摇杆4的长度; (i=1,2,3,4)是各杆与x轴的正向夹角,逆时针为正,顺时针为负,单位为 rad; 是各杆的角速度, ,单位为 rad/s; 为各杆的角加速度,单位为 。1.3.2求解方法(1)求导中应用了下列公式:                                               式10(2)在角位移方程分量形式(式2)中,由于假定机架为参考系,矢量1与x轴重合, =0,则有非线性超越方程组:                             式11可以借助牛顿-辛普森数值解法或Matlab自带的fsolve函数求出连杆3的角位移和摇杆4的角位移。(3)求解具有n个未知量 (i=1,2,n)的线性方程组:                                                式12式中,系列矩阵 是一个 阶方阵:                                                         式13的逆矩阵为 ;常数项b是一个n维矢量:                                                           式14因此,线性方程组解的矢量为:                                                     式15式11是求解连杆3和摇杆4角速度和角加速度的依据。  2  基于MATLAB程序设计四连杆机构的解析法同样可以用MATLAB 的计算工具来求值,并结合MATLAB 的可视化手段,把各点的计算值拟合成曲线,得到四连杆机构的运动仿真轨迹。 2.1 程序流程图  2.2  M文件编写首先创建函数FoutBarPosition,函数fsolve通过他确定 。function t=fourbarposition(th,th2,L2,L3,L4,L1)t=L2*cos(th2)+L3*cos(th(1)-L4*cos(th(2)-L1;L2*sin(th2)+L3*sin(th(1)-L4*sin(th(2);主程序如下:disp ' * * * * * * 平面四杆机构的运动分析 * * * * * *'L1=304.8;L2=101.6;L3=254.0;L4=177.8;                  %给定已知量,各杆长L1,L2,L3,L4th2=0:1/6:2*pi;                                     %曲柄输入角度从0至360度,步长为pi/6th34=zeros(length(th2),2);                            %建立一个N行2列的零矩阵,第一列存放options=optimset('display','off');                    %_3,第二列存放_3for m=1:length(th2)                                   %建立for循环,求解_3,_4th34(m,:)=fsolve('fourbarposition',1 1,           %调用fsove函数求解关于_3,_4options,th2(m),L2,L3,L4,L1);                          %的非线性超越方程,结果保存在th34中endy=L2*sin(th2)+L3*sin(th34(:,1)');                     %连杆3的D端点Y坐标值x=L2*cos(th2)+L3*cos(th34(:,1)');                     %连杆3的D端点X坐标值xx=L2*cos(th2);                                     %连杆3的C端点X坐标值               yy=L2*sin(th2);                                     %连杆3的C端点Y坐标值figure(1)plot(x;xx,y;yy,'k',0 L1,0 0,                %绘制连杆3的几个位置点'k-',x,y,'ko',xx,yy,'ks')title('连杆3的几个位置点')xlabel('水平方向')ylabel('垂直方向')axis equal                                            %XY坐标均衡th2=0:2/72:2*pi;                                    %重新细分曲柄输入角度_2,步长为5度th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',1 1,options,th2(m),L2,L3,L4,L1);endfigure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2)      %绘制连杆3的角位移关于曲柄2的角位移图plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)                          %绘制摇杆4的角位移关于曲柄2的角位移图axis(0 360 0 170)                                   %确定XY边界值grid                                                  %图形加网格xlabel('主动件转角theta_2(度)')ylabel('从动件角位移(度)')title('角位移线图')text(120,120,'摇杆4角位移')text(150,40,'连杆3角位移')w2=250;                                               %设定曲柄角速度for i=1:length(th2)A=-L3*sin(th34(i,1) L4*sin(th34(i,2); L3*cos(th34(i,1) -L4*cos(th34(i,2);B=w2*L2*sin(th2(i); -w2*L2*cos(th2(i);w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);endfigure(3)plot(th2*180/pi,w3,th2*180/pi,w4);                     %绘制角速度线图axis(0 360 -175 200)                                                   text(50,160,'摇杆4角速度(omega_4)')text(220,130,'连杆3角速度(omega_3)')gridxlabel('主动件转角theta_2(度)')ylabel('从动件角速度(radcdot s-1)')title('角速度线图')for i=1:length(th2)C=-L3*sin(th34(i,1) L4*sin(th34(i,2);L3*cos(th34(i,1) -L4*cos(th34(i,2);D=w22*L2*cos(th2(i)+w3(i)2*L3*cos(th34(i,1)-w4(i)2*L4*cos(th34(i,2);. w22*L2*sin(th2(i)+w3(i)2*L3*sin(th34(i,1)-w4(i)2*L4*sin(th34(i,2);a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);endfigure(4)plot(th2*180/pi,a3,th2*180/pi,a4);                     %绘制角加速度线图axis(0 360 -70000 65000)text(50,50000,'摇杆4角加速度(alpha_4)')text(220,12000,'连杆3角加速度(alpha_3)')gridxlabel('从动件角加速度')ylabel('从动件角加速度(radcdot s-2)')title('角加速度线图')disp '曲柄转角连杆转角-摇杆转角-连杆角速度-摇杆角速度-连杆加速度-摇杆加速度'     ydcs=th2'*180/pi,th34(:,1)*180/pi,th34(:,2)*180/pi,w3',w4',a3',a4'disp(ydcs)2.3 程序运行结果输出>>                  * * * * * * 平面四杆机构的运动分析 * * * * * *曲柄转角 连杆转角-摇杆转角-连杆角速度-摇杆角速度-连杆加速度-摇杆加速度  1.0e+004 *          0    0.0044    0.0097   -0.0125   -0.0125   -0.5478    4.8458    0.0005    0.0042    0.0094   -0.0126   -0.0107    0.2300    5.5630    0.0010    0.0039    0.0092   -0.0124   -0.0086    0.8946    6.0520    0.0015    0.0037    0.0091   -0.0119   -0.0065    1.4143    6.2982    0.0020    0.0034    0.0090   -0.0114   -0.0043    1.7801    6.3174    0.0025    0.0032    0.0089   -0.0107   -0.0021    2.0027    6.1467    0.0030    0.0030    0.0089   -0.0100    0.0000    2.1046    5.8339    0.0035    0.0028    0.0089   -0.0093    0.0020    2.1134    5.4272    0.0040    0.0026    0.0090   -0.0085    0.0038    2.0566    4.9687    0.0045    0.0025    0.0091   -0.0078    0.0054    1.9578    4.4918    0.0050    0.0023    0.0092   -0.0072    0.0069    1.8356    4.0198    0.0055    0.0022    0.0093   -0.0065    0.0082    1.7040    3.5680    0.0060    0.0021    0.0095   -0.0060    0.0094    1.5725    3.1450    0.0065    0.0019    0.0097   -0.0055    0.0104    1.4474    2.7545    0.0070    0.0018    0.0099   -0.0050    0.0113    1.3328    2.3968    0.0075    0.0017    0.0102   -0.0045    0.0121    1.2307    2.0702    0.0080    0.0017    0.0104   -0.0041    0.0128    1.1425    1.7716    0.0085    0.0016    0.0107   -0.0037    0.0134    1.0687    1.4971    0.0090    0.0015    0.0110   -0.0034    0.0138    1.0095    1.2426    0.0095    0.0014    0.0112   -0.0030    0.0142    0.9653    1.0035    0.0100    0.0014    0.0115   -0.0027    0.0145    0.9364    0.7752    0.0105    0.0013    0.0118   -0.0024    0.0148    0.9232    0.5530    0.0110    0.0013    0.0121   -0.0020    0.0149    0.9269    0.3319    0.0115    0.0013    0.0124   -0.0017    0.0150    0.9485    0.1069    0.0120    0.0012    0.0127   -0.0014    0.0150    0.9899   -0.1276    0.0125    0.0012    0.0130   -0.0010    0.0149    1.0530   -0.3773    0.0130    0.0012    0.0133   -0.0006    0.0147    1.1404   -0.6481    0.0135    0.0012    0.0136   -0.0002    0.0145    1.2544   -0.9455    0.0140    0.0012    0.0139    0.0002    0.0141    1.3967   -1.2743    0.0145    0.0012    0.0142    0.0008    0.0136    1.5677   -1.6368    0.0150    0.0012    0.0144    0.0013    0.0129    1.7648   -2.0314    0.0155    0.0012    0.0147    0.0020    0.0121    1.9807   -2.4495    0.0160    0.0013    0.0149    0.0027    0.0112    2.2018   -2.8735    0.0165    0.0013    0.0151    0.0035    0.0101    2.4071   -3.2754    0.0170    0.0014    0.0153    0.0044    0.0089    2.5697   -3.6186    0.0175    0.0015    0.0155    0.0053    0.0076    2.6616   -3.8650    0.0180    0.0016    0.0156    0.0063    0.0063    2.6609   -3.9849    0.0185    0.0018    0.0157    0.0072    0.0049    2.5591   -3.9674    0.0190    0.0019    0.0158    0.0080    0.0035    2.3638   -3.8244    0.0195    0.0021    0.0159    0.0088    0.0022    2.0959   -3.5866    0.0200    0.0023    0.0159    0.0095    0.0010    1.7823   -3.2931    0.0205    0.0025    0.0159    0.0100   -0.0001    1.4487   -2.9815    0.0210    0.0027    0.0159    0.0105   -0.0011    1.1152   -2.6809    0.0215    0.0029    0.0159    0.0108   -0.0020    0.7942   -2.4103    0.0220    0.0031    0.0158    0.0111   -0.0028    0.4916   -2.1794    0.0225    0.0033    0.0158    0.0112   -0.0035    0.2086   -1.9913    0.0230    0.0036    0.0157    0.0112   -0.0042   -0.0565   -1.8450    0.0235    0.0038    0.0156    0.0111   -0.0048   -0.3071   -1.7375    0.0240    0.0040    0.0155    0.0110   -0.0054   -0.5475   -1.6650    0.0245    0.0042    0.0154    0.0108   -0.0060   -0.7817   -1.6233    0.0250    0.0044    0.0153    0.0104   -0.0065   -1.0139   -1.6089    0.0255    0.0046    0.0151    0.0100   -0.0071   -1.2479   -1.6181    0.0260    0.0048    0.0150    0.0096   -0.0077   -1.4868   -1.6480    0.0265    0.0050    0.0148    0.0090   -0.0082   -1.7336   -1.6955    0.0270    0.0052    0.0146    0.0084   -0.0088   -1.9905   -1.7574    0.0275    0.0054    0.0145    0.0076   -0.0095   -2.2588   -1.8304    0.0280    0.0055    0.0143    0.0068   -0.0101   -2.5391   -1.9100    0.0285    0.0056    0.0141    0.0058   -0.0108   -2.8305   -1.9910    0.0290    0.0057    0.0138    0.0048   -0.0115   -3.1300   -2.0660    0.0295    0.0058    0.0136    0.0037   -0.0122   -3.4326   -2.1255    0.0300    0.0059    0.0133    0.0024   -0.0130   -3.7297   -2.1572    0.0305    0.0059    0.0131    0.0011   -0.0137   -4.0091   -2.1451    0.0310    0.0059    0.0128   -0.0004   -0.0145   -4.2538   -2.0696    0.0315    0.0059    0.0125   -0.0019   -0.0152   -4.4419   -1.9079    0.0320    0.0058    0.0122   -0.0035   -0.0158   -4.5473   -1.6352    0.0325    0.0058    0.0119   -0.0051   -0.0163   -4.5411   -1.2273    0.0330    0.0056    0.0115   -0.0066   -0.0166   -4.3954   -0.6661    0.0335    0.0055    0.0112   -0.0081   -0.0167   -4.0889    0.0551    0.0340    0.0053    0.0109   -0.0095   -0.0166   -3.6129    0.9243    0.0345    0.0051    0.0105   -0.0106   -0.0161   -2.9781    1.9058    0.0350    0.0049    0.0102   -0.0115   -0.0152   -2.2178    2.9395    0.0355    0.0047    0.0099   -0.0122   -0.0140   -1.3857    3.9473    0.0360    0.0044    0.0097   -0.0125   -0.0125   -0.5478    4.8458图形输出:                                             图2  连杆3的几个位置点                                               图3  角位移线图                                              图4  角加速度线图                                     图5  角加速度线图3 基于MATLAB图形界面设计所谓图形用户界面, 简称为GU I (Graphic User Interface) , 是指包含了各种图形控制对象, 如图形窗口、菜单、对话框以及文本等内容的用户界面。利用这些用户界面, 用户可以和计算机之间进行信息交流。用户可以通过某种方式来选择或者激活这些图形对象, 来运行一些特性的M 文件。最常见的激活方式是利用鼠标或者其它设备来点击这些对象。对于一个用户来说, 图形用户界面就是他所面对的应用程序, 对图形界面的操作直接影响应用程序的应用前途。对于以往专门用于科学计算的语言, 如FORTRAN 语言等, 编写图形界面的功能较弱, 因而用其开发的程序, 其界面往往不够友好, 用户使用起来很不方便。而目前流行的可视化语言, 对科学计算的功能又相对弱一些。MATLAB提供了非常强大的编写图形用户界面的功能。用户只和前台界面下的控件发生交互,而所有运算、绘图等内部操作都封装在内部,终端用户不需要区追究这些复杂过程的代码。图形用户界面大大提高用户使用MATLAB程序的易用性。因此,学习MATLAB图形用户界面编程,即GUI程序的创建,是MATLAB编程用户应该掌握的重要一环。对于一个MATLAB 中的图形用户界面, 它的设计过程一般可以分为两个部分:用户界面的外观设计。在这里, 主要是通过不同的对话框、按钮、文本框等许多工具的使用, 设计出一个图形用户界面。同时也应搞清楚这个图形界面的功能是什么, 也即在图形界面上的操作会引发什么样的结果。图形界面的完成。在这里, 用户将根据在外观设计阶段所确定的图形界面的功能, 针对各个不同的图形对象来编写出能够实现该功能的函数代码, 确保这个图形界面能够完成所预定的功能。3.1 界面设计首先我们新建一个GUI文件,如下图所示:                                             图6  新建GUI文件选择Blank GUI(Default)。进入GUI开发环境以后添加5个编辑文本框,8个静态文本框,和1个下拉菜单。利用菜单编辑器,创建Open、Print、Close三个菜单。创建好GUI界面需要的各交互控件并调整好大概的位置后,设置这些控件的属性。最后的界面效果如下图示:                                             图7  界面效果3.2 代码设计(1)打开M文件编辑器(M-file Edit),点击 向下的三角图标,可以看到各个对象的回调函数(Callback),某些对象的创建函数或打开函数等。通过选中相应项就可以跳动对应函数位置进行程序编辑。    选中edit_callback选项,光标跳到 function edit1_Callback(hObject, eventdata, handles)下面空白处,添加以下代码:user_entry=str2double(get(hObject,'String');if isnan(user_entry)    errordlg('请输入数值!','Bad Input')end该语句严格限制编辑框内必须输入数值,否则出现错误对话框(如下图所示)。同理在其他四个编辑框的回调函数下输入相同的代码。   图8  错误对话框(2)打开M文件编辑器(M-file Edit),点击 向下的三角图标,设置下拉菜单返回函数,光标跳到 function popupmenu1_Callback(hObject, eventdata, handles)下面空白处。由于下拉菜单是本界面设计关键控件,与本设计相关的程序都放在这个返回函数下。添加代码如下:L1=str2double(get(handles.edit1,'String');L2=str2double(get(handles.edit2,'String');L3=str2double(get(handles.edit3,'String');L4=str2double(get(handles.edit4,'String');w2=str2double(get(handles.edit5,'String');th2=0:2/72:2*pi;th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',1 1,options,th2(m),L2,L3,L4,L1);endw2=250;for i=1:length(th2)A=-L3*sin(th34(i,1) L4*sin(th34(i,2); L3*cos(th34(i,1) -L4*cos(th34(i,2);B=w2*L2*sin(th2(i); -w2*L2*cos(th2(i);w=inv(A)*B; w3(i)=w(1);w4(i)=w(2);endfor i=1:length(th2)C=-L3*sin(th34(i,1) L4*sin(th34(i,2);L3*cos(th34(i,1) -L4*cos(th34(i,2);D=w22*L2*cos(th2(i)+w3(i)2*L3*cos(th34(i,1)-w4(i)2*L4*cos(th34(i,2);.   w22*L2*sin(th2(i)+w3(i)2*L3*sin(th34(i,1)-w4(i)2*L4*sin(th34(i,2);a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);endval=get(hObject,'Value');str=get(hObject,'String');switch strvalcase '连杆3的几个位置点'th2=0:1/6:2*pi;     th34=zeros(length(th2),2);     options=optimset('display','off');     for m=1:length(th2)          th34(m,:)=fsolve('fourbarposition',1 1,options,th2(m),L2,L3,L4,L1);     end     y=L2*sin(th2)+L3*sin(th34(:,1)');     x=L2*cos(th2)+L3*cos(th34(:,1)');     xx=L2*cos(th2);                                                                                                                      yy=L2*sin(th2);     plot(x;xx,y;yy,'k',0 L1,0 0,'k-',x,y,'ko',xx,yy,'ks')     title('连杆3的几个位置点')     xlabel('水平方向')     ylabel('垂直方向')     axis equal     grid oncase '角位移线图'     plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)     axis(0 360 0 170)     grid  on     xlabel('主动件转角theta_2(度)')      ylabel('从动件角位移(度)')     title('角位移线图')     text(120,120,'摇杆4角位移')     text(150,40,'连杆3角位移')case '角速度线图'     plot(th2*180/pi,w3,th2*180/pi,w4);     axis(0 360 -175 200)     text(50,160,'摇杆4角速度(omega_4)')     text(220,130,'连杆3角速度(omega_3)')     grid on     xlabel('主动件转角theta_2(度)')     ylabel('从动件角速度(radcdot s-1)')     title('角速度线图')case '角加速度线图'plot(th2*180/pi,a3,th2*180/pi,a4);     axis(0 360 -50000 65000)     text(50,50000,'摇杆4角加速度(

    注意事项

    本文(基于matlab的四杆机构运动分析(共16页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开