GEO Stationkeeping Example
Utilizes pause. ------------------------------------------------------------------------- See also NewFig, DVGeoTrx, DVIDrift -------------------------------------------------------------------------
Contents
%-------------------------------------------------------------------------- % Copyright 2007 Princeton Satellite Systems, Inc. % All rights reserved. %-------------------------------------------------------------------------- clear area; % area is often times a var, make sure its open for function echo on
FIRST COMPUTE ANNUAL DELTA-V for NORTH-SOUTH STATION-KEEPING
% tracking tolerance tol = 0.1; % deg year = 2007:2016; % consider these years % north-south station-keeping [dVNS,dTNS] = DVIDrift( .1, year ); % Spacecraft Control Toolbox function annualDV = 365./dTNS*dVNS; NewFig('GEOStationKeeping'); bar(year,annualDV) xlabel('Year'), ylabel('Annual Delta-V (m/s)') title('Delta-V Requirement for North-South GEO Stationkeeping')
%% FIRST COMPUTE ANNUAL DELTA-V for NORTH-SOUTH STATION-KEEPING % tracking tolerance tol = 0.1; % deg year = 2007:2016; % consider these years % north-south station-keeping [dVNS,dTNS] = DVIDrift( .1, year ); % Spacecraft Control Toolbox function annualDV = 365./dTNS*dVNS; NewFig('GEOStationKeeping'); bar(year,annualDV) xlabel('Year'), ylabel('Annual Delta-V (m/s)') title('Delta-V Requirement for North-South GEO Stationkeeping')
NEXT COMPUTE ANNUAL DELTA-V for EAST-WEST STATION-KEEPING
% east-west station-keeping [dVEWy, acc, dTEW] = DVGeoTrx( 1:360, .1 ); % Spacecraft Control Toolbox function NewFig('GEOStationKeeping'); area(dVEWy) xlabel('Longitude (deg)'), ylabel('Annual Delta-V (m/s)') title('Delta-V Requirement for East-West GEO Stationkeeping')
%% NEXT COMPUTE ANNUAL DELTA-V for EAST-WEST STATION-KEEPING % east-west station-keeping [dVEWy, acc, dTEW] = DVGeoTrx( 1:360, .1 ); % Spacecraft Control Toolbox function NewFig('GEOStationKeeping'); area(dVEWy) xlabel('Longitude (deg)'), ylabel('Annual Delta-V (m/s)') title('Delta-V Requirement for East-West GEO Stationkeeping')
NOW COMPUTE TOTAL DELTA-V REQUIREMENT
% approximate total delta-v requirement
dVEWyMSP = DVGeoTrx( 267, .1 );
dVTotal = sum(annualDV)+dVEWyMSP*length(year)
%% NOW COMPUTE TOTAL DELTA-V REQUIREMENT % approximate total delta-v requirement dVEWyMSP = DVGeoTrx( 267, .1 ); dVTotal = sum(annualDV)+dVEWyMSP*length(year) dVTotal = 4.492461011228953e+02
NOW COMPUTE PROPELLANT MASS
% compute propellant mass
mf = 4000;
ISP = 220;
g = 9.81;
mp = mf*( exp(dVTotal/g/ISP)-1 );
%% NOW COMPUTE PROPELLANT MASS % compute propellant mass mf = 4000; ISP = 220; g = 9.81; mp = mf*( exp(dVTotal/g/ISP)-1 );
NOW double ISP and recompute
mp2 = mf*( exp(dVTotal/g/(2*ISP))-1 ); echo off fprintf('Propellant Mass for ISP of %d sec: %4.2f kg,\n',ISP,mp); fprintf('Propellant Mass for ISP of %d sec: %4.2f kg,\n',2*ISP,mp2); fprintf('\nOnly %3.1f %% of the original propellant mass is needed.\n',100*mp2/mp); echo off %--------------------------------------
%% NOW double ISP and recompute mp2 = mf*( exp(dVTotal/g/(2*ISP))-1 ); echo off Propellant Mass for ISP of 220 sec: 925.63 kg, Propellant Mass for ISP of 440 sec: 438.75 kg, Only 47.4 % of the original propellant mass is needed.