版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
STK基础教程Byappe1943西安交通大学目录目录1STK软件简介 附录6NORAD双行轨道根数Astrogator模块使用方法本节将利用STK/Analyzer和Astrogator模块,完成以下任务:优化机动时间,最小化燃料消耗计算最优推力方向当发射错误时计算可能的轨道首先,计算达到近地点的最小推力;接下来,当有小的发射失误时计算可能的轨道;最后,在飞向月球任务中最小化燃料消耗。最优真近点角在本节中,依靠单次开机,将卫星的近地点(rp)升至10000km。对于大多数卫星,最小化用于机动的燃料是个非常重要的问题。本节希望最小化速度增量(ΔV),最小化ΔV也就意味着最少的燃料消耗。首先利用STK/Analyzer的ParametricStudy,在推力方向固定且与速度同向的情况下,确定当真近点角(ν)为何值时开始机动,从而最小化ΔV。接下来借助STK/Analyzer的OptimizationTool,考察改变推力方向(azimuth和elevation)时,能否进一步最小化ΔV。最后使用STK/Analyzer曲面图,考察少许偏离最优值时对ΔV的影响。1、打开名为OptimumTrueAnomaly.sc场景(C:\ProgramFiles\AGI\STK8\Data\LaunchPad\Scenarios\TrueAnomalyOptimization\OptimumTrueAnomaly.sc)。2、场景载入后,双击卫星,打开属性页面。查看任务控制流程(MissionControlSequence,MCS)。利用astrogator模块,卫星将会从初始状态转移到ν=180°的轨道,之后会点火,直至到达rp=10000km的轨道,在轨道上运行至近地点。3、在STK/AnalyzerBasics页面打开STK/Analyzer,选择ParametricStudy。由于需要比较不同的ν值对ΔV的影响,因此ν为独立变量,ΔV为响应变量。展开Analyzer窗口左边的树状图(见下图所示),将ν(Model.STK.Scenario.Satellite.Propagator.TargetMnvr1.SegmentList.PropToMnvrStart.StoppingConditions.true_Anomaly)拖至independentvariable栏(注意,轨道滑行结束后会开始机动,滑行的结束意味着机动的开始)。将FinalΔV(Model.STK.Scenario.Satellite.Propagator.TargetMnvr1.SegmentList.Mnvr1.FinalDeltaV)选择为响应变量。此处ν值的变化范围为160°~180°,步长为1度,步长为21。设置完后,点击按钮进行分析。4、计算结果见下图所示,显示了21种情况各自所需的ΔV。从中看到,ΔV最小处的ν值在173°左右。为了得到更精确的结论,我们能将ν的变化范围设为172°~174°,再次分析。ParametricStudy工具可以考察改变某个变量时,对另一个变量的影响。此处将考察更改推力方向,从而进一步最小化ΔV。5、打开STK/Analyzer的GradientTool。由于需要最小化ΔV,将变量FinalDeltaV拖至目标定义栏(Model.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.FinalDeltaV)。同时需要比较不同的方位角、升降角及真近点角因此将这三个变量拖至designvariables项(Model.STK.Scenario.Satellite.propagator.TargetMnvr1.SegmentList.Mnvr1.ThrustVector.azimuth,elevation,Model.STK.Scenario.Satellite.propagator.TargetMnvr1.SegmentList.PropToMnvrStart.StoppingConditions.true_Anomaly)。如下图所示,方位角和升降角范围为-25°~25°,初始值为-25°。真近点角范围为160°~180°,初始值为180°。6、点击按钮,结果类似于下图。注意优化器会用最优值自动更新MCS中的相应值。打开卫星属性页面,会发现PropToMnvrStart下的真近点角以及Mnvr1下的方位角和升降角自动更新了。当优化结束后,可以看到方位角(azimuth)、升降角(elevation)及真近点角(trueanomaly)的最优值。此时MCS中的相应值也自动更新为最优值。前面我们已经得到真近点角、方位角和升降角的最优组合,现在分析ΔV值的轻微变化带来的影响。7、在STK/Analyzerbasics页面,打开carpetplot工具。设置设计变量为Mnvr1项的方位角和升降角(Model.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.ThrustVector.azimuthandModel.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.ThrustVector.elevation)。两者的范围均为-25度~25度,11步完成。响应变量仍然为ΔV(Model.STK.Scenario.Spagator.TargetMnvr1.SegmentList.Mnvr1.FinalDeltaV)。8、下图为carpetplot结果。从中看到,在最优点周围大致为对称分布,该最优点对应的方位角约为0度,升降角约为-7度。发射错误本节利用STK/Analyzer分析任务中可能存在的小的发射错误带来的影响。我们将比较耗尽关机点处不同的经度、纬度和速度对Keplerian元素的影响。1、打开名为LaunchErrors.sc的场景。场景载入后,双击卫星对象打开其属性页面,查看Sat1的MCS页面。2、熟悉MCS组成之后,在STK/Analyzerbasics页面打开MonteCarloProbabilisticAnalysisTool。该工具允许输入变量存在不确定性,输入变量且服从某个分布函数,考察输出变量的可信度。3、分析关机点对轨道参数的影响。将关机点处的经度、纬度、高度和速度(Model.STK.Scenario.Spagator.WallopsLaunch.Burnout.latitude…)拖到设计变量栏里,会出现针对每个设计变量的提示:误差的分布、均值和标准差。Analyzer允许用户设置多种误差分布:Normal—A"bell-shaped"distributionwhichdescribesmanysituationswhereobservationsaredistributedsymmetricallyaroundthemean.68%ofallvaluesunderthecurveliewithinonestandarddeviationofthemeanand95%liewithintwostandarddeviations.Uniform-A"flat"distributioninwhichallpossiblesolutionsbetweenthelowerboundandupperboundareequallylikely.Lognormal-Aprobabilitydistributioninwhichthelogoftherandomvariableisnormallydistributed,meaningitconformstoabellcurve.Thelognormaldistributioniscommonlyusedforgeneralreliabilityanalysis,cyclestofailureinfatigue,materialstrengthsandloadingvariables.Weibull-Adistributiondefinedbyshapeandscaleparameters.Twospecialcasesofthisdistributionarewhentheshapeparameterequals1thedistributionisanexponentialdistribution,andwhenshapeparameterequals2thedistributionisaRayleighdistribution.Thisdistributionisoftenusedformodelingdevicefailurerateandalsowindspeeds.Triangle-Atriangleshapeddistribution,wheresomecenterpointisthemean,andthepopulationdensityslantsofflinearlytothelowerboundandupperbound.Enumerated-Adistributionwithalistofdiscretevalues,allofwhichareequallyprobable.4、将四个参数设置为normal分布。均值使用默认值,将纬度、经度和高度的标准差设置为0.01%。将fixedVelocity的标准差设置为0.001%。5、将最终轨道(Prop10Mins)的Keplerian六元素设置为响应变量。将这六个参数拖至Responses窗口,见下图所示(Model.STK.Scenario.Spagator.Prop10Mins.FinalState.Keplerian.sma…)。将运行次数设为100。点击按钮。计算过程需要几分钟。6、结果可以用多种形式的图表表示。采用蒙特卡罗仿真时,不同的输入会使结果有些不同。(1)柱状图柱状图能够显示结果的分布。利用柱状图,能够设置变量的上限值和下限值,多次运行之后可以统计结果落在所设范围内的概率。可以通过在图的右侧输入数值,或者利用鼠标拖动,来设置阈值。(2)散点图散点图矩阵由多个图片组成,分析每个变量与其它变量间的关系,这种形式有利于快速感知多个变量间的关系。注意,在某个散点图中选中一个点,会在其它散点图中高亮显示对应点。飞向月球本节需要再次确定ΔV值,分析ΔV与从低地球轨道转移到低月球轨道的时间的关系。最小化ΔV,同时使转移时间在可接受的范围之内。1、打开名为LunarMission.sc的场景。场景载入后,双击LunarProbe对象,打开属性页面。2、双击卫星打开其属性页面。先将卫星发射到LEO转移轨道上,在轨道上滑行,然后点火进入飞月轨道。点火后,在轨道上滑行至近月点,然后再次点火,进入环月轨道。有两条飞月轨道。第一个,靠近月球,从TLI点火直至抵达月球轨道的期间,Δ先增大后减小(ThefirstonegetsusclosetotheMoonandtargetsonΔrightascension,Δdeclination,aswellasthedurationfromTLIburnuntilwereachtheMoon);第二个轨道是通过B-plane进入期望的月球轨道。3、在STK/AnalyzerBasics页面中打开STK/Analyzer,选择ParametricStudy。本例需要比较不同飞行时间所需要的TLIΔV,将desiredDuration拖至IndependentVariable项,FinalDeltaV拖至DependantVariable项。飞行时间从200000秒(2.3天)至500000秒(大约5.8天),步长为7(每步50000)。计算过程需要几分钟。4、结果见下图所示,从中看到使用最小推力到达月球的时间大约为400000秒(4.6天),推力的少许增加会将飞行时间降至345600秒(4天)。5、不同日期需要的推力会有少许不同。使用STK/Analyzer的ParametricStudyTool,分析30天(一个数据点/天)中,不同日期发射到达月球需要的ΔV。Connect模块使用方法Connect模块介绍Connect模块早期名称是交互处理通讯模块(IPC),它包括一系列的功能来打开UNIX或TCP/IP到STK的接口,以便给STK发送连接命令和接收从STK返回的数据,并在通讯完成后关闭接口。Connect具有提供信息的功能,可按用户规定的各种方式输出错误信息和诊断信息。使用Connect时仅需提供连接名和端口,以便STK驻留和打开接口。IPC指令可以用单一函数发送然后返回希望的数据。Connect编程接口包括标准C和Matlab两类,其中Matlab还对常用的STK操作进行了封装。用户程序与STK连接后,只需要向STK发送相关指令,就可以控制STK进行仿真,并能够得到STK执行情况。Connect命令可以分为应用程序、想定、对象、显示、工具、接口六类,借助这些命令可对STK软件进行全面控制。通过STK/Connect模块,用户可以把对STK的操作封装到自己的程序中,从而实现对STK的控制。Connect模块的主要特性有:(1)在客户机/服务器环境下,通过TCP/IP的Socket或UNIXDomainSocket很方便地建立用户应用程序和STK的接口。这种网络能力能够允许来自任何虚拟环境的实时数据传送。(2)Connect提供的连接库能够方便地建立和使用TCP/IP或DomainSocket。利用连接库提供的函数、常值和其它消息能力可以建立第三方应用程序与STK的连接。(3)Connect可以有选择地生成信息,用户也可以取消标准的信息,使用自定义的格式编辑以适应第三方的应用程序。该功能可以使开发人员更好地控制信息环境。(4)Connet连接着STK和STK/VO,开发人员可以实时观察事件。例如,可以通过Connect获得从运载火箭或卫星上得到的遥测数据,然后在二维或三维地图窗口中模拟飞行任务,帮助了解和解决可能出现的问题。使用STK/Connect模块的优点是直接利用了STK软件的强大功能,实现了对STK软件和用户程序的开发集成,而且该方法简单易行、开发速度快,因此,该方法已成为目前使用最广泛的集成方式之一。但Connect库只提供了STK模块功能的命令方式调用,代码效率较低、灵活性不够并且执行速度受到了限制。STK/Connect模块连接步骤模块初始化在启动模块前,首先要初始化,初始化函数是char*initFileName=NULL;AgConInit(initFileName);//初始化参数initFileName指向初始化配置文件,若initFileName为空表示STK/Connect将启用缺省配置文件,对于UNIX系统,该文件为…\.connect,对于Windows系统,该文件为…\Connect\PCData\Connect.dat。若初始化成功,STK返回AgNoError消息,否则返回AgCError消息。初始化配置文件中列出了用以接收返回数据的STK/Connect命令,这些命令是第三方应用程序获得STK数据的有效途径。此外,初始化文件中还包含一些必要的配置信息,以便在建立连接时设置STK/Connect模块的参数。建立与STK的连接初始化完毕后,需要调用AgConOpenSTK()函数建立与STK的连接,该函数形式为intAgConOpenSTK(char*context,char*connectType,char*connectName);参数connectType用于指定连接的类型,其值为以下两个常量中的一个:(1)“TCPSOCKET”(2)“UNIXSOCKET”参数connectName说明了连接的细节:对于TCP/IP连接,要指定主机名称和端口号,例如:localhost,5001;对于UNIX连接,则需要指定数据包的路径,例如:…/soc/Socket。参数context用来区分同时打开多个STK连接时的不同连接,对于只建立单个连接的情况可使用缺省值NULL。发送命令建立连接以后,就可以用AgConProcessSTKCmd函数向STK发送命令,格式如下:intAgConProcessSTKCmd(char*context,char*cmdString,AgTConReturnInfo*returnInfo);其中,参数context用以区分不同连接,参数cmdString表示发送的具体命令,参数returnInfo用来存储从STK返回的信息。调用函数AgConProcessSTKCmd()发送命令时,如果数据发送成功,将返回AgCNoError信息,如果出现错误将返回AgCError信息,如果命令发送成功但是STK拒绝接收的话,将返回AgCNackReturned信息。接收数据命令发送完毕后,STK/Connect接收STK返回的信息并将其存储在AgTConReturnInfo结构体中,该结构体具体定义如下:typedefstructAgTConReturnInfo{ charhdrType[AgCRMHAHDRTypeLen+1]; chartransId[AGCRMHAHdrIdLen+1]; intnumEntries; char*returnList;}AgTConReturnInfo;其中,hdrType和transId只用于异步模式的STK/Connect连接。hdrType存储异步数据包的类型,transId存储标志符,numEntries存储返回数据的数目,returnList存储返回的数据。每次成功接收数据之后,需要调用AgConCleanupReturnInfo函数释放存储空间,其函数结构为:voidAgConCleanupReturnInfo(AgConCleanupReturnInfo*pReturnInfo);其中,pReturnInfo为指向存储空间的指针。关闭连接函数AgConClose()用以关闭与STK服务器的连接,函数原型为intAgConCloseSTK(char*context);其中,参数context是在与STK建立连接时初始化的,由于它指定了一个特定的连接,因此在调用AgConCloseSTK()函数时,其它连接不会受到影响。STK/Connect模块命令格式Connect模块为用户程序提供了一系列命令来控制STK内部复杂的操作,命令的一般格式如下:<CommandName><ObjectPath><CommandData>其中,CommandName表示特定的命令名称,ObjectPath指定了STK中的一个对象,CommandData设置此命令所需的参数。例如,GetReport*/Satellite/Satellite1“AER”Facility/Facility1UseAccessTimes,表示获取卫星Satellite1对地面站Facility1的AER报告。利用VC开发STK连接应用程序,首先需要对提供STK连接支持的头文件和库文件进行配置。头文件有三个,均在“STK安装目录\Connect\Includes”文件夹中,文件名分别为AgConnect.h、AgConSendData.h和AgCoUtMsgCommon.h。库文件分别为调试库文件和运行库文件,分别在“STK安装目录\Connect\lib\Debug”和“STK安装目录\Connect\lib\Release”目录下,文件名都为AgConnect.lib。VC中头文件和库文件的配置方法如下:单击Tool/Options命令,打开VC的option对话框,将STK连接头文件所在的目录加入到VC的“ProjectSettings”(工程设置)对话框,在“Link”(链接)对话框选项卡中,分别对“Win32Debug”和“Win32Release”配置相应的“Object/librarymodules”(对象/链接模块)。要调用STK的命令函数,首先要加入两个头文件“AgConnect.h”和“AgUtMsgCommon.h”。在启动Connect模块之前首先要进行初始化,方法是调用AgConInit(),初始化完成后再利用AgConOpenSTK()建立与STK的连接,代码如下:char*initFileName=NULL;char*connection1=NULL;staticcharconnectName[256]=”Localhost:5001”AgConInit(initFileName);//初始化AgConOpenSTK(&connection1,0,connectName);//建立连接对于函数AgConInit(initFileName),参数initFileName指向初始化配置文件,若initFileName为空表示STK/Connect将启用缺省配置文件,对于UNIX系统,该文件为…\.connect,对于Windows系统,该文件为…\Connect\PCData\Connect.dat。若初始化成功,STK返回AgNoError消息,否则返回AgCError消息。初始化配置文件中列出了用以接收返回数据的STK/Connect命令,这些命令是第三方应用程序获得STK数据的有效途径。此外,初始化文件中还包含一些必要的配置信息,以便在建立连接时设置STK/Connect模块的参数。函数AgConOpenSTK(&connection1,0,connectName)语句的功能是建立客户端程序与STK的连接关系,它包含三个参数:参数1为初始连接变量,其值必须为NULL。一旦客户端程序与STK之间建立了连接关系,这种关系就会记录在该参数中;参数2表示连接类型,0表示利用TCP/IP形式进行连接;参数3为连接对象的名称,“Localhost:5001”代表通过本地计算机的5001端口与STK进行连接。建立连接以后,就可以用AgConProcessSTKCmd函数向STK发送命令,格式如下:AgConProcessSTKCmd(connection1,CommandName,&returnInfo);其中,CommandName为命令的内容,返回值储存在returnInfo中。在完成初始化和建立连接后,可根据需要将不同的命令赋给该函数的第2个参数,然后调用该函数来驱动STK运行。最优真近点角附录1Matlab与STK互连一、Matlab与STK接口STK提供了两种方式,能够在Matlab里使用STK强大的功能:(1)aeroToolbox提供了Matlab库,能够在Matlab里独立使用一些STK函数。用户能够使用Matlab语法进行坐标转换、地形分析等。(2)其次,mexConnect提供了Matlab的具体函数。STK通用程序接口(Connect、ObjectModel)也可以用于与Matlab的交互中,mexConnect含有专门为Matlab设计的函数,方便STK与Matlab之间共享数据。1、aeroToolbox特征操作过程独立于STK历元与日期函数—管理参考时间,历元日期转换坐标变换—STK坐标系间的变换旋转和四元数—四元数、旋转矩阵、欧拉角间的转换中心体(CentralBody)操作和例程—确定中心体参数,包括惯性坐标、速度、表面法向量、弧长、重力参数,以及确定矢量是否在给定的中心体内相交航点、星历和姿态文件—读写STK数据文件位置和速度函数—动态反映运载工具的状态,计算视几何(apparentgeometry)(考虑光时间延迟(lighttimedelay))轨道元素设置变换—常用轨道元素表达式间的变换轨道元素参数变换—常用轨道元素参数间的变换DTED操作—读取多种格式的地形文件,计算高程,确定地形蒙版轨道预报—支持Keplerian,J2,J4,MSGP4多种轨道预报方法,弹道导弹攻击目标,多种轨道目标函数导航精度—计算任意星座导航发射机的定位精度地图数据—提供世界范围矢量地图数据覆盖网格—提供系列函数确定点是否位于任意的多边形之内2、mexConnect特征利用STK/Connect包装器(Wrapper)远程控制STKSTK服务器指令—利用ConnectSocket打开、关闭、获得信息应用指令—STK应用函数通用目标指令—创建、删除、保存、加载对象的函数场景命令—控制历元、动画时间、日期转换函数轨道预报—控制运载工具轨道预报器参数运载工具的位置和速度—获得/设置运载工具的位置,速度和姿态数据,以及产生动态状态数据结构(利用aeroToolbox视几何(apparentgeometry)函数)地面设施和目标—获得/设置地面设施和目标的位置面(area)目标—获得面目标的边界STK工具—确定访问的时间间隔,以Matlab数据格式获得任意对象的Access报告或者STK报告Connect指令—能够处理Connect指令3、应用举例(1)姿态机动。aeroToolbox提供了多个函数用来实现姿态机动。能够利用欧拉角到四元数的变换工具,计算旋转和变换姿态类型。例如,给定飞船的当前状态以及期望状态,aeroToolbox能够给出所需旋转最小角度的四元数(2)参数分析。mexConnect指令能够创建和操作STK对象。能够在Matlab里优化单独或者整合的参数。(3)计算相对位置。给定两个对象的动态状态,aeroToolbox能够确定这两者的相对位置和速度(4)创建GUI。利用Matlab为图形用户创建包含aeroToolblx和mexConnect函数的界面,包括STK的2D/3D图形界面,将STK世界一流的视觉效果导入到Matlab中。二、使用mexConnect互连Matlab与STK互连的前提条件:(1)Matlab6.1以上版本;(2)安装有带许可证的STK软件。先安装Matlab后安装STK:STK安装时会复制部分文件到<MATLABROOT>\toolbox\local文件夹下。先安装STK后安装MATLAB:为了使STK和MATLAB之间能够通信,首先需要运行<STKinstallfolder>\Bin下的StkMatlabInstall.exe文件。该程序会将部分STK文件拷贝至先前安装的每一个Matlab版本目录<MATLABROOT>\toolbox\local下。Matlab与STK互连的设置过程如下:(1)打开Matlab,在命令行里输入agiInit(’setup’),会出现下面的对话框:点击Continue;(2)接下来会自动弹出一个窗口,要求指定.m文件的存放目录,见下图所示。进入<STKinstallfolder>\Matlab,点击OK;(3)接下来会自动弹出一个窗口,要求指定AGIMEX文件的存放目录,见下图所示。进入目录<STKinstallfolder>\bin,点击OK;(4)接下来会出现一个对话框,询问是对默认的MexConnect主机进行配置,见下图所示。如果STK和Matlab不在同一台电脑上运行,或者都在同一台电脑上但想对通信端口进行配置(默认端口为5001),那么需要将Matlab指向STK主机,这时需要选择Yes;(5)接着会自动弹出一个对话框,要求对端口进行配置,见下图所示。此处不做变动,直接点击OK;上述配置MexConnect主机步骤为可选操作。(6)如果想修改默认设置,例如指令等待时间(commandtimeout),在接下来出现的对话框里选择Yes。(7)接下来会自动弹出一个对话框,要求指定连接初始化配置文件:(8)此时进入目录<STKinstallfolder>\Connect\PCData,选中名为connect.dat的文件,见下图所示。上述配置连接初始化文件的操作为可选步骤。至此安装完毕。下面对是否正确安装进行检验。(1)打开Matlab,打开Stk(未创建场景)。在Matlab命令提示符里输入stkInit,如果正确安装,会出现以下提示:>>stkInitInitializingMATLABInterfacewithAGIDefaultpreferencesWarning:mexConnect:Connectingtolocalhost:5001(2)打开指向STK的一个socket:>>conid=stkOpen(3)通过socket句柄在STK里面创建一个新场景>>stkExec(conid,’New/ScenarioScenario1’)此时STK里面会自动新建一个场景。注意:New和/均有空格。利用Matlabhelp了解更多的相关功能:>>helpstk>>helpmexConnect>>helpaerotoolbox附录2STK图像转换器工作流程附录3STK地形转换器工作流程附录4视线的计算视线约束主要是考虑信号传播路径中地面障碍物的影响。大地通常看作是一个椭圆体,在中心体坐标系(centralbodyfixedframe)中认为该椭圆体的形状是固定的。在椭圆体模型中,地面认为是局部平坦的(不考虑高山、丘陵、山谷等),地面模型非常简单。对地面进行更精确地建模需要AzEI蒙版或者地形蒙版工具,采用不同的访问约束(AccessConstraints)来建模。针对STK各类对象有不同的方法描述障碍面,见表1。表1访问计算涉及到的STK对象相应的椭圆体模型STK对象椭圆体描述地面设施,目标椭圆体经过指定高度的点,与考虑约束对象的中心椭圆体具有相同的正交面和外形卫星,运载火箭,导弹,飞机考虑约束对象的中心椭圆体地面车辆,船只考虑约束对象的中心椭圆体行星别的对象的中心椭圆体星体别的对象的中心椭圆体面目标,线目标考虑约束对象的中心椭圆体雷达,接收机,传感器,发射机与所继承对象的模型相同通常情况下,STK中的车辆对象将其中心椭圆体(centralbodyellipsoid)外形作为障碍面。地面设施和目标通过指定自身的高度(高度以中心椭圆体或者海平面为参考平面)来建立障碍面。椭圆体的平面通过指定的高度,其正交平面与中心椭圆体相同,外形也与中心椭圆体相同(球面,扁球面,三轴椭圆面)。这样,用户能够针对Denver,Colorado的地面设施选择合适的地面模型,这两个地方的地面高于椭圆体面大概一英里左右。尽管能够从Denver看到Rocky山,但不用视线约束来建模,而是利用AzEI蒙版或者地形蒙版来描述当地的地形特征。对当地地面建模中心椭圆体模型通常情况下是可以的,但有些地方用该模型来描述就不合适,特别是当海平面显著低于椭圆体平面的时候。因此,视线约束建模时,存在对象低于椭圆体平面的原因在于椭圆体模型不能很好地描述当地地面。我们认为不会故意将任何一个对象放在当地地面的下方(否则会无法访问,从而是一个无用的模型)。当观察到一个对象低于给定的椭圆体平面时,需要重新规划椭圆体平面,使该对象位于椭圆体平面上方,重新规划后的椭圆体平面作为障碍面。当对两个对象进行访问计算时需要考虑视线约束。在某些情况下,只需要考虑其中一个的视线约束。●星体.对于行星及其它星体不考虑视线约束。当行星所处的坐标系中心体为太阳,另外一个对象的视线良好的情况下,不考虑该行星的视线约束。●飞机,运载火箭,导弹,卫星,以及它们附属对象.当两个对象具有相同的中心体,其中一个对象视线良好的情况下,不考虑另外一个对象的视线约束。注意:星体将场景中的中心对象作为中心体,行星将太阳作为中心体。访问具有相同中心体的地面设施和卫星时,如果两者都存在视线约束,会利用地面设施模型的视线约束,不考虑卫星的障碍面模型。距离地面较近的对象通常选择为视线约束对象。当发射信号沿传播路径穿越椭圆体时有时会出现障碍现象。在惯性坐标系F中计算传播信道,F可以是一个中心体惯性坐标系(centralbodyinertialframe),或者是太阳系质心坐标系(solarsystembarycenterframe)。障碍的外形在F中是运动的,但在中心体固定坐标系(centralbodyfixedframe)中位置是固定的。运动包含转动和平移。在信号传播过程中,中心体固定坐标系绕F的转动,会导致外形绕F转动。计算信道障碍的难点在于需要进行坐标转换。椭圆体的形状和位置在惯性坐标系中为时变模型,在该坐标系中信道是直线;转换到固定坐标系中信道是弯曲的,形状则是固定的。我们通常选择在固定坐标系中计算障碍。1、固定坐标系中的信号传播路径和分别表示在坐标系F中的传输和接收点传播路径矢量,t为传输时间,t+∆t为接收时间,∆t为信号延迟时间,F中的信道可表示为定义表示在坐标系F中表示的障碍物中心体坐标矢量,M为坐标系F相对于固定坐标系E的旋转矩阵。在E中信道w可表示为2、计算障碍:不考虑传播路径中信号的波动此处认为∆t非常小,和M可以看作常量,信道在坐标系E中可看作直线。这种情况下建立障碍物模型时需要考虑信道是否穿过椭圆体。由于椭圆体是一个简单的凸集,信道穿越问题很容易解决。设P为坐标系E中的任意一点,存在一个因子µ,椭圆体的坐标轴被该因子标度,标度后的椭圆体经过P。当µ>1时,P在椭圆体的外面;µ=1时,P在椭圆体上;µ<1时,P在椭圆体内部。对于E中的任意一条线段,都存在因子µ,使得被标度后的椭圆体与该线段相切。对于E中的任意一条线段,µ的最小值发生在线段的尾部或者切点处。针对三种位置,可以大体估计µ的最小值µmin,µmin<1时障碍存在。3、计算障碍:对传播路径中信号的波动建模此处认为∆t不能忽略,信号则需要花费一定的时间穿越信道。当在0与∆t之间,信号在椭圆体内部,此时存在障碍现象。这种情况下比前一种情况计算更为复杂,因为在坐标系E中信道并不是一条直线。沿坐标系E中信道使µ值最小,并通过迭代方法决定。µmin<1时障碍存在。附录5常用的STK指令(1)建立场景New/ScenarioFlightSceneFlightScene(2)设置场景时间和步长SetTimePeriodScenario/FlightScene“10Oct200010:10:10”“11Oct200010:10:10SetEpochScenario/FlightScene“10Oct200010:10:10AnimateScenario/F1ightSceneSetValues“10Oct200010:10:10”AnimateScenario/F1ightSceneSetAnimationModeXRealTimeAnimateScenario/F1ightSceneXRealTimeMultiplier1.0(3)添加对象、设置对象模型New/Scenario/FlightScene/FacilityJiuQuanSetPositionScenario/FlightScene/Facility/JiuQuanGeodetic40.9604000100.2980001072.0200000VO*/Facility/JiuQuanModel“D:/Launch/ariane-lp.mdl”New/Scenario/FlightScene/LaunchVehicleRocket1VO*/Satellite/JBModel“D:/Launch/CZ-2C.mdl”(4)建立坐标系VectorTool*Facility/JiuQuanCreateAxesLaunchAxes“FixedinAxes”Euler10.29840.9604-281.896312“CentralBody/EarthFixed”VectorTool*Facility/JiuQuanCreateSystemLaunchSys“Assembled”“Facility/JiuQuan”“Facility/JiuQuanLaunchAxes”(5)设置对象的驱动文件SetStateScenario/FlightScene/LaunchVehicle/RocketlFile“D:/Launch/Ephl.e”SetAttitudeScenario/FlightScene/LaunchVehicle/RocketlFile“D:/Launch/Attl.e”(6)设置视点VO*ViewFromToFromRegName“STKObject”FromName“Satellite/JB”ToReg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年三只熊的早餐说课稿
- 2025-2026学年北师大版数学初一说课稿
- 2025-2026学年大班特别的名字说课稿
- 2025-2026学年1到2岁做糖果的说课稿
- 2025-2026学年多声部合唱说课稿
- 2026下半年下半年小学数学教资面试乘除专项题库
- 2026下半年小学英语教资面试语法试讲
- 《德信诚学习》课件
- 解决问题二年级上册解决问题专项复习
- 虽有佳肴我的课件
- 《DB65-T 8003-2023 建设工程电子文件与电子档案管理标准》
- 2026年软件正版化工作实施方案
- 健身房投资入股协议书样本
- 钢板仓工程专项施工方案
- GB/T 45939-2025光伏组件封装用共挤胶膜
- NBT 11127-2023 在用钢丝绳芯输送带报废检测技术规范
- 母婴同室院感管理课件
- 农村初中生大五人格与生命意义感的内在关联探究
- 基层治保会培训课件
- 2025至2030年中国杭州房地产行业市场竞争现状及未来趋势研判报告
- TD/T 1024-2010县级土地利用总体规划编制规程
评论
0/150
提交评论