RoboMaster

标题: 【RM2020 飞行器仿真分析及理论分析开源文档】 [打印本页]

作者: RoboMaster赛务    时间: 2020-2-27 23:55
标题: 【RM2020 飞行器仿真分析及理论分析开源文档】
[attach]26316[/attach]





第一章.结构仿真

内容简介

验证飞镖的落地冲击,以及被车碾压的情况。可以用ansys自带的explicit dynamics进行仿真计算,依据应力云图可以得到飞镖需要补强的部位。
(安装方法:微信搜索“软件安装管家”,在软件目录中有ansys安装包以及安装方法)
ansys操作步骤:
[attach]26243[/attach]

第二步:打开enginnering data选取以及定义材料特性

[attach]26244[/attach]
[attach]26245[/attach]


第三步:选取enginnering data source找到飞镖,地面以及基地的材料。如果没有,可自行添加以及定义材料特性。

[attach]26246[/attach]
新材料设置需定义的相关系数

第四步:打开geometry
[attach]26247[/attach]
第五步:依次点击file,import external geometry选取飞镖igs模型
[attach]26382[/attach]
第六步:选取一个坐标系,点击new sketch开始冲击面的搭建,完成后选取extrude拉升成立体

[attach]26249[/attach]
[attach]26250[/attach]
[attach]26251[/attach]
冲击面侧面图
[attach]26252[/attach]
冲击面俯视图
[attach]26253[/attach]

