【目标探测】卫星轨道目标探测【含Matlab源码 2732期】

在这里插入图片描述

⛄一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【目标探测】基于matlab卫星轨道目标探测【含Matlab源码 2732期】
点击上面蓝色字体,直接付费下载,即可。

获取代码方式2:
付费专栏Matlab物理应用(初级版)

备注:
点击上面蓝色字体付费专栏Matlab物理应用(初级版),扫描上面二维码,付费29.9元订阅海神之光博客付费专栏Matlab物理应用(初级版),凭支付凭证,私信博主,可免费获得1份本博客上传CSDN资源代码(有效期为订阅日起,三天内有效);
点击CSDN资源下载链接:1份本博客上传CSDN资源代码

⛄二、部分源代码

close all
clc
clear

%
globaldata
global dataEarth

%% 绘制地球仪
load topo;
[x y z] = sphere(20); % 构造球面坐标,根据经纬网格密度
Xe=xdataEarth.Re;Ye=ydataEarth.Re;Ze=z*dataEarth.Re;

%% 卫星轨道设计

% 基本轨道形状
e=0.0; %离心率e
%h_a=dataEarth.Re3;r_a=h_a+dataEarth.Re;T=2pisqrt(a^3/dataEarth.mu)%周期
T=24
6060;r_a=power((T/(2pi))^2dataEarth.mu,1/3);h_a=r_a-dataEarth.Re;
a=r_a/(1-e); %长半轴
i=0; % 轨道倾角
w=0; %近心点辐角
omi=0; %升交点经度Ω
theta=0; %真近点角
%p=abs(a
(1-e^2)); %半通径
%u=w+fai; %纬度辐角

% 基本轨道,orbit_1=[a,e,i,w,omi,theta]
Orbit0.Earth=dataEarth;
Orbit0.e=e;
Orbit0.ha=h_a;
Orbit0.ra=r_a;
Orbit0.a=a;
Orbit0.T=T;
Orbit0.i=0; %
Orbit0.w=0;
Orbit0.omi=0;
Orbit0.theta=0;
% 惯性计算起始状态
t0=0; %起始时间,病作为仿真起始时刻
L0=0; %t0时刻地球春分点相对惯性转过经度

% 卫星轨道,根据基本轨道演变
% 卫星1,轨道基本参数
Sat1.Earth=dataEarth; % S1
Sat1.e=Orbit0.e;
Sat1.a=Orbit0.a;
Sat1.T=Orbit0.T;
Sat1.n=sqrt(Sat1.Earth.mu/Sat1.a^3);%平均角速度
t10=t0;%第1#卫星入轨时刻为起始时间
L10=L0;% t0时刻e相对i方位
Sat1.t0=t10;
Sat1.i0=0;% t0时刻轨道惯性空间位置
Sat1.w0=0;
Sat1.omi0=0;
Sat1.theta0=0; % 近地点入轨
Sat1.L0=L0; % t0时刻e相对i方位
% 卫星2,与S1在相同轨道上,只是位置不同
Sat2.Earth=dataEarth; % S1
Sat2.e=Orbit0.e;
Sat2.a=Orbit0.a;
Sat2.T=Orbit0.T;
Sat2.n=sqrt(Sat2.Earth.mu/Sat2.a^3);%平均角速度
t20=t0+T/10;%第2#卫星入轨时刻,比1#稍晚
Sat2.t0=t20;
Sat2.i0=pi/3;% t0时刻轨道惯性空间位置
Sat2.w0=0;
Sat2.omi0=0;
Sat2.theta0=0; % 近地点入轨
L20=L0+Orbit0.Earth.We*(t20-t0);% t0时刻e相对i方位
Sat2.L0=L20; % 地球自转,t20时刻,e相对i方位

% 仿真时间步长
dt=1060;
simTimeEnd=24
3600; % s
simTimeEnd=Orbit0.T; % s
simTime=[0:dt:simTimeEnd];

simN=500; simTime=linspace(0,Orbit0.T,simN);

for i=1:length(simTime)
t=simTime(i);

% 卫星1位置    
att_b=[0,0,0];  %星体姿态,假设保持对地
att_s=[0,0,0];  %探测器相对星体方位,ax=0; ay=0; az=0
Sat1=sat2orbit(Sat1,t,att_b,att_s);  % 卫星状态
xyz_s1=Sat1.xyz_i;
XYZ_s1(i,:)=xyz_s1';

Sat2=sat2orbit(Sat2,t,att_b,att_s);  % 卫星状态
xyz_s2=Sat2.xyz_i;
XYZ_s2(i,:)=xyz_s2'; 

end
Xe=xdataEarth.Re;Ye=ydataEarth.Re;Ze=zdataEarth.Re;
figure(1),hold on
surface(Xe,Ye,Ze,‘FaceColor’,‘texturemap’,‘CData’,topo); %地球
axis off vis3d;
plot3(XYZ_s1(:,1),XYZ_s1(:,2),XYZ_s1(:,3),‘-’) %卫星1
plot3(XYZ_s1(1,1),XYZ_s1(1,2),XYZ_s1(1,3),'
‘)
plot3(XYZ_s2(:,1),XYZ_s2(:,2),XYZ_s2(:,3),’-‘)
plot3(XYZ_s2(1,1),XYZ_s2(1,2),XYZ_s2(1,3),’*')

%% 目标探测设计

% 探测器性能
Senser.beta=deg2rad(20);% 传感器探测市场半角
Senser.L_max=dataEarth.Re*100;%探测距离最大
Sat1.Senser=Senser;
Sat2.Senser=Senser;

⛄三、运行结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]刘萍.如何理解空气质量分指数(IAQI)计算公式并速算[J].黑龙江环境通报. 2014,38(02)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

  • 23
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab领域

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值