groundStation
R2026bAdd ground station to satellite scenario
Syntax
Description
groundStation( adds a default scenario)GroundStation object to the
specified satellite scenario.
groundStation(
adds ground stations to the satellite scenario scenario,lat,lon)scenario. The positions
of the ground stations are defined by lat and lon,
which are vectors of equal length specifying the planetodetic latitudes and longitudes of
the ground stations with respect to the celestial body specified by the
CentralBody name‑value argument. The number of ground stations added
to the scenario equals the length of lat and lon.
Other properties assume default values.
groundStation(___, sets
options using one or more name-value arguments in addition to any input argument combination
from previous syntaxes. For example, Name,Value)'MinElevationAngle',10 specifies a
minimum elevation angle of 10 degrees.
returns a
vector of handles to the added ground stations. Specify any input argument combination from
previous syntaxes.gs = groundStation(___)
Examples
Create a satellite scenario and add ground stations from latitudes and longitudes.
startTime = datetime(2020,5,1,11,36,0); stopTime = startTime + days(1); sampleTime = 60; sc = satelliteScenario(startTime,stopTime,sampleTime); lat = 10; lon = -30; gs = groundStation(sc,lat,lon);
Add satellites using Keplerian elements.
semiMajorAxis = 10000000;
eccentricity = 0;
inclination = 10;
rightAscensionOfAscendingNode = 0;
argumentOfPeriapsis = 0;
trueAnomaly = 0;
sat = satellite(sc,semiMajorAxis,eccentricity,inclination, ...
rightAscensionOfAscendingNode,argumentOfPeriapsis,trueAnomaly);Add access analysis to the scenario and obtain the table of intervals of access between the satellite and the ground station.
ac = access(sat,gs); intvls = accessIntervals(ac)
intvls = 8×8 table
"Satellite 2" "Ground station 1" 1 01-May-2020 11:36:00 01-May-2020 12:04:00 1680 1 1
"Satellite 2" "Ground station 1" 2 01-May-2020 14:20:00 01-May-2020 15:11:00 3060 1 2
"Satellite 2" "Ground station 1" 3 01-May-2020 17:27:00 01-May-2020 18:18:00 3060 3 3
"Satellite 2" "Ground station 1" 4 01-May-2020 20:34:00 01-May-2020 21:25:00 3060 4 4
"Satellite 2" "Ground station 1" 5 01-May-2020 23:41:00 02-May-2020 00:31:00 3000 5 5
"Satellite 2" "Ground station 1" 6 02-May-2020 02:50:00 02-May-2020 03:39:00 2940 6 6
"Satellite 2" "Ground station 1" 7 02-May-2020 05:58:00 02-May-2020 06:47:00 2940 7 7
"Satellite 2" "Ground station 1" 8 02-May-2020 09:06:00 02-May-2020 09:56:00 3000 8 9
Play the scenario to visualize the ground stations.
play(sc)

