车辆盘式制动器仿真与优化设计(MATLAB版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
车辆盘式制动器仿真计算与优化设计(上)
运用了fmincon函数来进行求解最优值。
优化主函数:
clear all
clc
hd = pi/180;
r = 0.302; f = 0.35; rou = 7513;
x0 = [ 261e-3 14.2e-3 50.8e-3 3.20e6 0.062 0.126 0.8727 ];
x = x0;
Re = 2/3*(x(6)^3-x(5)^3)/(x(6)^2-x(5)^2);
Tf0 = 2*f*0.25*pi*x(3)^2*Re*1e6;
md0 = 0.25*pi*x(1)^2*x(2)*rou;
lb = [245e-3 13.5e-3 48e-3 1.5e6 0.05 0.09 0.82];
ub = [280e-3 15.1e-3 58e-3 7.5e6 0.075 0.16 1.5708];
[x,y] = fmincon ('disc_m',x0,[ ],[ ],[ ],[ ],lb,ub,'disc_y');
Re = 2/3*(x(6)^3-x(5)^3)/(x(6)^2-x(5)^2);
Tf = 2*f*0.25*pi*x(3)^2*Re*x(4);
md = 0.25*pi*x(1)^2*x(2)*rou;
fprintf('优化前盘式制动器制动力矩Tf0 = % 3.2f N·m \n',Tf) fprintf('优化前制动盘质量md0 = % 3.2f kg \n',md0)
fprintf('优化后盘式制动器制动力矩Tf = % 3.2f N·m \n',Tf) fprintf('优化后制动盘质量md = % 3.2f kg \n',md)
优化目标函数
function o = disc_m(x)
dh = 0.305; dg = 0.12; va = 8.33; v1 = 100/3.6; v2=0; P = 2.76e6; lmd = 1.15; r=0.307; ul = 0.65; f = 0.35; rou = 7513; A = 0.94;
x(3) = 50.8e-3;
Re = 2/3*(x(6)^3-x(5)^3)/(x(6)^2-x(5)^2);
Tf = 2*f*0.25*pi*x(3)^2*Re*x(4);
z = 0.9; J = 4.18;
m = 1880;
beta = 0.6;
cd = 482;
md = 0.25*pi*x(1)^2*x(2)*rou;
E = 0.5*m*(v1^2-v2^2)*beta;
a = 0.34;
dt = a*z*E/(J*md*cd);
o = Tf/dt;
优化约束函数
function [c,ceq] = disc_y(x);
ceq = [ ];
dh = 0.315; dg = 0.12; va = 8.33; v1 = 100/3.6; v2=0; P = 2.76e6;
lmd = 1.15; r = 0.307; e = 6e-6; ul = 0.6; f = 0.35; cd = 482; rou = 7513; A = 0.94; pm = 7.5e6;
z = 0.9; J = 4.18;
j = 0.6*9.8;
t = v1/j;
A1 = 2*0.25*x(7)/2*(x(6)^2-x(5)^2);
m = 1880;
md = 0.25*pi*x(1)^2*x(2)*rou;
Re = 2/3*(x(6)^3-x(5)^3)/(x(6)^2-x(5)^2);
Tf = 2*f*0.25*pi*x(3)^2*Re*x(4);
beta = 0.6; a = 0.34;
c(1) = lmd*Tf-ul*m*9.8*r*beta/2;
c(2) = beta*m*j*r/f/Re/A1/1-2.4e6;
c(3) = x(4)-pm;
c(4) = a*m*va^2*beta/(J*rou*cd*pi*x(1)^2*x(2))-15;
c(5) = x(1)-0.77*dh;
c(6) = x(6)+0.002-x(1)/2;
c(8) = dg/2+0.003-x(5)/2;
c(7) = x(3)/2+0.004+dg/2-(x(6)-x(5))/2;
c(9) = 1.27-x(6)/x(5);
c(10) = x(6)/x(5)-1.63;
c(11) = 0.25*m*v1^2/t/A1/2*beta-6e6;
代码未完.见下节