MLDesign Technologies, Inc.

Mainnavigation

Subnavigation

BORDER

 
 
 

Pagecontent

Animation of Comm Links for GlobalStar

The two SatLab maps below come from an analysis of a communication system using the GlobalStar stellite syste. This system has 6 earth stations, two communicating locations (Phoenix and Rome . Routes are calculated with the Diklstra routing algorithm and displayed on the animated map. The first map below shows the routing at the end of the simulation, the second map shows the coverage of GlobalStar satellites at the end of the simulation. The two communicating locations(Phoenix and Rome) are shown on the map.

function demoRouteEStar % % demoRouteEStar % % This demo loads the satellite system GlobalStar % with 6 ES and 2 MS and simulates this system over % 10 min. In the demo the routing paths between Phoenix % and Rome and between Rome and Phoenix are shown. % The used routing algorithm is the Dijkstra algorithm % and routing is only possible between MS and LEO % satellites for the uplink, between satellites and MS % for the downlink, between satellites and ES for % up/down link and between ES for cross links % % Author : Horst Salzwedel loadreplaceAll("./EStar.data"); %addStation("Buenos Aires",I_earth,0.00-34.57,-58.05,0.01); setSimEpoch(2000,3,26,8,0,0); ES1 = "Honolulu"; ES2 = "Seattle"; ES3 = "Dallas"; ES4 = "New York"; ES5 = "Reykjavik"; ES6 = "Berlin"; MS1 = "Phoenix"; MS2 = "Rom"; t = 0:10:200; % initialize values for Iridium earth1 = NodeNumber(MS1) + 1; earth2 = NodeNumber(MS2) + 1; % other values n = NumberOfNodes(4); nES = NumberOfNodes(1); nMS = NumberOfNodes(2); nS = nES + nMS; % open display id = 1; iLEO = nS + 1; z = zeros(n-iLEO+1); % time steps for i1 = 1:max(size(t)) tnow=t(i1); clearGraphic(id); setSimTime(tnow); g_all=GeoPosition(4)*r2d; [d,r,a,el,v] = RelPosition (); % visibility between ES v(1:6,1:6) = [1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 1 1]; v(iLEO:n,iLEO:n) = z; % cost = 10E10*ones(104); cost = zeros(104); cost(1:56,1:56) = d.*v; cost(1:6,57:104) = cost(1:6,9:56); cost(57:104,7:8) = cost(9:56,7:8); % routing routes1 = RoutingDijkstra(cost,earth1,earth2); nr = max(size(routes1)); for j=1:nr if (routes1(j) > 56) routes1(j) = routes1(j) - 48; endif endfor setLineColor(id,"white"); lon1 = g_all(2,routes1); lat1=g_all(1,routes1); drawPline(id,lon1,lat1); % end of routing calculation endfor fprintf(stdout, "press space ...\n"), pause(); demos %endfunction