火星探测器着陆控制方案

本题聚焦于探测器从火星同步轨道出发到探测器在火星地表上
方悬停的过程(以下简称着陆过程),要求参赛队收集有关天问一号
探测器的音像和文字等公开资料,建立数学模型,研究如下问题:

  1. 确定探测器着陆过程时间最短的操控方案(包括环绕器与着
    陆巡视器分离、阻尼伞打开、发动机系统点火等时间,以及
    发动机系统运行方案);
  2. 对给定的着陆过程时间,确定消耗能量最少的操控方案;
  3. 如果希望探测器着陆过程与公开的音像和文字资料尽量一致,
    如何设计操控方案

相关数据及数据分析


火星着陆器开伞条件均为超声速开伞,但为了确保降落伞的开伞可靠,
一般都控制开伞马赫数不大于 2.2;
 由于大气密度小,开伞动压较小,一般采用弹伞筒直接弹伞和一次开伞
技术;
 大部分火星着陆器均使用了盘缝带伞。其中在着陆前没有姿态控制的着
陆器均采用了火星探路者类型及其改进型的盘缝带伞(降落伞的稳定性高),在着陆前进行姿态控制的着陆器均采用海盗号类型的盘缝带伞(降落伞的阻力系数大);

最小弹射分离速度的确定方法
对于降落伞系统而言,确定弹射分离速度非常关键。该弹射分离速度取得过小,将可能导致降落伞无法越过回收物的尾流或无法正常拉直;该弹射分离速度取得过大,由于弹射分离推力一般与该速度的二次方成正比,过大的弹射分离推力将导致弹伞载荷偏大,并对回收物的结构设计、降落伞连接分离机构的结构设计带来影响,从而导致更大的结构重量。选取合适的弹射分离速度,首先需要得到所需的最小弹射分离速度。



受力分析




过程一matlab程序:

clc,clear;
q=pi*22.62/180;
b=pi*150/180;
c=pi*25/180;
x=0;
y=0;
z=1752013;
r0=15000;
A=[1,0,0;0,0,1;0,-1,0];
B=[cos(q),sin(q),0;-sin(q),cos(q),0;0,0,1];
C=[1,0,0;0,cos(b),-sin(b);0,sin(b),cos(b)];
D=[-cos(c),-sin(c),0;sin(c),-cos(c),0;0,0,1];
E=A*B*C*D;
F=E';
X=F*[x,y,z]';
Q=X(1,1)/X(2,1);
if X(1,1)>0if X(2,1)>0a=atan(Q)*57.2957795131else a=atan(Q)*57.2957795131+360end
elsea=atan(Q)*57.2957795131+180end
r=r0+1737013;
W=X(3,1)/r;
p=acos(W)*57.2957795131
q=pi*22.62/180;
b=pi*30/180;
c=pi*25/180;
x=1209430;
y=0;
z=1246800;
r0=0;
A=[1,0,0;0,0,1;0,-1,0];
B=[cos(q),sin(q),0;-sin(q),cos(q),0;0,0,1];
C=[1,0,0;0,cos(b),-sin(b);0,sin(b),cos(b)];
D=[-cos(c),-sin(c),0;sin(c),-cos(c),0;0,0,1];
E=A*B*C*D;
F=E';
X=F*[x,y,z]';
Q=X(1,1)/X(2,1);
if X(1,1)>0if X(2,1)>0a1=atan(Q)*57.2957795131else
24a1=atan(Q)*57.2957795131+360end
elsea1=atan(Q)*57.2957795131+180end
r=r0+1737013;
W=X(3,1)/r;
p1=acos(W)*57.2957795131
i=a1-a;
j=p1-p;
I=19.51-i
J=44.12+j

过程二matlab代码:

