Path: Missions/LunarMission
% Implements a lunar mission control system. The command list cell array is {time command data} where data is a data structure for that command. The command list rows should be in order of Julian date. You can also use +sec instead of jD in which case the time is +sec after the previous command. If the first command is +sec then it is +sec from the time passed on initialization. Supported commands: Command data 'align with a quaternion', struct('q_target',[0;1;0;0]);... 'lunar orbit insertion prepare', struct('thrust',20,'massInitial',6,... 'uE', 290*9.806,... 'body_vector',[1;0;0],... 'hLunarOrbit',200);... 'align for lunar insertion', [];... 'start main engine', struct('iD',1,'thrust',20)}; uE is exhaust velocity in m/s. massInitial is the mass at the start of the burn. hLunarOrbit is the altitude of the burn. meas can be the state vector. dC = LunarMissionControl gives the default data structure. This also opens a GUI that shows the command list and current command that is being executed. Commands are implemented via the dSim data structure. This is compatible with RHSLunarMission. -------------------------------------------------------------------------- Form: dC = LunarMissionControl % default data structure [dC, dSim] = LunarMissionControl( action, jD, dC, dSim, meas, cList ) -------------------------------------------------------------------------- ------ Inputs ------ action (1,:) 'initialize', 'update', 'terminate' jD (1,1) Julian date dC (.) Controller data structure dSim (.) Simulation data structure meas (.) Measurement data structure or state vector .qECIToBody (4,1) Quaternion .rECI (3,1) ECI position .vECI (3,1) ECI velocity .omega (3,1) Body rate .omegaRWA (:,1) RWA rates cList {:,3} Command list cell array ------- Outputs ------- dC (.) Controller data structure dSim (.) Simulation data structure --------------------------------------------------------------------------
AC: ACData/ACTConstants AerospaceUtils: Coord/QIToBDot Missions: LunarMission/CommandListProcessing Missions: LunarMission/LunarOrbitInsertion Orbit: OrbitCoord/AE2RPRA Orbit: OrbitCoord/RARP2A Orbit: OrbitCoord/RPRA2AE SC: BasicOrbit/CP2I SC: BasicOrbit/E2M SC: BasicOrbit/E2Nu SC: BasicOrbit/El2RV SC: BasicOrbit/M2E SC: BasicOrbit/M2EApp SC: BasicOrbit/M2EEl SC: BasicOrbit/M2EHy SC: BasicOrbit/M2Nu SC: BasicOrbit/M2NuPb SC: BasicOrbit/Nu2E SC: BasicOrbit/Nu2M SC: BasicOrbit/RV2El SC: BasicOrbit/VOrbit SC: SCData/sCTConstants SCPro: ProControl/PID3Axis Common: CommonData/Constants Common: CommonData/SwooshWatermark Common: CommonData/xSplashSmall Common: Control/C2DZOH Common: Control/C2DelZOH Common: Control/FResp Common: Control/GND Common: Control/GSS Common: Control/ND2SS Common: Control/PIDMIMO Common: Control/S2Damp Common: Control/SS2ND Common: Control/SizeABCD Common: Control/TrnsZero Common: Control/WPZ Common: Control/WReson Common: Control/ZFresp Common: Database/Constant Common: GUIs/TimeCntrl Common: General/CellToMat Common: General/DeBlankLT Common: General/DeleteCell Common: General/DispWithTitle Common: General/MatToCell Common: General/Watermark Common: Graphics/LogLimit Common: Graphics/Mesh2 Common: Graphics/NewFig Common: Graphics/Plot2D Common: Graphics/PltStyle Common: Graphics/TextS Common: Graphics/TimeLabl Common: Graphics/XLabelS Common: Graphics/YLabelS Common: Graphics/ZLabelS Common: Quaternion/AU2Q Common: Quaternion/Q2AU Common: Quaternion/QMult Common: Quaternion/QPose Common: Quaternion/QTForm Common: Quaternion/U2Q Common: Time/DTSToDTA Common: Time/Date2JD Common: Time/SecToString Math: Geometry/Perpendicular Math: Integration/RK4 Math: Linear/ColCompR Math: Linear/Cross Math: Linear/DelLZ Math: Linear/Dot Math: Linear/DupVect Math: Linear/IsZero Math: Linear/Mag Math: Linear/RowCompU Math: Linear/SkewSymm Math: Linear/Unit
Back to the Missions Module page