第七步:在冲撞点区域正上方做一个line body(concepts>create lines from sketch并投影到冲击面的面(tools>projection>左键冲击面,这是为了之后的冲击面网格细化.[attach]26254[/attach]

第八步:回到workbench选取Mesh[attach]26255[/attach]
第九步:右键Mesh>insert>sizing>选取机身与冲击地面即将接触的面>在左侧的element size处输入网格的大小>重复以上步骤定义其他面,立体的网格大小>点击update查看网格

[attach]26256[/attach]

[attach]26257[/attach]
网格侧面图


第十步:点击initial conditions > velocity>geometry>左键全部的机身固体>下方definition处define by > component > 定义x,y,z,的速度
[attach]26258[/attach]

[attach]26259[/attach]
成功后看到的图像,箭头为综合速度矢量方向第十一步:点击fixed support > 选取所有的被冲击体12条edges
[attach]26260[/attach][attach]26261[/attach]

第十二步:右键solutions > 依次选取想要查看的应力,形变等
[attach]26262[/attach]

第十三步:点击左上tools > solve process settings > advanced > max number of utilized cores (设置平行运算的核数,越多算的越快)

[attach]26263[/attach]

第十四步:点solve开始运算>点solution里的solution information查看进度    ps:如果运算太慢,可调整plicit dynamics > analysis settings > analysis settings preference 里的算法至low speed(需设置minimum cfl time step 这里空间太小就不予与解释了,可自行上网查定义)
[attach]26264[/attach]


第十五:运算完选取solution里查看受力情况,可点击上方的max,min查看最大值,最小值所在区域
[attach]26265[/attach]

第十六步:在各个不同应力情况下调整legend box以及颜色布局找到超过材料最大挤压、剪切应力的区域
[attach]26266[/attach]


第十七步:找到薄弱点并做补强处理,重复1-15步来验算强度,也可参考以上步骤测试机身抗机器人碾压况(需要设置好体与体之间的接触条件即可

[attach]26268[/attach]



第二章轨迹仿真
飞行器的相关参数简介
[attach]26269[/attach]
1:飞镖机体坐标系

[attach]26270[/attach]
[attach]26271[/attach]
2:机体坐标系内的力矩计算微分方程式 相应力力矩系数的表达式
force and moment differential equations under body-axis)

Lift coefficient(CL) --- 力系数
Drag coefficient (CD)--- 阻力系数
Sideforce coefficient (C_gamma)--- 侧力系数
Pitching moment coefficient (Cm)--- 俯仰力矩系数
Rolling moment coefficient (Cl)---- 翻滚力矩系数
Yawing moment coefficient (Cfile:///C:/Users/Y/AppData/Local/Temp/ksohtml18996/wps50.jpg)----- 偏航力矩系数

飞镖飞行过程会受到3个方向(longitudinal,lateral,normal axis,在此依次简称x,y,z,轴力与力矩,运用牛顿第一定律可得知3个方向的速度,角加速度情况。图2左侧展示了详细的公式,右侧则为为了方便运算,各个力,力矩的系数表达式。
系数转化公式为:
[attach]26312[/attach]
rho---空气密度kg/m^3 (air density)
L----飞机长度m (dart longitudinal length)
A---底面积m^2  (bottom reference area)
注意这A,L为固定的参考只是用来方便系数的转化


举例F(Ax)的数值,则
[attach]26313[/attach]


根据2去掉水平尾翼相关的系数,假设飞机飞行状态没有左右偏移,所以所需要的公式则简化成



[attach]26314[/attach]



得这些系数的方法有两个一个为用风洞或者CFD的方式去模拟一个飞镖飞行的状态然后去取得飞镖各个角相应的升力,阻力,力矩值然后运用系数转化公式去得到相应系数。但这个流程花费时间较长,而且没有一定经验的同学不好上手。 第二个则为运用气动估算软件输入飞镖的一些简单几何数据,翼型特征,则可得到所有6个自动度有关的系数。这个运算流程特别快,而且得到的系数根据cfd比对十分接近,所以比较推荐。
这边气动估算软件推荐使用:Digital Datcom与Missle Datcom美国空军研发的一气动估算软件
大家可在这个网址找到开源下载地址http://www.pdas.com/datcom.html第二个地址需要大家自己csdn上找。

第一步.以missle Datcom为例拿到必要的系数该软件需要在ubuntu系统下操作以下例子中提到的程序流程可在flight_trajectory.tar.gz文件解压包中的airfoil_calculation.m matlab文件中找到
missle Datcom操作步骤:


1.下载missle datcom后找到文件missle datcom users guide, 里面有软件的全部使用介绍,英语比较好的同学如果使用软件上有问题的话可以打开去查。

2. 找到文档里的for005.dat文件文件为输入文件,所有飞镖有关的数据都在里面输入.

3.首先FLTCON处输入飞行飞行马赫数,以及飞行高度注意输入格式数字后缀必须加上.0NALPHA,NMACH为应角数量以及马赫数量。飞行速度与马赫的转换关系为,[attach]26315[/attach]
gamma为常数1.4, R为287,T为单位为Kelvin的温度


[attach]26272[/attach]

4.在REFQ输入飞机参考面积,长度,以及宽度,x轴以及z轴重心所处位置,以及飞镖表面边界层状况,TURB为完全紊流NATURAL为自然转换。飞镖的雷诺数由于处于比较低的状态所以一般情况可改为NATURAL,具体可比较两种情况下数据的不同。


[attach]26273[/attach]

5.在下面输入飞镖的侧面形状,有两种表达方式,一种为假设飞镖为对称体,一种为椭圆形,两种输入方式可参考文档第38-43页。

[attach]26274[/attach]



以椭圆形为例子,TNOSE为机头的形状,可设置为圆锥形,头肩形,等等。LNOSE为机头长度,WNOSE为机头底端椭圆形宽度,ENOSE为机头椭圆形高度宽度比,BNOSE为机头最顶端半径,LCENTER为机身长度,WCENTER为机身底端宽度,ECENTER为机身椭圆形高度宽度比,TAFT为尾端形状,LAFT为尾部长度,WAFT为机尾底端宽度,EAFT为机尾椭圆形高度
宽度比。 图片下面为AXIBODY设置的参考图,ELLIBODY可把DNOSE,DCENTR和DAFT当成WNOSE,WCENTR和WAFT。


[attach]26275[/attach]
[attach]26276[/attach]


6.之后输入飞镖的主翼几何特征,XLE为机头到主翼顶端的距离,NPANEL为主翼数量,左右两侧分别为1个,SWEEP为机翼掠角PHIF为从Z轴顺时针旋转机翼的所在位置,90度为飞机右侧,270为飞机右侧。CHORD为机翼弦长从根到顶端的分布情况,可任意选N个节点来定义,SSPAN为定义节点到飞机中心点的距离,CFOC为各个节点机翼控制面占该节点机翼弦长占比。Xcord,yupper,ylower分别为机翼侧面几何特征图,注意xcord,yppuer,ylower最大输入量为50且第一和最后一个值都为0.

[attach]26277[/attach]
Chord,sspan,cfoc图像展示

[attach]26278[/attach]
机翼侧面定义(2d airfoil sectional view)

  [attach]26279[/attach]
[attach]26280[/attach]
例子用的E387机翼模型
7.定义尾翼几何特征,与主翼定义基本一致,意此处SECTYP改为NACA以及以下定义的NACA0018机翼



[attach]26281[/attach]

8.定义输出数据类型,deriv deg为输出微分数据的角度单位。Dim M为输出所有长度数据为米,damp为输出飞机的动导数save和next case为固定结束用词。


[attach]26282[/attach]


9定义实现飞机静稳定的副翼最大舵量值, delmin为向上最大角度,delmax为向下最大角度,set为控制副翼所在的位置,1为主翼,2为尾翼。

[attach]26283[/attach]



10. 完成for005.dat编辑后,运行./misdat,如果编辑没有问题,则会输出for006.dat文件,打开改文件查看数据。

[attach]26284[/attach]
For006.dat输出静态数据

[attach]26285[/attach]
飞镖机身坐标系与风向坐标系的关系 (relationship between body-axis and wing stability axis)
机头 – vehicle nose
风向wing velocity direction
(橙色为飞镖机身坐标系(body-axis),黑色为风向坐标系(wing stability axis)

[attach]26286[/attach]
For006.dat输出动态数据

[attach]26287[/attach]
For006.dat输出的控制静稳定
以上的数据可通过datcomimport导入MATLAB进行接下来的轨迹方针,具体输入格式可打help datcomimport得知。

第二步.基于MATLAB SIMULINK的轨迹仿真1. 打开matlab,在底部输入asbSkyHogg可打开基于轻形飞机设计的simulink轨迹仿真图。详情可进https://www.mathworks.com/help/aeroblks/lightweight-airplane-design.html了解,里面包括了运用digital datcom得到以上系数的方法。由于该Simulink例子包括了飞机飞行环境,推力以及,电机的仿真,所以可把无关紧要的block进行删除处理。

1) 打开simulink后主要页面图
[attach]26288[/attach]

2) 打开vehicle system model后的图
[attach]26289[/attach]
  

3) 打开vehicle后的图
[attach]26290[/attach]


4) 点开aerodynamics的图
[attach]26291[/attach]

5) 自行设置的飞镖纵向仿真的力,力矩计算图
[attach]26292[/attach]