%% 快速调整阶段的数值迭代求解。
clc;clear;close all;
Ve=2940;%比冲
g=3.72;  %火星重力加速度
h=600;%该阶段的下落距离
t=0; %初始时间
T=0.1;   %时间步长
M_temp=[];
V_temp=[];
shijian=[];
X_temp=[];
lisan=1500:100:7500;
%lisan=5000:5100;
for i = lisan
F=i;  %推力
%主减速阶段的末状态量作为快速调整阶段的初状态量
theta=55.6708*pi/180;%初速度与水平面的夹角
Vx0=32.23327;%水平初速度
Vy0=47.2005;  %竖直初速度
m0=1325.255;%初始质量
Ay0=g-F*sin(theta)/(m0-F/Ve*t);%竖直初加速度
Ax0=-F*cos(theta)/(m0-F/Ve*t);%水平初加速度
count=0; %计数器
X_res=Vx0*t+0.5*Ax0*t^2;
Y_res=Vy0*t+0.5*Ax0*t^2;
Result=[];%% 迭代求 分解速度和分解位移
while (Y_res<h )
count=count+1;
Vx=Vx0+Ax0*T;
Vy=Vy0+Ay0*T;
Vx0=Vx;
Vy0=Vy;
X=Vx0*T+0.5*Ax0*T^2;
Y=Vy0*T+0.5*Ay0*T^2;
X_res=X_res+X;
Y_res=Y_res+Y;Time=count*T;
SIN=Vy/sqrt(Vy^2+Vx^2);
COS=Vx/sqrt(Vy^2+Vx^2);
Ay=g-F*SIN/(m0-F/Ve*Time);
Ax=-F*COS/(m0-F/Ve*Time);
Ax0=Ax;
Ay0=Ay;
end
M=m0-F/Ve*Time;%该阶段的末质量。
X_res; %水平位移Time=count*T;  %运动时间V_res=sqrt(Vx^2+Vy^2);%合速度jiaodu=atan(Vy/Vx)*180/pi; %末速度角度%Vx  %水平速度
M_temp=[M_temp;F/Ve*Time];
V_temp=[V_temp;V_res,Vx];
shijian=[shijian;Time];%记录运行时间
X_temp=[X_temp;X_res];
end
Answer=[lisan',M_temp,V_temp,shijian,X_temp];%结果总结在这里
subplot(221);
plot(lisan,M_temp,'LineWidth',2);
title('燃料消耗量关于推力变化图','FontSize',14);
xlabel('F_推(N)','FontSize',12);
ylabel('燃料消耗质量(千克)');subplot(222);
plot(lisan,X_temp,'LineWidth',2);
title('水平位移关于推力变化图','FontSize',14);
xlabel('F_推(N)','FontSize',12);
ylabel('位移(米)');subplot(223);
plot(lisan,V_temp(:,2),'LineWidth',2);
title('水平末速度关于推力变化图','FontSize',14);
xlabel('F_推(N)','FontSize',12);
ylabel('速度(米/秒)');subplot(224);
plot(lisan,shijian,'LineWidth',2);
title('下落时间关于推力变化图','FontSize',14);
xlabel('F_推(N)','FontSize',12);
ylabel('时间(秒)');%% 数据表格的写入。
M_temp=[];
V_temp=[];
shijian=[];
X_temp=[];
lisan=1500:7500;
for i = lisan
F=i;  %推力
%主减速阶段的末状态量作为快速调整阶段的初状态量
theta=55.6708*pi/180;%初速度与水平面的夹角
Vx0=32.23327;%水平初速度
Vy0=47.2005;  %竖直初速度
m0=1325.255;%初始质量
Ay0=g-F*sin(theta)/(m0-F/Ve*t);%竖直初加速度
Ax0=-F*cos(theta)/(m0-F/Ve*t);%水平初加速度
count=0; %计数器
X_res=Vx0*t+0.5*Ax0*t^2;
Y_res=Vy0*t+0.5*Ax0*t^2;
Result=[];%% 迭代求 分解速度和分解位移
while (Y_res<h )
count=count+1;
Vx=Vx0+Ax0*T;
Vy=Vy0+Ay0*T;
Vx0=Vx;
Vy0=Vy;
X=Vx0*T+0.5*Ax0*T^2;
Y=Vy0*T+0.5*Ay0*T^2;
X_res=X_res+X;
Y_res=Y_res+Y;Time=count*T;
SIN=Vy/sqrt(Vy^2+Vx^2);
COS=Vx/sqrt(Vy^2+Vx^2);
Ay=g-F*SIN/(m0-F/Ve*Time);
Ax=-F*COS/(m0-F/Ve*Time);
Ax0=Ax;
Ay0=Ay;
end
M=m0-F/Ve*Time;%该阶段的末质量。
X_res; %水平位移Time=count*T;  %运动时间V_res=sqrt(Vx^2+Vy^2);%合速度jiaodu=atan(Vy/Vx)*180/pi; %末速度角度%Vx  %水平速度
M_temp=[M_temp;F/Ve*Time];
V_temp=[V_temp;V_res,Vx];
shijian=[shijian;Time];%记录运行时间
X_temp=[X_temp;X_res];
end
Answer=[lisan',M_temp,V_temp,shijian,X_temp];
%xlswrite('快速调整阶段各参数数据.xls',Answer);
%第一列是推力值
%第二列是燃料消耗量
%第三列是快速调整段末速度
%第四列是快速调整段的水平末速度
%第五列是运行时间
%第六列是水平位移%%  最优轨迹图的绘制
figure;
M_temp=[];
V_temp=[];
shijian=[];
F=5085;  %推力
%主减速阶段的末状态量作为快速调整阶段的初状态量
theta=55.6708*pi/180;%初速度与水平面的夹角
Vx0=32.23327;%水平初速度
Vy0=47.2005;  %竖直初速度
m0=1325.255; %初始质量
Ay0=g-F*sin(theta)/(m0-F/Ve*t);%竖直初加速度
Ax0=-F*cos(theta)/(m0-F/Ve*t); %水平初加速度
count=0; %计数器
X_res=Vx0*t+0.5*Ax0*t^2;
Y_res=Vy0*t+0.5*Ax0*t^2;
Result=[];
G=[];
%% 迭代求 分解速度和分解位移
while (Y_res<h )
count=count+1;
Vx=Vx0+Ax0*T;
Vy=Vy0+Ay0*T;
Vx0=Vx;
Vy0=Vy;
X=Vx0*T+0.5*Ax0*T^2;
Y=Vy0*T+0.5*Ay0*T^2;
X_res=X_res+X;
Y_res=Y_res+Y;Time=count*T;
G=[G;X_res,Y_res,V_res,Time];
SIN=Vy/sqrt(Vy^2+Vx^2);
COS=Vx/sqrt(Vy^2+Vx^2);
Ay=g-F*SIN/(m0-F/Ve*Time);
Ax=-F*COS/(m0-F/Ve*Time);
Ax0=Ax;
Ay0=Ay;
end
plot(G(:,1),3000-G(:,2),'k','LineWidth',2);
title('快速调整段运动轨迹','FontSize',15);
xlabel('X轴/(m)');
ylabel('Y轴/(m)');

阻尼伞打开的数学模型为:
对阻尼伞进行受力分析,及阻尼伞打开需要考虑的因素
matlab部分程序

%% 计算粗避障阶段最大的下落时间。
clc;clear;
syms V0 g t1;
V0=0.24183;  %竖直初速度
%t1=53;%无推力落体下落时间t1
g=3.72;
%无推力落体下落最大时间T_max
T_max=double(solve(V0*t1+0.5*g*t1^2-2300))

2021深圳杯东三省建模相关推荐

  1. [数模小记]2021深圳杯东三省

    [数模小记]2021深圳杯&东三省 上午和队友把深圳杯&东三省的论文交了,终于迎来了完结撒花的时刻,感谢队友带飞,现在简单谈谈感想吧. 比赛评价 没想到第一次打数模就是深圳杯,基本算是 ...

  2. 2021深圳杯东三省D题具体思路+部分代码+抓捕数据

    2021深圳杯数学建模D题 基于一个微分对策问题的机器学习能力定量评价 由于用机器学习方法求解诸如最优控制.微分对策这样具有连续动作和状态的问题时,效率(效果/算力)较低,特殊的微分对策问题将是测试机 ...

  3. 2020年“深圳杯”数学建模挑战赛D题-公交车在高峰和平峰转换期间的调度 题解

    部分结果展示 2020年"深圳杯"数学建模挑战赛D题-公交车在高峰和平峰转换期间的调度 题解思路 原题地址 一.背景 公交车是为市民出行提供服务的"准公共"产品 ...

  4. 2021华为杯数学建模“空气质量预报二次建模” 思路

    2021华为杯数学建模B题思路–共享资料 1.问题1,按照附录的公式计算对应的AQI即可 2.使用PCA方式分解,将每个变量的众多值做无量纲话处理后放到统一坐标系下,找到最大特征值对应的特征,然后找出 ...

  5. 2021华为杯数学建模D题解题-抗乳腺癌候选药物的优化建模

    2021华为杯数学建模D题解题-抗乳腺癌候选药物的优化建模 赛题 1. 问题一解题:特征选择 1.1. 赛题分析 1.2. 解题:特征选择方法对比 1.3. 模型评估 2. 问题二解题:预测模型 2. ...

  6. 2022年深圳杯数学建模D题复杂水平井三维轨道设计解题全过程文档及程序

    2022年深圳杯数学建模 D题 复杂水平井三维轨道设计 原题再现:   在油气田开采过程中,井眼轨迹直接影响着整个钻井整体效率.对于复杂水平井,较差的井眼轨迹很可能会造成卡钻或施加钻压困难等重大事故的 ...

  7. 2023深圳杯(东三省)数学建模A题思路 - 影响城市居民身体健康的因素分析

    1 赛题 A题 影响城市居民身体健康的因素分析 以心脑血管疾病.糖尿病.恶性肿瘤以及慢性阻塞性肺病为代表的慢性非传染性疾病(以下简称慢性病)已经成为影响我国居民身体健康的重要问题.随着人们生活方式的改 ...

  8. 2023深圳杯(东三省)数学建模C题思路 - 无人机协同避障航迹规划

    1 赛题 C题 无人机协同避障航迹规划 平面上A.B两个无人机站分别位于半径为500 m的障碍圆两边直径的延长线上,A站距离圆心1 km,B站距离圆心3.5 km.两架无人机分别从A.B两站同时出发, ...

  9. 2021中青杯数学建模A题思路详细分析 代码?

    A题:汽车组装车间流水线物料配送问题 汽车制造有四大关键工艺--冲压.焊接.涂装和总装,其中总装车间的占地面积最大.工人数量最多,迫切需要数学建模技术帮助降本增效.总装是指将发动机等全部内外饰件装配到 ...

  10. 2021华为杯数学建模B题“空气质量预报二次建模” 预处理思路+Python代码

    简介 前阵子和小伙伴做了2021年华为杯研赛的B题"空气质量预报二次建模",发现数据预处理一块挺有意思的,涵盖了常规的缺失值(随机缺失.指标缺失/列缺失.条目缺失/行缺失).异常值 ...

最新文章

  1. RabbitMQ使用及与spring boot整合
  2. 李子柒爆红:既然做直播能年薪过亿, 为何还要努力高考?
  3. Stixel_World(single)学习笔记
  4. django 1.8 官方文档翻译: 2-6-3 提供初始数据
  5. c++实验8 哈夫曼编码-译码器
  6. 创业项目筹备了两个多月,确实不容易
  7. max std value 宏_【转载】:【C++跨平台系列】解决STL的max()与numeric_limits::max()和VC6 min/max 宏冲突问题...
  8. 可以储存照片的字段类型是_在sql server中,储存图片的数据类型是什么呀?
  9. 如何用阿里云服务器建立一个wordpress网站?
  10. 严蔚敏数据结构课后参考答案
  11. 使用delphi开发人工智能程序(环境搭建)
  12. android textwatcher 获取当前控件,使用TextWatcher实现EditText与TextView同步
  13. IT服务器台账系统,it项目管理信息系统
  14. 京东登录注册页面的简单实现——(仿)
  15. Unity任意方向拉伸物体
  16. 免费的文字转语音的软件有哪些
  17. Python脚本25:将两张图片拼在一起
  18. 文本输出API函数:TextOut,ExtTextOut,DrawText,DrawTextEx,PolyTextOut,TabbedTextOut
  19. 算法的时间与空间复杂度介绍
  20. (转)hadoop配置、运行错误总结

热门文章

  1. 学习Globle和window对象学习心得+jquery中的$(#id)与document.getElementById(id)的区别+成功激活win10的方法
  2. Paxos算法原理与推导
  3. 2019年南京大学计算机考研复试机试真题
  4. MCSA Server 2012 R2 IPV6
  5. 何凯明最新成果PointRend解析
  6. 改变世界面貌的十个数学公式
  7. 亿图图示:分享你的流程图给你的小伙伴
  8. lnmp一键安装包 mysql_CentOS7下安装lnmp一键安装包
  9. 专题页汇聚seo流量的葵花宝典
  10. 教你用易语言编写一个简单的电脑病毒