Input Arguments
Satellite scenario, specified as a satelliteScenario
object.
Latitude and longitude of the ground station, in degrees, specified as a real-valued scalar or real-valued vector.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN, where Name is
the argument name and Value is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name in quotes.
Example: 'MinElevationAngle',10 specifies a minimum elevation angle of
10 degrees.
Since R2026b
Celestial body relative to which the ground station latitude, longitude, and altitude are defined, specified as "Earth" or "Moon". When CentralBody equals "Moon", the lat, lon, and Altitude values refer to the lunar surface.
Terrain mask support (MaskElevationAngle and MaskAzimuthEdges) and MinElevationAngle apply to lunar ground stations.
Data Types: string
Satellite scenario viewer, specified as a scalar, vector, or array of satelliteScenarioViewer objects. If the AutoSimulate property of the scenario is false,
adding a satellite to the scenario disables any previously available timeline and
playback widgets.
This property is read-only.
You can set this property only when calling the groundStation function.
After you call groundStation function, this property is read-only.
groundStation name, specified as a name-value argument consisting of
'Name' and a string scalar, string vector, character vector or a cell
array of character vectors.
If only one groundStation is added, specify
Nameas a string scalar or a character vector.If multiple groundStations are added, specify
Nameas a string scalar, character vector, string vector or a cell array of character vectors. All groundStations added as a string scalar or a character vector are assigned the same specified name. The number of elements in the string vector or cell array of character vector must equal the number of groundStations being added. Each groundStation is assigned the corresponding name from the vector or cell array.
To change the name after setting only under the following conditions:
AutoSimulateis true.AutoSimulateis false and the simulation has not started (i.e. Manual mode).
In the default value, idx is the ID assigned by satellite scenario.
Data Types: char | string
You can set this property only when calling groundStation. After you call groundStation, this property is read-only.
Planetographic latitude of ground stations, in degrees, specified as a scalar double or vector double. Values must be in the range [-90, 90].
If you add only one ground station, specify
Latitudeas a scalar double.If you add multiple ground stations, specify
Latitudeas a vector double whose length is equal to the number of ground stations being added.
Data Types: double
You can set this property only when calling groundStation. After you call groundStation, this property is read-only.
Planetographic longitude of ground stations, in degrees, specified as a scalar or a row vector. Values must be in the range [-180, 180].
If you add only one ground station, specify
Longitudeas a scalar.If you add multiple ground stations, specify
Longitudeas a row vector whose length is equal to the number of ground stations being added.
Data Types: double
You can set this property only when calling groundStation. After you call groundStation, this property is read-only.
Altitude of ground stations, in meters, specified as a scalar or a vector.
If you specify
Altitudeas a scalar, the value is assigned to each ground station in the groundStation.If you specify
Altitudeas a vector, the vector length must be equal to the number of ground stations in the groundStation.
Data Types: double
Minimum elevation angle of a satellite for the satellite to be visible from the ground
station, and for the ground station to be visible from the satellite in degrees,
specified as a scalar or row vector. Values must be in the range [–90, 90]. For access
and link closure to be possible, the elevation angle must be at least equal to the value
specified in MinElevationAngle.
If you specify
MinElevationAngleas a scalar, the value is assigned to each ground station in the groundStation.If you specify
MinElevationAngleas a vector, the vector length must be equal to the number of ground stations in the groundStation.
When the AutoSimulate property of the satellite scenario is
false, MinElevationAngle property can be
modified while the SimulationStatus is NotStarted or
InProgress.
Data Types: double
Elevation angles for visibility mask in degrees, specified as a scalar, an N-element row vector, or a 2-D matrix. This property works with
MaskAzimuthEdges to create a visibility mask. The length of the
MaskElevationAngle row vector must be one shorter than the
MaskAzimuthEdges row vector.
The value of all MaskElevationAngle angles must be from -90 to 90.
N is m-1, where m is the number
of elements in MaskAzimuthEdges.
If
MaskElevationAngleis a scalar double or row vector double, this value is assigned to each ground station in theGroundStationobject.If
MaskElevationAngleis a 2-D matrix double, the number of rows must be equal to the number of ground stations in theGroundStationobject.
When the AutoSimulate property of the satellite scenario is false,
MaskElevationAngle property can be modified while the SimulationStatus is NotStarted or
InProgress.
Data Types: double
Azimuth angles for the visibility mask in degrees, specified as a row vector of angles,
or a 2-D matrix. This parameter works with MaskElevationAngle property
to create a visibility mask. The length of the MaskAzimuthEdges
property row vector must be one longer than the MaskElevationAngle
property row vector. The value of all MaskAzimuthEdges angles must be
from 0 to 360 degrees.
If
MaskAzimuthEdgesis a row vector, this value is assigned to each ground station added to theGroundStationobject.If
MaskAzimuthEdgesis a 2-D matrix, the number of rows in the matrix must be equal to the number of ground stations in theGroundStationobject.If
MaskAzimuthEdgesis not specified, this value is automatically generated for each ground station as a linearly spaced row vector from 0 to 360 degrees. The row vector is one value longer than the correspondingMaskElevationAnglerow vector.
When the AutoSimulate property of the satellite scenario is false,
MaskAzimuthEdges property can be modified while the SimulationStatus is NotStarted or
InProgress.
Data Types: double
Output Arguments
Ground station in the scenario, returned as a GroundStation object
belonging to the satellite scenario specified by the input
scenario.
You can modify the GroundStation object by
changing its property values. The name-value arguments used when calling this function
correspond to property names.
Version History
Introduced in R2021aYou can now add ground stations on the Moon by specifying the
CentralBody name‑value argument as "Moon". When
CentralBody equals "Moon", the
lat, lon, and Altitude values
define the ground station position on the lunar surface. Terrain mask support
(MaskElevationAngle and MaskAzimuthEdges) and
MinElevationAngle apply to lunar ground stations.
Starting in R2025a, using the MinElevationAngle property to specify
the minimum elevation angle between the satellite and the ground station is discouraged.
Instead, use the MaskElevationAngle and the
MaskAzimuthEdges properties in the ground station object and function
to account for local obstructions.
See Also
Objects
Functions
Topics
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)