1 内容介绍
运用MATLAB的优化工具箱对直齿圆柱齿轮传动进行了优化设计,其约束优化时采用fmincon求解器,优化结果与常规设计结果比较,获得了更为紧凑的结构.通过应用实例验证了其优化方法的可靠性,可为齿轮结构的优化设计提供参考.
2 部分代码
function JK=JofK(m,phis,ar,rrT,ts,N1,N2,C,rT1,rT2)
%此处多添加部分是为了判断函数是否能计算,若不能计算则返回主函数,并返回空值,用来判断计算出错,给出提示框
CENUM={m,phis,ar,rrT,ts,N1,N2,C,rT1,rT2};
CEN=sum(cellfun('isempty',CENUM));
%判断输入数中是否有空值,若是有的话,返回空值
if CEN
JK=[];
return
else
[urmin,urmax,e,xD,rf,xrp,yrp,gammaw,phi]=Parameter(m,phis,ar,rrT,ts,N1,N2,C,rT1,rT2);
options=optimset('display','off');
ur=fminbnd(@KofJ,urmin,urmax,options,m,rf,e,rrT,N1,xrp,yrp,phis,xD,gammaw);
KJ=KofJ(ur,m,rf,e,rrT,N1,xrp,yrp,phis,xD,gammaw);
%这里调用了KofJ子函数,若是子函数返回的值为空,则此子函数的字也返回为空
if ~isempty(KJ)
JK=-cos(phi)/KJ;
else
JK=[];
return
end
end
3 运行结果
4 参考文献
[1]侍红岩, 吴晓强, 单晓敏,等. 基于MATLAB/GUI的直齿圆柱齿轮齿厚计算软件设计[J]. 机床与液压, 2015(18).
[2]陈清胜. 基于MATLAB的直齿圆柱齿轮传动的优化设计研究[J]. 机械管理开发, 2010, 25(6):2.部分理论引用网络文献,若有侵权联系博主删除。