MATLAB与STK互联42:创建星座(Walker星座)

您所在的位置:网站首页 matlab与stk互联把tle转为地心系数据 MATLAB与STK互联42:创建星座(Walker星座)

MATLAB与STK互联42:创建星座(Walker星座)

2023-11-10 18:31| 来源: 网络整理| 查看: 265

最近在做一个关于星座覆盖性分析的仿真工况,是用MATLAB与STK联合仿真实现。本来想讲整个覆盖性分析的仿真案例,但是感觉涉及到星座创建、覆盖性定义及分析模块,因此还是分两篇来讲解。本篇先讲星座创建的基础内容。 在STK中创建星座的操作步骤如下: (1)建立种子卫星(seed satellite)。种子卫星顾名思义,就是建立星座的模板卫星。在该步,要将轨道参数设置好。如果卫星有Sensor、antenna等其他子对象,也在这步添加好、设置好。 (2)创建星座。如果不使用MATLAB交互操作步骤如下:选中种子卫星,单击右键,进而选择Walker。 在这里插入图片描述 (3)Walker星座设置。点击上图中的Walker选项,则会出现如下图的界面。 在这里插入图片描述 选择Delta类型,每个轨道面2颗卫星,2个轨道面,相位因子1。选择这组参数,形成Walker星座的参数为4\2\1,即总卫星数量4颗、2个轨道面、相位因子1.且同一轨道面的卫星颜色一样。 (4)创建星座。点击“Create Walker”,效果如下:生成的星座不包括种子卫星。 在这里插入图片描述 以上是利用STK软件手动创建星座。下面利用MATLAB代码实现,代码如下: uiap = actxserver(‘STK11.application’); root = uiap.Personality2; root.NewScenario(‘walker’); sc = root.CurrentScenario;

%建立种子卫星,并设置轨道参数。500km、倾角50°的圆轨道,其他参数选择默认值,并添加一个Sensor(Sensor形状为简单圆锥型,半张角为77°) sat = sc.Children.New(18,‘mysat’); kep = sat.Propagator.InitialState.Representation.ConvertTo(‘eOrbitStateClassical’); kep.SizeShapeType = ‘eSizeShapeAltitude’; kep.SizeShape.ApogeeAltitude = 500; kep.SizeShape.PerigeeAltitude = 500; kep.Orientation.Inclination = 50; sat.Propagator.InitialState.Representation.Assign(kep); sat.Propagator.Propagate;

%添加Sensor,并进行设置 sen = sat.Children.New(‘eSensor’,‘mysen’); sen.CommonTasks.SetPatternSimpleConic(77,1); %这里加一条跟星座创建无关的设置,如果半张角选用77°,在STK三维视图中将会出现以下的场景: 在这里插入图片描述 这是因为sensor的半张角设置的过大,这种三维视图会影响肉眼观看的效果,尤其是创建星座之后,视图会特别乱,因此要设置掉。 设置语句如下: sen.VO.ProjectionType = ‘eProjectionEarthIntersections’; 执行效果如下,只保留了Sensor与地球的截线。 在这里插入图片描述 %下面就是生成Walker星座了。这里是利用root.ExecuteCommand来是实现。具体语句如下: root.ExecuteCommand(‘Walker */Satellite/mysat Type Delta NumPlanes 4 NumSatsPerPlane 3 InterPlanePhaseIncrement 2 ColorByPlane Yes’); 执行该语句,生成一个Delta类型、4轨道面、每个轨道面3颗星、相位因子2、同轨道面颜色相同的星座。Walker星座记为 :12/4/2。效果如下:

在这里插入图片描述 以上则完成了Walker星座的创建。 关于STK中Walker星座参数的说明: Walker星座有3个类型,分别是Delta、Star、Custom。解释如下: Delta类型:星座轨道面的升交点赤经均分0~360°范围。 Star类型:星座轨道面的升交点赤经均分0~180°范围。 Custom类型:星座轨道面的升交点赤经均分范围由用户设置。 相位因子(Inter Plane Spacing ):某卫星恰好过升交点时,相邻(东边)轨道圈卫星的纬度俯角。一般公式为:f = i*360/T,T为卫星总数。i取0~n-1,其中n为轨道面数量。 好了,本篇博文到此结束。如果有错误的,请大家批评指正。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3