MLDesign Technologies, Inc.

Mainnavigation

Subnavigation

BORDER

 
 
 

Pagecontent

EOS Power Analysis

The SatLab graph below analyzes the power output of an Earth Observation Satellite under maximum solar gain. The script that generated this graph is shown below.

Figure 1: Calculated EOS power levels
Script - EOS satellite
  1. % Demo: EOS satellite
  2. %
  3. % This demo sets up a satellite for earth observation that passes
  4. % over the earth at noon for optimum light conditions
  5. %
  6.  
  7. removeAll;
  8. clearGraphic();
  9. setSimEpoch(2000,3,21,12,0,0);
  10. addEpoch('equinox',2000,3,21,12,0,0);
  11. addSatellite('EOS Sat',7171,0,98,0,0,0,'equinox');
  12.  
  13. %earthstation
  14. earth0 = "Frankfurt";
  15. addStation('Frankfurt', I_earth, 10, 50.05, 8.4, 0.1);
  16.  
  17. dtime      = 100;
  18. alphaleft  = 45 *d2r;
  19. alphatop   = 0 *d2r;
  20. alpharight =-45 *d2r;
  21.  
  22. setSimTime(0);
  23. setSimStepSize(dtime);
  24. t = 0:dtime:120*dtime;
  25. fleft = rotx(alphaleft) * [0
  26.                             0
  27.                            -1];
  28.  
  29. ftop = rotx(alphatop)*    [0
  30.                             0
  31.                            -1];
  32.  
  33. fright= rotx(alpharight)* [0
  34.                             0
  35.                            -1];
  36.  
  37. z_matrix =
  38. [   026.7527.2527.7528.2528.7529.2529.7530.2530.7531.25
  39.   10012.3912.2312.1412.1411.9510.6410.5110.3310.14  9.94
  40.    9012.6712.5912.5012.3912.2611.7611.6811.3611.4811.36
  41.    8012.7712.7312.6812.6312.5712.3112.2712.2212.1712.11
  42.    7012.7812.7612.7412.7112.6812.5512.5312.5112.4812.45
  43.    6012.7412.7312.7212.7112.6912.6312.6212.6112.6012.68
  44.    5012.6812.6812.6712.6712.6612.6312.6312.6212.6212.91
  45.    4012.6112.6112.6112.6112.6012.5912.5912.7912.8813.18
  46.    3012.5312.5312.5312.5312.5312.5312.5712.6312.7312.72
  47.    2012.4612.4512.4512.4512.4512.4512.4512.4512.6512.45
  48.    1012.3812.3812.3812.3812.3812.3812.3812.3812.5812.38
  49.     012.3012.3012.3012.3012.3012.3012.3012.3012.4012.30
  50.   -1012.2212.2212.2212.2212.2212.2212.2212.2212.2212.22
  51.   -2012.1412.1412.1412.1412.1412.1412.1412.1412.1412.14
  52.   -3012.0612.0612.0612.0612.0612.0612.0612.0612.0612.06
  53.   -4011.9811.9811.9811.9811.9811.9811.9811.9811.9811.98
  54.   -5011.7011.8411.9011.9011.9011.9011.9011.9011.9011.90
  55.   -6011.3211.6211.7211.8211.8211.8211.8211.8211.8211.82
  56.   -7011.1411.2411.4411.6411.7411.7411.7411.7411.7411.74
  57.   -8010.9510.9511.3511.4511.6511.6511.6511.6511.6511.65];
  58.  
  59. j            = 0;
  60. temptop      = 0;
  61. templeft     = 0;
  62. tempright    = 0;
  63. solarflux    = 1420;
  64.  
  65. alpha        = 0.65;
  66. epsilon      = 0.81;
  67. albedo       = 0.3;
  68. sigma        = 5.67e-8;
  69. capacity     = 660;
  70.  
  71. qir          = 0;
  72. strings_top  = 4;
  73. strings_side = 10;
  74. eview        = 0.045;
  75. dt           = 60;
  76.  
  77. dtc          = dt/capacity;
  78. reference_flux_si = 1353;
  79. voltage      = 28;
  80. current      = zeros(size(t));
  81.  
  82. for i=t,j=j+1;
  83.     stepSim;
  84.     [d,r,a,e,v] = PlanetPosition();
  85.     theta = ftop` * unitvector(a(2),e(2));
  86.     theta = max(0,theta);
  87.     temptop = temptop+((theta*solarflux*alpha)
  88.                       -(epsilon*(temptop^4)*sigma))*(dtc);
  89.     current_top = ((strings_top*theta)
  90.                    *table(z_matrix,(temptop-273.15),voltage)
  91.                    *((solarflux/reference_flux_si)/12));
  92.  
  93.     theta = fleft` * unitvector(a(2),e(2));
  94.     theta = max(0,theta);
  95.     templeft = (templeft+
  96.                ((((theta*solarflux*alpha)+
  97.                   (theta*solarflux*albedo*alpha*eview))
  98.                 -(epsilon*(templeft^4)*sigma)
  99.                 +theta*qir)*(dtc)));
  100.  
  101.     current_left = ((strings_side*theta)*
  102.     table(z_matrix,(templeft-273.15),voltage)
  103.         *((solarflux/reference_flux_si)/12));
  104.  
  105.     theta = fright` * unitvector(a(2),e(2));
  106.     theta = max(0,theta);
  107.     tempright= (tempright+
  108.                ((((theta*solarflux*alpha)+
  109.                   (theta*solarflux*albedo*alpha*eview))
  110.                 -(epsilon*(tempright^4)*sigma)+theta*qir)*(dtc)));
  111.  
  112.     current_right = ((strings_side*theta)
  113.                     *table(z_matrix,(tempright-273.15),voltage)
  114.                     *((solarflux/reference_flux_si)/12));
  115.  
  116.     current(j)=current_top+current_left+current_right;
  117. endfor
  118.  
  119. average=sum(current*voltage)/prod(size(t));
  120. erase
  121.  
  122. window('111');
  123. plot(t,current*voltage,
  124.      t,ones(size(t))*average, 'grid');
  125. title('Power of EOS Satellite')
  126. ylabel('P [Watt]');
  127. xlabel('t [sec]')
  128. wtext(2000,average+10,'Average Power');