6) 打开各个interpolation block 设置用来做插值的数据

[attach]26293[/attach]

完成设置后可返回第三个步骤打开6dof>3dof里设置好飞镖的尺寸,重量,初始速度,初始pitch角等(可与matlab结合方便之后的调节初始数据)

第三步.Datcom与cfd结果比对首先以下两图展示的是基于datcom计算出来的阻力,升力系数与基于fluent做的流体仿真的结果的比对。阻力方面,在低应角,两组数据基本一致,在高应角的情况下,datcom的数据比cfd数据要高。升力方面,各个应角下,两组数据误差在百分之10上下浮动,属于可接受范围。所以,有兴趣的同学可以尝试用fluent做流体的仿真去验证datcom的结果,如果有要求,这边也可以出一个fluent仿真的流程图。
[attach]26294[/attach]
Datcom与通过fluent进行cfd计算的阻力系数(drag coefficient)比较
[attach]26295[/attach]
Datcom与通过fluent进行cfd计算的升力系数(lift coefficient)比较
第四步.Simulink轨迹仿真结果通过datcom,simulink软件,可得知飞镖飞行轨迹所有的数据,包括pitch,应角,高度,速度在任意轨迹点的数据。


[attach]26296[/attach]
应角与时间图随着时间变化图

[attach]26297[/attach]
Pitch角和高度随着时间变化图

[attach]26298[/attach]
飞行高度与长度随着时间变化图

举例一.基于e387正弯度翼形飞行器的重心位置对飞行器pitch影响论证


1.测试环境简单描述:采用E387翼型的飞行器在脱离发射架之后做无动力飞行,通过控制舵面偏角来保证pitch和roll的稳定。
翼型
[attach]26299[/attach]
E387机翼模型
http://airfoiltools.com/polar/details?polar=xf-e387-il-200000-n5 该网站可以拿到各种翼型的参数
翼展120mm
重量148g


2.测试中的问题描述飞行器在离开发射架之后,攻角变为负值并持续变小。Pitch轴出现严重的持续翻滚
[attach]26300[/attach]
3.仿真分析:
此时飞行器的重心位置距离头部为10cm见下图


[attach]26301[/attach]

仿真结果:飞行器pitch确实出现严重的持续翻滚。下图。


[attach]26302[/attach]

改进方法飞行器内配置重物,使飞行器的重心前移。
将飞行器的重心改至距离机头7cm的位置。下图


[attach]26303[/attach]

仿真结果:pitch轴逐渐减小至,水平落地。


[attach]26304[/attach]

理论分析:
[attach]26305[/attach]
1
机翼上的气动力对飞机质心的纵向力矩effect of aerodynamic forces on the pitching moment about aerodynamic centre
机翼力矩表达式 – pitching moment representation

