Demonstrate a pointing budget using PBudget.
A pointing budget must account for all misalignments and attitude errors.
See also FindDirectory, PBudget
Contents
%--------------------------------------------------------------------------- % Copyright (c) 2001-2002, 2007, 2017 Princeton Satellite Systems, Inc. % All rights reserved. %--------------------------------------------------------------------------- % 2017.1 Update code from str2mat to char, which is now preferred %---------------------------------------------------------------------------
clear variables used in demo
%------------------------------ clear desc categ errors k = 1; desc = 'SSA temperature effects'; categ = 'Bias'; errors(k,:) = [0.0150 0.0150 0.0000]; k = k + 1; desc = char(desc,'SSA optics w.r.t. cube'); categ = char(categ,'Bias'); errors(k,:) = [0.0250 0.0250 0.0000]; k = k + 1; desc = char(desc,'SSA cube to MRC'); categ = char(categ,'Bias'); errors(k,:) = [0.0250 0.0250 0.0000]; k = k + 1; desc = char(desc,'Antenna B.S. w.r.t. antenna RC'); categ = char(categ,'Bias'); errors(k,:) = [0.0180 0.0180 0.0000]; k = k + 1; desc = char(desc,'Antenna RC w.r.t. MRC'); categ = char(categ,'Bias'); errors(k,:) = [0.0150 0.0150 0.0150]; k = k + 1; desc = char(desc,'Attitude sensing'); categ = char(categ,'Bias'); errors(k,:) = [0.0012 0.0012 0.0012]; k = k + 1; desc = char(desc,'S/C disturbance torque'); categ = char(categ,'Diurnal'); errors(k,:) = [0.0080 0.0080 0.0080]; k = k + 1; desc = char(desc,'S/C disturbance torque'); categ = char(categ,'Bias'); errors(k,:) = [0.0031 0.0031 0.0031]; kSK1 = k; k = k + 1; desc = char(desc,'Antenna thermal distortion w.r.t. SSA RC'); categ = char(categ,'Diurnal'); errors(k,:) = [0.0100 0.0100 0.0100]; k = k + 1; desc = char(desc,'Attitude sensor & actuator noise/resolution'); categ = char(categ,'Short Term'); errors(k,:) = [0.0200 0.0200 0.0200]; k = k + 1; desc = char(desc,'SA stepping transients'); categ = char(categ,'Short Term'); errors(k,:) = [0.0000 0.0500 0.0000]; k = k + 1; desc = char(desc,'S/C disturbance torques'); categ = char(categ,'Short Term'); errors(k,:) = [0.0000 0.0000 0.0000]; fName = fullfile(FindDirectory('SCData'),'SpacecraftPointingBudget.txt'); [cep,r,s,t,cList] = PBudget(errors,desc,categ,0,0,fName); fprintf('\n\n------------------------------------\n') disp('Spacecraft Pointing Budget') disp('------------------------------------') fprintf('%s\n','Circular error (3 sigma):'); fprintf(' %2.4f\n' , cep ); fprintf('\n%s\n','Azimuth and elevation errors:'); fprintf(' %2.4f\n' , r ); fprintf('\n%s\n','Summary by category:' ); for m = 1:size(cList,1) fprintf(' %s\n', cList{m} ); fprintf(' %2.4f\n' , s(m,:) ); end fprintf('\n%s\n','Totals:') fprintf(' %2.4f\n' , t ); %--------------------------------------
------------------------------------ Spacecraft Pointing Budget ------------------------------------ Circular error (3 sigma): 0.2271 Azimuth and elevation errors: 0.1118 0.0779 Summary by category: Bias 0.0451 0.0451 0.0154 Totals: 0.0779 0.1118 0.0482