基于Matlab实现曲柄摇杆机构的运动设计.doc

基于Matlab实现曲柄摇杆机构的运动设计.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Matlab实现曲柄摇杆机构的运动设计

实用数值方法(Matlab) 小论文题目: 基于Matlab实现曲柄摇杆机构的运动设计 小组成员姓名: 毛晓雯 学号: 201202070607 班级: 机自6 班 2014-2015(1)学期 提交日期:2014年12月29日 基于Matlab实现曲柄摇杆机构的运动设计 1 问题提出与数学模型的建立 曲柄摇杆机构是铰链四杆机构中的一种,在实际工程应用中,该机构应用广泛,如缝纫机踏板机构、搅拌机机构等。现要求设计一曲柄摇杆机构,能同时实现以下几个要素: 1)2)为改善机构的传力性能,当该机构曲柄与连杆重叠共线时,最大压力角尽可能小(); 3)该摇杆摆角。 1.1 设计变量的确定 设分别为该四杆机构的杆长,考虑计算的方便性,令,,, ,于是设计变量为。 图1-1 曲柄摇杆机构简图 1.2 目标函数的建立 当曲柄摇杆机构的各杆长度确定后,该机构的摇杆摆角、最大压力角及极位夹角都会确定下来,即该机构的各项性能也能确定下来。这里,将摇杆摆角这个目标处理为无限接近这个目标值,定义为一目标函数,求之同之差的绝对值的最小值。由图1-1及设计要求,可列出该设计的分目标函数。 因为,由余弦定理可得极位夹角的目标函数: 对于曲柄摇杆机构来说,当主动曲柄与机架共线的两位置之一处,压力角达到最大。在这里,我们很容易知道当点位于A和D之间的这种情况,压力角最大(如图1-2所示)。故最大压力角的目标函数: 摇杆的实际最大摆角为,故 所以实际最大摆角与理论最大摆角间偏差的目标函数: 图1-2 曲柄摇杆压力角达到最大位置 这里,根据设计要求,极位夹角尽可能大为好。为了能实现用Matlab编程求解,做一下处理,定义。这样就实现了,满足Matlab优化工具箱对目标函数的统一要求。下面对各目标函数的范围做进一步明确: 为保证极位夹角尽可能大,确定极位夹角不小于,即,于是转换成弧度,有; 由设计要素的条件得:; 3)为保证摇杆的摆角尽可能接近,使,转换成弧度,有: 。 1.3 约束条件的确定 曲柄摇杆机构要满足曲柄存在的条件。其中最长杆与最短杆的长度之和应小于等于其它两杆长度之和;最短杆为连架杆(此处为)。为了便于计算,这里取,因此有: 2 使用Matlab进行优化求解 这里曲柄摇杆机构的数学模型属于一般非线性多目标规划问题。其基本模型 调用Matlab优化工具箱中非线性规划求解函数fgoalattain来求解。其命令的基本格式:[X,fval,attainfactor,exitflag]=fgoalattain(@ObjFun,x0,goal,weight,A,b,Aeq,beq,lb,ub);其中各个参数的含义如下:ObjFun为定义求解的多目标函数;x0为变量初值;A,b为约束函数中线性不等式约束的参数;Aeq,beq为约束函数中线性等式约束的参数;c(x),ceq(x)均为非线性函数组成的向量;lb,ub分别是变量X的下限和上限值;goal是目标函数边界组成的向量;Weight是目标函数的权重值。对于判断求解是否有效可通过attainfactor和exitflag两个参数来确定:当exitflag0时,表示目标值没有溢出goal。本例求解最优解,分两个步骤进行: 先建立M文件ObjFun.m,定义各个目标函数 输入: function f=Objfun(x) f1=-abs(acos(((x(1)-1)^2+x(3)^2-x(2)^2)/(2*x(3)*(x(1)-1)))-acos(((x(1)+1)^2+x(3)^2-x(2)^2)/(2*x(3)*(x(1)-1)))); %极位夹角的目标函数 f2=pi/2-acos((x(1)^2+x(2)^2-(x(3)-1)^2)/(2*x(1)*x(2)));%最大压力角的目标函数 f3=abs(acos((x(2)^2+x(3)^2-(x(1)+1)^2)/(2*x(2)*x(3)))-acos((x(2)^2+x(3)^2-(x(1)-1)^2)/(2*x(2)*x(3)))-pi/3);%摇杆摆角的目标函数 f=[f1;f2;f3]; 根据非线性多目标规划求解函数fgoalattain的形式,建立主程序 输入: goal=[-0.1745 0.95993 0.01745]; %给定目标函数的上边界向量 weight=[0.3333 0.3333 0.3333]; %个目标的权重值 x0=[3 3 3]; A=[-1 0 0;0 -1 0;0 0 -1;1 -1 -1;-1 -1 1]; b=[-1; -1; -1; -1; -1]; Aeq=[]; beq=[]; lb=[1 1 1]; ub=

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档