1符号解析
a.c------ (aerodynamic centre)(用来计算飞行器性能的简化点)
c.g点------重心 (centre of gravity)
Mac,w ---- 焦点轴心的力矩. (pitching moment around aerodynamic centre)
L,w  D,w ----- 作用在焦点的升力与阻力
Alpha,w ------ (攻角). (angle of attack)
Xac,w ----- 机头点的距离
Xcg ----- 机头到重心的距离

1红色公式纲化变换后如下图:
[attach]26306[/attach]
2

机翼力矩表达式:
2中文词汇翻译英文:
无量纲化 non-dimensionalized
讨论 - discussion
等式两边通除- both side vided by
零升力矩系数- zero-lift pitching moment coefficient
机翼有效弯度为负,正,零 – when wing effective camber is -ve,+ve,0
单独机翼的焦点在飞机全质心之前,为纵向静不稳定- if ac point is before cg point, it becomes statically unstable
2符号解析
Cm,w ----以重心为轴心的力矩系数(影响pitch的主要系数
Cm0,w ---- 焦点轴心的升力矩系数
CL,w ---- 升力系数
Xac,w ----- 机头无量纲化后的距离
Xc.g ----- 机头到重心无量纲化的距离
[attach]26307[/attach]
3:2d e387弯度翼型的升力系数随着(攻)的变
3符号解析
Alpha ------ 迎角(角)
[attach]26308[/attach]
4:2d e387弯度翼型的俯仰力矩系数随着(攻)的变

3以及图4的升力力矩系数图是从http://airfoiltools.com/polar/details?polar=xf-e387-il-200000-n5 airfoil tools网站中拿到的基于xfoil软件估算出来的2d机翼数据,此数据真实3d数据会有一定差距但基本在同一个数量级所以可以在设计过程中当参考
E387型的特性有两个:(这个很重要
1.从图3,0迎角的时候,升力系数为正一般的上下对称NACA翼型在迎角的时候趋近与0。
2.4看出点的俯仰力矩在各个角下都为负数

[attach]26309[/attach]
5
5中文翻译英文:
        翼形比较多力矩系数VS攻角 – pitchin moment coefficient vs aoa
上下对称 symmetric airfoil
2公式中Cm0,w可CmCl的图像关系中得出.
Cm0,w-------升力为0的时候的俯仰力矩,所以Cm0,w就是当Cl为0的对应Cm。(从上图中看出,值为-0.08。而其他的上下对称翼型,这个值基本趋近与0。)

3的升力系数图中可以出,当飞机的状态达到一定的负攻角时,飞机产生的升力系数Cl是负值,代表此时的升力是向下的。2的白色公式得出,为了抵消Cm0,w使Cm,w为0。则此时的Cl(Xc.g-Xac.w)必须是一个负值。意味着(Xc.g-Xac.w)必须是一个负数唯有重心在焦点前为负而重心在焦点后为正。所以只有当重心在的时候,升力才可以去弥补Cm0

修正重心后结果展示
[attach]26310[/attach](此时飞行器的初速度为11.5m/s将初速度增加至16.5m/s时即可飞到敌方基地的位置。)

结论:
1.重心在焦点前会增加加飞行器的静稳定性能。
2.重心过于靠前,也会造成飞行器机动性能下降
3.如果没有水平尾翼抵消正弯度翼型的第二特性。飞行器的翼型最好选择上下对称的翼型。(可用epp板材做机翼)
4.关于重心的调节对称翼型跟正弯度翼型的调节结论是稍有不同的
重心调节前后对比图
[attach]26311[/attach]

对比移动前和移动后的两个Cm会发现移动后的Cm更加接近0。

写在最后:飞行器对机械提出的要求如下
1.在嵌入式姿态控制的前提下,务必保证飞行器在空中的攻角始终在稳定的20°~-2°范围内
2.roll轴从起飞到落地的翻滚不应超过一圈。
3.嵌入式姿态控制的前提下,至少飞到距离目标70%唯有满足以上要求才能移交嵌入式调试


作者: caiyingba    时间: 2020-3-9 10:04
果然还是四面体网格
作者: qchnb1314    时间: 2020-3-15 18:19
可以在windows环境下运行嘛
作者: 周煊ing    时间: 2020-3-18 00:45
好活好活
作者: 小米    时间: 2021-11-5 23:35





欢迎光临 RoboMaster (https://bbs.robomaster.com/) Powered by Discuz! X3.2