微型飞机机翼设计大作业.docx
《微型飞机机翼设计大作业.docx》由会员分享,可在线阅读,更多相关《微型飞机机翼设计大作业.docx(22页珍藏版)》请在冰豆网上搜索。
微型飞机机翼设计大作业
能源与动力学院
微型飞机机翼设计报告
学号:
姓名:
2010-4-27
微型飞机机翼设计报告
一.设计题目及要求
某小型无人机重100kg,设计飞行速度100m/s,飞行高度3000m。
使用Foil.html等课件作工具,设计其机翼,
(1)应使该机翼在5度攻角时可产生足够升力保持飞机匀速平飞,
(2)且尽量使附面层(尤其是上翼面)的压力梯度(或速度分布)不产生分离、或分离区尽量小;(3)分析估算摩擦阻力,应尽量减小摩阻。
二.设计过程
(1)使用Foil.html等课件,设计其机翼。
(2)利用Foil得到的机翼数据,分析估算摩擦阻力,应尽量减小摩阻。
1、利用Foil得到的机翼数据,建立数据文件;
2、编写附面层Karman积分计算的程序,读入你所设计机翼的数据,进行上下表面动量损失厚度的计算
源公式:
其中Ө为动量损失厚度.
在此MATLAB程序中我们采用简化算法即
其中:
采用Thwaites方法:
λ计算的取值范围为[-0.09,+0.25]
若计算中出现λ>+0.25,则取为+0.25
若计算中出现λ<-0.09,则取为-0.09
为了计算此积分,我们采用了龙格—库塔的积分方法,其积分方法如下所示
其中:
三.设计结果程序
functionOUTS=Drag_Airfoil
%%%ExamplecodeforsolvingtheBoundaryLayerofairfoil
%%%WrittenbyHuangGuoping,2007/4/10
nmax=19;
%inputthedataofanairfoil
[Density,Tem,Vupstream,Chord,Span,DataU,DataL]=inputData(nmax);
miu=Sutherland(Tem);Vsound=sqrt(1.4*287.2*Tem);
XU=Chord*DataU(:
1)';YU=Chord*DataU(:
2)';PU=DataU(:
3)*1000';VU=DataU(:
4)/3.6';
XL=Chord*DataL(:
1)';YL=Chord*DataL(:
2)';PL=DataL(:
3)*1000';VL=DataL(:
4)/3.6';
%plottheshapeofairfoil
plotfoil(XU,YU,XL,YL);
%computetheboundarylayerofairfoil'suppersurface
lengthU
(1)=0;thetaU
(1)=0;CfU
(1)=0;HU
(1)=1;
forn=2:
nmax
dx(n)=dis(XU,YU,n);
lengthU(n)=lengthU(n-1)+dx(n);
ifn==2
[thetaU(n),CfU(n),HU(n)]=BoundaryLayer_Flatplate(lengthU(n),VU(n),Density,miu);
else
[thetaU(n),CfU(n),HU(n)]=BoundaryLayerEquation(dx(n),lengthU(n),n,VU,Density,miu,thetaU(n-1),CfU(n-1),HU(n-1));
end
out=[n,Density*VU(n)*length(n)/miu/1e6,thetaU(n),CfU(n),HU(n)]
end
%computetheboundarylayerofairfoil'slowersurface
lengthL
(1)=0;thetaL
(1)=0;CfL
(1)=0;HL
(1)=1;
forn=2:
nmax
dx(n)=dis(XU,YU,n);
lengthL(n)=lengthL(n-1)+dx(n);
ifn==2
[thetaL(n),CfL(n),HL(n)]=BoundaryLayer_Flatplate(lengthL(n),VL(n),Density,miu);
else
[thetaL(n),CfL(n),HL(n)]=BoundaryLayerEquation(dx(n),lengthL(n),n,VL,Density,miu,thetaL(n-1),CfL(n-1),HL(n-1));
end
out=[n,Density*VL(n)*length(n)/miu/1e6,thetaL(n),CfL(n),HL(n)]
end
%computethePressuredrag
DragPU=DragP(nmax,XU,YU,PU)*Span;
DragPL=-DragP(nmax,XL,YL,PL)*Span;
%plottheresultsofairfoil
plotResults(lengthU,VU/Vupstream,thetaU/(Chord*0.001),CfU,HU);
plotResults(lengthL,VL/Vupstream,thetaL/(Chord*0.001),CfL,HL);
DragU=thetaU(nmax)*Span*Density*Vupstream*Vupstream
DragL=thetaL(nmax)*Span*Density*Vupstream*Vupstream
Drag=DragU+DragL
%ENDOFMAIN
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function[Density,Tem,Vupstream,Chord,Span,DataU,DataL]=inputData(nmax)
%N=input('enternoofgridpoints__');
file1=fopen('foil.dat','r');
ccc=fscanf(file1,'%7f%7f%7f%7f%7f',[51])';
Density=ccc
(1);Tem=ccc
(2);Vupstream=ccc(3);Chord=ccc(4);Span=ccc(5);
tempc=fscanf(file1,'%20c',[11]);
DataU=fscanf(file1,'%8f%8f%7f%6f',[4nmax])';
tempc=fscanf(file1,'%20c',[11]);
DataL=fscanf(file1,'%8f%8f%7f%6f',[4nmax])';
fclose(file1);
%END
functionmiu=Sutherland(Tem)
miu0=1.4587e-6;Tem0=110.4;
miu=miu0*((Tem)^1.5)/(Tem+Tem0);
%END
functiondistance=dis(X,Y,n)
distance=sqrt((X(n)-X(n-1))^2+(Y(n)-Y(n-1))^2);
%END
function[theta,Cf,H]=BoundaryLayer_Flatplate(length,V,Density,miu)
Rel=Density*V*length/miu;
II=1;
ifII==1
%BlasuisSolutionforlaminarflow
theta=0.664*length/sqrt(Rel);
Cf=0.664/sqrt(Rel);
H=2.59;
elseifII==2
%Algorithmforturbulentflow
theta=0.0142*(Rel^(6/7))*miu/(Density*V);
Cf=0.026*(Rel^(-1/7));
H=1.375;
else
end
%END
functionDrag=DragP(nmax,X,Y,P)
Drag=0;
forn=2:
nmax
dy=Y(n)-Y(n-1);
Drag=Drag+0.5*dy*(P(n)+P(n-1));
end
%END
functionplotfoil(XU,YU,XL,YL)
figure
holdon;
plot(XU,YU,'-o');
plot(XL,YL,'-o');
axis'equal';
holdoff;
%END
function[theta,Cf,H]=BoundaryLayerEquation(dx,length,n,V,Density,miu,theta1,Cf1,H1)
Sita
(1)=theta1;
CF
(1)=Cf1;
Hh
(1)=H1;
Sita
(2)=Sita
(1)+dx*(CF
(1)/2-(2+Hh
(1))*Sita
(1)*(V(n)-V(n-1))/V(n)/dx)/8;
fori=2:
1:
4
Lamuda(i)=Density*(Sita(i)^2)*(V(n)-V(n-1))/miu/dx;
ifLamuda(i)>0.25
Lamuda(i)=0.25;
elseifLamuda(i)<=-0.09;
Lamuda(i)=-0.09;
end
ifLamuda(i)>=0
l(i)=0.22+1.57*Lamuda(i)-1.8*Lamuda(i)^2;
Hh(i)=2.61-3.75*Lamuda(i)-5.24*Lamuda(i)^2;
else
l(i)=0.22+1.042*Lamuda(i)+0.018*Lamuda(i)/(0.107+Lamuda(i));
Hh(i)=2.088+0.0731/(0.14+Lamuda(i));
end
CF(i)=2*miu*l(i)/Density/V(n)/Sita(i);
Sita(i+1)=Sita
(1)+dx*(CF(i)/2-(2+Hh(i))*Sita(i)*(V(n)-V(n-1))/V(n)/dx)/(2^(4-i));
end
ifLamuda(i)==-0.09
disp('附面层出现分离');
end
H=Hh(i);
Cf=CF(i);
theta=Sita(i);
%END
functionplotResults(L,V,theta,Cf,H)
figure
holdon;
plot(L,V,'-rs');
holdoff;
figure
holdon;
plot(L,theta,'-o');
holdoff;
%plot(L,Cf,'-*');
holdon;
plot(L,H,'-+');
holdoff;
%END
其中黑体部分是自编程序部分,具体是根据上文所述的内容而编出的。
程序运行结果及结果数据分析见下文。
四.设计结果分析
1.关于分离点的位置影响因素:
(1)、camber不变时,chord和span变化时
.第一组数据:
Camber=2.0%chord,Thickness=9.475%chord,
Chord=0.359m,Span=0.868m
机翼外形图像
(1)
(2)
(3)(4)
Drag=5.9134
以下是输出详细数据:
out=2.00009.18540.00000.00282.5900
out=3.00008.96240.00000.00192.6659
out=4.00008.57600.00000.00132.7515
out=5.00008.23410.00000.00112.7713
out=6.00007.92200.00000.00092.8093
out=7.00007.63960.00010.00072.8416
out=8.00007.35720.00010.00062.9262
out=9.00007.08970.00010.00053.0267
out=10.00006.80730.00010.00023.3481
附面层出现分离
out=11.00006.53970.00010.00013.5500
附面层出现分离
out=12.00006.27220.00010.00013.5500
附面层出现分离
out=13.00006.00470.00010.00013.5500
附面层出现分离
out=14.00005.75200.00020.00013.5500
附面层出现分离
out=15.00005.51420.00020.00013.5500
附面层出现分离
out=16.00005.30610.00020.00013.5500
附面层出现分离
out=17.00005.12770.00020.00013.5500
附面层出现分离
out=18.00004.96430.00020.00013.5500
附面层出现分离
out=19.00003.86440.00050.00003.5500
out=2.00001.05530.00010.00822.5900
out=3.00002.58620.00000.01081.9992
out=4.00004.02790.00000.00602.2220
out=5.00004.66700.00000.00352.4251
out=6.00004.94940.00000.00242.5082
out=7.00005.06830.00010.00182.5571
out=8.00005.08320.00010.00142.6019
out=9.00005.03860.00010.00122.6426
out=10.00004.97910.00010.00102.6657
out=11.00004.90480.00010.00092.7014
out=12.00004.81560.00010.00072.7571
out=13.00004.74130.00010.00072.7601
out=14.00004.69670.00010.00072.7123
out=15.00004.66700.00010.00072.6907
out=16.00004.66700.00010.00072.6100
out=17.00004.68190.00010.00082.5503
out=18.00004.74130.00010.00112.2146
附面层出现分离
out=19.00003.86440.00020.00013.5500
DragU=3.9960
DragL=1.9175
Drag=5.9134
注:
上图中
(1)代表上表面的速度分布;
(2)代表下表面的速度分布;
(3)代表上表面H因子和Theta的变化;
(4)代表下表面H因子和Theta的变化。
下列图像规则同上。
分析:
以上数据表明,所设计机翼其上表面在第9个点出现附面层分离,下表面只有最后一点出现附面层分离,因此所设计机翼需要进行改进。
具体改进参见数据3、4、5
.第二组数据:
Camber=2.0%chord,Thickness=9.475%chord,
Chord=0.377m,Span=0.754m
(1)
(2)
(3)(4)
Drag=5.2640
结论:
由上图可知,当camber不变的时候,chord和span的变化对分离的点的影响较小,基本可以忽略不计。
空气阻力却与chord和span有着密切的关系,当chord增大,span减小时,阻力会随之减小,反之则阻力随之增大。
具体原因是由于机翼前缘附面层较薄,因此速度梯度较大,所以机翼前缘的粘性阻力较大,机翼沿流线方向向后则空气阻力随之减小。
因此,机翼弦长较短,翼展较大时,相对的机翼前缘就比较长,所以空气阻力就较大,反之则空气阻力较小。
(2)、camber变化时,chord和span的影响因素可忽略。
.第三组数据:
Camber=0.4%chord,Thickness=6.5%chord,
Chord=0.365m,Span=0.982m
(1)
(2)
(3)(4)
Drag=1.4508
.第四组数据:
Camber=5.0%chord,Thickness=6.5%chord,
Chord=0.31m,Span=0.64m
(1)
(2)
(3)(4)
Drag=2.1672
.第五组数据:
Camber=9.5%chord,Thickness=6.5%chord,
Chord=0.256m,Span=0.525m
(1)
(2)
(3)(4)
Drag=3.7562
结论:
由上述过程中,可以发现当camber增大,Thickness相对不变时,其上表面的分离位置向后移动,但是下表面的中部会出现分离点,因此结论是设计机翼时需要根据具体情况设计,并且需要进行多次的反复的修改和优化,以达到最优的设计。
camber增大,其摩擦阻力成增大趋势;根据第一二组数据可知:
当chord增大,span减小时,其摩擦阻力成减小趋势。
五.机翼设计心得
经过长时间的努力和坚持,我终于完成了粘性流体力学的大作业。
粘性流体力学大作业是让我们将理论的学习应用于实践,并且让它得到升华,让我对粘性流体力学这门课程有了更加深刻的了解,并且感受到了这门课程的独特和无穷的魅力。
本次的大作业是锻炼我们实际操作的能力,培养了我们工程设计的理念。
首先,在刚开始设计时,我只是在Foil.html这个软件下凭借自己的主观感觉进行设计,后来通过Matlab程序运行计算出结果后我通过多组数据进行对比,采用了变量的方法,发现了设计机翼中的那种潜在的规律,这对于我学习和理解粘性流体力学这门课程有着很大的帮助。
其次,在实际设计过程中,我们不仅需要掌握粘性流体力学的基本知识,还要熟练运用MATLAB进行数据分析,因此Matlab编程就是很关键的一个环节。
由于原来接触的Matlab只是简单的几句语句,因此,这次编程对我来说是有着很大的困难,但是经过不懈的努力和与同学们的讨论,我终于编出了用于解决这个问题的程序来,这大大加深了我对龙格库塔差值方法的理解和掌握,以及认识了它的应用。
在进行大作业的整个过程中需要各方面的知识的融会贯通,才能进行初步的程序设计。
然后,在数据分析的阶段,我设计了很多组机翼,分析每个参数对机翼的影响,因此我耗费了大量的时间,但是我从中也学到了许多东西,加深了在课堂上学习内容的理解。
这次机翼的设计对我来说可以认为是一种挑战,但它真正的培养了我们所需的工程设计的基本本领,让我们学到了很多课堂上无法学到了知识。