Path: SpacecraftEstimation/OpticalNavigation
% Implements optical navigation using the Moon as a target This function implements static orbit determination in the Earth-Moon system. It allows for two types of measurements, planet chord and planet horizon. The latter is used when the spacecraft is near a planet or moon and it is too close to see the whole planet. The function assumes that the navigation camera points instantly at the target. It does not require a star camera. There are three actions: 'initialize,' 'get unit vector,' and 'update.' 'initialize' sets the output to the input r and v. 'get unit vector' gets the pointing vector for the navigation camera. This is sent to the camera. 'update' updates the filter. This version only has the static solution. -------------------------------------------------------------------------- Form: d = OpticalNavigationMoon OpticalNavigationMoon( 'initialize', d, r, v ) OpticalNavigationMoon( 'get unit vector', d, rMoon, vMoon, r, v ) OpticalNavigationMoon( 'update', d, y, rMoon, vMoon, r, v ) [d,rE,vE] = OpticalNavigationMoon( action, d, varargin ) -------------------------------------------------------------------------- ------ Inputs ------ action (1,:) 'initialize,' 'get unit vector,' and 'update' d (.) Data structure .starCat (.) Star catalog data structure .uStarCat (3,:) Unit vectors for the stars .aMoon (1,1) Radius of the moon (km) .uCamera (3,1) Unit vector for camera in body frame .dNav (.) Navigation camera data structure .rE (3,1) Spacecraft position vector (km) .vE (3,1) Spacecraft velocity vector (km/s) .dT (1,1) Time step (s) .rES (3,1) Static solution position estimate (km) .vES (3,1) Static solution velocity estimate (km/s) .rESOld (3,1) Static solution old position estimate .useStatic (1,1) If 1 return the static solution .target (1,1) 1 = moon, 2 = Earth .type (1,1) 1 = horizion, 2 = centroid .halfAng (1,1) Navigation camera half field-of-view y (.) Navigation camera data struture rMoon (3,1) Moon position vector (km) vMoon (3,1) Moon velocity vector (km/s) r (3,1) Spacecraft position vector (km) v (3,1) Spacecraft velocity vector (km/s) ------- Outputs ------- d (.) Data structure rE (3,1) Estimated position vE (3,1) Estimated velocity --------------------------------------------------------------------------
AC: ACData/ACTConstants AerospaceUtils: Coord/QLVLH SC: Ephem/LoadFK5 SC: SCData/sCTConstants SC: Sensor/U2Pix SCPro: ProSensors/HorizonUnitVectors SCPro: ProSensors/NavigationCamera SCPro: ProSensors/StarCameraViewer SpacecraftEstimation: StellarAttDet/PinholeCameraStruct SpacecraftEstimation: StellarAttDet/PinholeStarCamera SpacecraftEstimation: StellarCatalog/LoadCatalog SpacecraftEstimation: StellarData/FK5Polar SpacecraftEstimation: StellarData/Hipparcos Common: CommonData/Constants Common: CommonData/SwooshWatermark Common: CommonData/xSplashSmall Common: Database/Constant Common: General/CellToMat Common: General/DeBlankLT Common: General/DeleteCell Common: General/MatToCell Common: General/Watermark Common: Graphics/NewFig Common: Graphics/Plot2D Common: Graphics/PltStyle Common: Graphics/TitleS Common: Graphics/XLabelS Common: Graphics/YLabelS Common: Graphics/ZLabelS Common: Quaternion/Mat2Q Common: Quaternion/Q2Mat Common: Quaternion/QTForm Common: Transform/RaDec2U Common: Transform/VM2Int Math: Linear/Cross Math: Linear/Mag Math: Linear/Unit
Back to the SpacecraftEstimation Module page