주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

satellite

위성 시나리오에 위성 추가

R2021a 이후

설명

satellite(scenario,file)scenario가 지정한 위성 시나리오에 fileSatellite 객체를 추가합니다. 위성의 요(z) 축은 천저를 가리키고 위성의 롤(x) 축은 각각의 관성 속도 벡터와 일치합니다.

예제

satellite(scenario,RINEXdata)scenario가 지정한 위성 시나리오에 RINEXdataSatellite 객체를 추가합니다.

satellite(scenario,semimajoraxis,eccentricity,inclination,RAAN,argofperiapsis,trueanomaly)Geocentric Celestial Reference Frame (GCRF)에 정의된 케플러 요소의 Satellite 객체를 위성 시나리오에 추가합니다.

satellite(scenario,positiontable)positiontable(timetable 객체)에 지정된 위치 데이터의 Satellite 객체를 시나리오에 추가합니다. 이 함수는 OrbitPropagator="ephemeris"를 사용하여 Satellite를 생성합니다.

예제

satellite(scenario,positiontable,velocitytable)positiontable에 지정된 위치 데이터(timetable 객체)와 velocitytable에 지정된 속도 데이터(timetable 객체)로부터 Satellite 객체를 시나리오에 추가합니다. 이 함수는 OrbitPropagator="ephemeris"를 사용하여 Satellite를 생성합니다.

예제

satellite(scenario,positiontimeseries)positiontimeseries에 지정된 위치 데이터로부터 Satellite 객체를 scenario에 추가합니다. 이 함수는 OrbitPropagator="ephemeris"를 사용하여 Satellite를 생성합니다.

satellite(scenario,positiontimeseries,velocitytimeseries)positiontimeseries에 지정된 위치(미터) 데이터(timeseries 객체)와 velocitytimeseries에 지정된 속도(미터/초) 데이터(timeseries 객체)를 사용하여 scenarioSatellite 객체를 추가합니다. 이 함수는 OrbitPropagator="ephemeris"를 사용하여 Satellite를 생성합니다.

satellite(___,Name,Value)는 위에 열거된 구문의 입력 인수 조합 외에도 하나 이상의 이름-값 인수를 사용하여 옵션을 지정합니다.

sat = satellite(___)는 추가된 위성에 대한 핸들 벡터를 반환합니다. 위에 열거된 구문의 입력 인수와 인수 조합하여 지정할 수 있습니다.

참고

satelliteScenarioAutoSimulate 속성이 false인 경우, SimulationStatusNotStarted인 경우에만 satellite를 수정할 수 있습니다. restart 함수를 사용하여 SimulationStatusNotStarted로 재설정할 수 있지만, 이렇게 하면 시뮬레이션 데이터가 지워집니다.

예제

모두 축소

satellite scenario 객체를 만듭니다.

sc = satelliteScenario;

위성 ephemeris 타임테이블을 ECEF(지구중심고정) 좌표 프레임으로 불러옵니다.

load("timetableSatelliteTrajectory.mat","positionTT","velocityTT");

시나리오에 4개의 위성을 추가합니다.

sat = satellite(sc,positionTT,velocityTT,"CoordinateFrame","ecef");

위성의 궤적을 시각화해보세요.

play(sc);

위성 시나리오를 만들고 위도, 경도로부터 지상국을 추가합니다.

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);

케플러 요소를 사용하여 위성을 추가합니다.

semiMajorAxis = 10000000;
eccentricity = 0;
inclination = 10; 
rightAscensionOfAscendingNode = 0; 
argumentOfPeriapsis = 0; 
trueAnomaly = 0; 
sat = satellite(sc,semiMajorAxis,eccentricity,inclination, ...
        rightAscensionOfAscendingNode,argumentOfPeriapsis,trueAnomaly);

시나리오에 액세스 분석을 추가하고 위성과 지상국 사이의 액세스 구간 테이블을 구합니다.

ac = access(sat,gs);
intvls = accessIntervals(ac)
intvls=8×8 table
       Source              Target          IntervalNumber         StartTime                EndTime           Duration    StartOrbit    EndOrbit
    _____________    __________________    ______________    ____________________    ____________________    ________    __________    ________

    "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(sc)

시작 시간을 2020년 6월 2일 오전 8:23:00 UTC로 설정하고 종료 시간을 하루 뒤로 설정한 위성 시나리오를 만듭니다. 시뮬레이션 샘플 시간을 60초로 지정합니다.

startTime = datetime(2020,6,02,8,23,0);
stopTime = startTime + days(1);
sampleTime = 60;
sc = satelliteScenario(startTime,stopTime,sampleTime);

케플러 요소를 사용하여 시나리오에 두 개의 위성을 추가합니다.

semiMajorAxis = [10000000;15000000];
eccentricity = [0.01;0.02];
inclination = [0;10];
rightAscensionOfAscendingNode = [0;15];
argumentOfPeriapsis = [0;30];
trueAnomaly = [0;20];

sat = satellite(sc,semiMajorAxis,eccentricity,inclination, ...
    rightAscensionOfAscendingNode,argumentOfPeriapsis,trueAnomaly)
sat = 
  1x2 Satellite array with properties:

    Name
    ID
    ConicalSensors
    Gimbals
    Transmitters
    Receivers
    Accesses
    GroundTrack
    Orbit
    OrbitPropagator
    MarkerColor
    MarkerSize
    ShowLabel
    LabelFontColor
    LabelFontSize

궤도에 있는 위성과 지상 궤적을 한 시간 동안 봅니다.

show(sat)
groundTrack(sat,LeadTime=3600)
ans=1×2 object
  1×2 GroundTrack array with properties:

    LeadTime
    TrailTime
    LineWidth
    LeadLineColor
    TrailLineColor
    VisibilityMode

시나리오를 재생하고 시뮬레이션의 애니메이션 속도를 40으로 설정합니다.

play(sc,PlaybackSpeedMultiplier=40)

위성 시나리오를 설정합니다.

startTime = datetime(2021,8,5);
stopTime = startTime + days(1);
sampleTime = 60;                                      % seconds
sc = satelliteScenario(startTime,stopTime,sampleTime);

SEM almanac 파일에서 시나리오에 위성을 추가합니다.

sat = satellite(sc,"gpsAlmanac.txt","OrbitPropagator","gps");

GPS 위성군을 시각화합니다.

v = satelliteScenarioViewer(sc);

CCSDS(Consultative Committee for Space Data Systems) OMM(Orbit Mean-Elements Message) 파일의 위성을 위성 시나리오에 추가합니다.

위성 시나리오를 만듭니다. OMM 파일에 정의된 Epoch를 시나리오의 시작 시간으로 사용합니다(기본 동작).

startTime = datetime(2020,5,10,0,0,0);
stopTime = startTime + days(1);
sampleTime = 60; % seconds
sc = satelliteScenario(startTime,stopTime,sampleTime);

OMM 파일 eccentricOrbitSatellite.xml의 위성을 시나리오 sc에 추가합니다. OMM 메타데이터에 제공된 기본 이름을 사용하세요.

sat1 = satellite(sc, "eccentricOrbitSatellite.xml")
sat1 = 
  Satellite with properties:

                  Name:  Satellite 41
                    ID:  1
        ConicalSensors:  [1x0 matlabshared.satellitescenario.ConicalSensor]
               Gimbals:  [1x0 matlabshared.satellitescenario.Gimbal]
          Transmitters:  [1x0 satcom.satellitescenario.Transmitter]
             Receivers:  [1x0 satcom.satellitescenario.Receiver]
              Accesses:  [1x0 matlabshared.satellitescenario.Access]
               Eclipse:  [1x0 Aero.satellitescenario.Eclipse]
           GroundTrack:  [1x1 matlabshared.satellitescenario.GroundTrack]
                 Orbit:  [1x1 matlabshared.satellitescenario.Orbit]
        CoordinateAxes:  [1x1 matlabshared.satellitescenario.CoordinateAxes]
       OrbitPropagator:  sdp4
           MarkerColor:  [0.059 1 1]
            MarkerSize:  6
             ShowLabel:  true
        LabelFontColor:  [1 1 1]
         LabelFontSize:  15
         Visual3DModel:  
    Visual3DModelScale:  1

위성을 시각화하세요.

v = satelliteScenarioViewer(sc);

Scenario viewer output with Satellite 41

시나리오를 재생하세요.

play(sc);

입력 인수

모두 축소

위성 시나리오로, satelliteScenario 객체로 지정됩니다.

TLE(Two-line element ), Orbit Mean-Elements Message(OMM)(.xml 또는 .json) 또는 SEM almanac 파일로, 문자형 벡터 또는 string형 스칼라로 지정됩니다. 해당 파일은 MATLAB® 경로상의 폴더 내에 존재하는 현재 폴더에 있어야 하며, 그렇지 않으면 파일에 대한 전체 경로나 상대 경로를 포함해야 합니다.

TLE 파일에 대한 자세한 내용은 TLE(Two Line Element) 파일 항목을 참조하십시오. SEM almanac 파일 및 OMM 파일에 대한 자세한 내용은 OMM(Orbit Mean-Elements Message) 파일 항목을 참조하십시오.

데이터형: char | string

rinexread (Navigation Toolbox)에서 출력되는 RINEX 내비게이션 메시지로, 구조체로 지정됩니다. 내비게이션 메시지는 GPS 또는 갈릴레오 위성군에 속해야 합니다.

RINEXdata에 동일한 위성에 대한 여러 항목이 포함되어 있고 StartTime 또는 scenario가 기본값을 사용하는 경우 가장 이른 시간에 해당하는 항목이 사용됩니다. StartTime가 명시적으로 지정된 경우 StartTime에 가장 가까운 항목이 사용됩니다.

데이터형: struct

참고

이 인수에는 Navigation Toolbox™가 필요합니다.

GCRF에 정의된 케플러 요소로, 벡터가 쉼표로 구분된 목록으로 지정됩니다. 케플러 요소는 다음과 같습니다.

  • semimajoraxis – 이 벡터는 위성 궤도의 장반경 축을 정의합니다. 각 값은 궤도의 가장 긴 지름의 절반과 같습니다.

  • eccentricity – 이 벡터는 위성 궤도의 모양을 정의합니다.

  • inclination – 이 벡터는 [0,180] 범위 내 각 위성에 대해 궤도 평면과 GCRF의 xy 평면 사이의 각도를 정의합니다.

  • RAAN (right ascension of ascending node: 승교점의 적경) – 이 요소는 [0,360] 범위에 있는 각 위성의 지구 질량 중심에서 볼 때 GCRF의 xy 평면과 승교점 방향 사이의 각도를 정의합니다. 승교점 노드는 궤도가 GCRF의 xy 평면을 교차하고 평면 위로 올라가는 위치입니다.

  • argofperiapsis (근점의 인수) – 이 벡터는 지구 질량 중심에서 [0,360) 범위에서 볼 때 승교점 방향과 근점(periapsis) 사이의 각도를 정의합니다. 근점은 각 위성의 궤도상에서 지구 질량 중심에 가장 가까운 위치입니다.

  • trueanomaly – 이 벡터는 [0,360] 범위에 있는 각 위성의 지구 질량 중심에서 볼 때 근점(periapsis) 방향과 위성의 현재 위치 사이의 각도를 정의합니다.

타원 궤도의 경우 semimajoraxis를 양수로 설정하고 eccentricity를 [0,1) 범위로 설정합니다.

포물선 및 쌍곡선 궤도의 경우 semimajoraxis를 음수로 설정하고, 포물선 궤도의 경우 eccentricity를 1로 설정하고, 쌍곡선 궤도의 경우 1보다 큰 값으로 설정합니다.

세 가지 궤도 유형 모두에 대해 inclination를 [0,180] 범위로 설정하고 다른 모든 각도는 [0,360) 범위로 설정합니다.

참고

지정된 범위를 벗어나 정의된 모든 각도는 허용 범위 내의 해당 값으로 자동 변환됩니다.

케플러 요소에 대한 자세한 내용은 궤도 요소를 참조하세요.

미터 단위의 위치 테이블로, timetable 함수나 table 함수를 사용하여 생성된 타임테이블로 지정됩니다. positiontable에는 단조 증가하는 rowTimes 열(datetime 또는 duration)이 정확히 하나 있으며 다음 중 하나입니다.

  • 하나 이상의 변수 열로, 각 열에는 각 위성의 시간 경과에 따른 데이터가 포함됩니다.

  • 하나의 2차원 데이터 열로, 한 차원의 길이는 3이어야 하고 나머지 차원은 ephemeris에 있는 위성의 개수를 정의합니다.

  • 하나의 3차원 데이터 열로, 한 차원의 길이는 3이고 한 차원은 한원소이어야 하고 나머지 차원은 ephemeris에 있는 위성의 개수를 정의합니다.

rowTimes 값이 duration 유형인 경우 시간 값은 현재 시나리오 StartTime 속성을 기준으로 측정됩니다. 이름을 입력으로 제공하지 않으면 기본적으로 타임테이블 VariableNames 속성이 사용됩니다. CoordinateFrame 이름-값 인수가 제공되지 않는 한 위성 상태는 GCRF에 있는 것으로 간주됩니다. positiontable의 시간 범위를 벗어나는 시나리오 시간 스텝에 대해서는 GCRF에서 상태가 일정하게 유지됩니다.

데이터형: table | timetable

미터/초 단위의 속도 데이터로, timetable 함수나 table 함수를 사용하여 만든 타임테이블로 지정됩니다. velocitytable에는 단조 증가하는 rowTimes 열(datetime 또는 duration)이 정확히 하나 있으며 다음 중 하나입니다.

  • 하나 이상의 변수 열로, 각 열에는 각 위성의 시간 경과에 따른 데이터가 포함됩니다.

  • 하나의 2차원 데이터 열로, 한 차원의 길이는 3이어야 하고 나머지 차원은 ephemeris에 있는 위성의 개수를 정의합니다.

  • 하나의 3차원 데이터 열로, 한 차원의 길이는 3이고 한 차원은 한원소이어야 하고 나머지 차원은 ephemeris에 있는 위성의 개수를 정의합니다.

rowTimes 값이 duration 유형인 경우 시간 값은 현재 시나리오 StartTime 속성을 기준으로 측정됩니다. 이름을 입력하지 않으면 기본적으로 타임테이블 VariableNames가 사용됩니다. CoordinateFrame 이름-값 인수가 제공되지 않는 한 위성 상태는 GCRF에 있는 것으로 간주됩니다. velocitytable의 시간 범위를 벗어나는 시나리오 시간 스텝에 대한 상태는 GCRF에서 일정하게 유지됩니다.

데이터형: table | timetable

미터 단위의 위치 데이터로, timeseries 객체 또는 tscollection 객체로 지정됩니다.

  • timeseries 또는 tscollection 객체의 Data 속성이 두 개의 차원을 갖는 경우, 한 차원은 3과 같아야 하고, 다른 차원은 시간 벡터의 방향에 맞춰야 합니다.

  • timeseries 또는 tscollectionData 속성이 3차원인 경우, 한 차원은 3과 같아야 하며, 첫 번째 또는 마지막 차원은 시간 벡터의 방향에 맞춰야 하고, 나머지 차원은 ephemeris에 있는 위성의 수를 정의합니다.

    timeseries.TimeInfo.StartDate가 비어 있으면 시간 값은 현재 시나리오 StartTime 속성을 기준으로 측정됩니다. 이름이 입력으로 제공되지 않으면 기본적으로 timeseries Name 속성이 정의되어 있는 경우 해당 속성이 사용됩니다. CoordinateFrame 이름-값 쌍이 제공되지 않는 한 위성 상태는 GCRF에 있는 것으로 간주됩니다. positiontimeseries의 시간 범위를 벗어나는 시나리오 시간 스텝에 대한 상태는 GCRF에서 일정하게 유지됩니다.

데이터형: timeseries | tscollection

미터/초 단위의 속도 데이터로, timeseries 객체 또는 tscollection 객체로 지정됩니다.

  • timeseries 또는 tscollection 객체의 Data 속성이 두 개의 차원을 갖는 경우, 한 차원은 3과 같아야 하고, 다른 차원은 시간 벡터의 방향에 맞춰야 합니다.

  • timeseries 또는 tscollectionData 속성이 3차원인 경우, 한 차원은 3과 같아야 하며, 첫 번째 또는 마지막 차원은 시간 벡터의 방향에 맞춰야 하고, 나머지 차원은 ephemeris에 있는 위성의 수를 정의합니다.

    timeseries.TimeInfo.StartDate가 비어 있으면 시간 값은 현재 시나리오 StartTime 속성을 기준으로 측정됩니다. 이름이 입력으로 제공되지 않으면 기본적으로 timeseries Name 속성이 정의되어 있는 경우 해당 속성이 사용됩니다. CoordinateFrame 이름-값 쌍이 제공되지 않는 한 위성 상태는 GCRF에 있는 것으로 간주됩니다. velocitytimeseries의 시간 범위를 벗어나는 시나리오 시간 스텝에 대한 상태는 GCRF에서 일정하게 유지됩니다.

데이터형: timeseries | tscollection

이름-값 인수

모두 축소

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

예: Name = 'MySatellite'는 위성 이름을 'MySatellite'로 설정합니다.

위성 상태 좌표 프레임으로, 'CoordinateFrame'와 다음 값 중 하나가 쉼표로 구분된 쌍으로 지정됩니다.

  • "inertial"timeseries 또는 timetable 데이터의 경우 이 값을 지정하면 GCRF 프레임의 위치와 속도를 받습니다.

  • "ecef"timeseries 또는 timetable 데이터의 경우 이 값을 지정하면 ECEF 프레임의 위치와 속도를 받습니다.

  • "geographic"timeseries 또는 timetable 데이터의 경우 이 값을 지정하면 위치 [lat, lon, altitude]를 받습니다. 여기서 latlon는 위도와 경도(도)이고, altitude는 WGS 84(World Geodetic System 84) 타원체 위의 높이(미터)입니다.

    속도는 로컬 NED 프레임입니다.

종속성

  • 이 이름 값 인수를 활성화하려면 ephemeris 데이터 입력(timetable 또는 timeseries)을 사용합니다.

  • file가 OMM 파일인 경우 이 인수는 무시됩니다.

데이터형: string | char

GPS week epoch로, "dd-Mmm-yyyy" 또는 'dd-Mmm-yyyy' 형식의 날짜 문자열로 지정됩니다. GPS 주 번호는 SEM almanac 파일에 정의된 주를 계산할 때 함수가 사용하는 기준 날짜를 지정합니다. GPSweekepoch를 지정하지 않으면 이 함수는 시작 시간 전의 최신 GPS 주 번호 롤오버 날짜와 일치하는 날짜를 사용합니다.

이 인수는 SEM almanac 파일을 사용하는 경우에만 적용됩니다. GPSweekepoch를 지정하고 SEM almanac 파일을 사용하지 않는 경우, 이 함수는 인수 값을 무시합니다.

종속성

file가 OMM 파일인 경우 이 인수는 무시됩니다.

데이터형: string | char

위성 시나리오 뷰어로, satelliteScenarioViewer 객체로 구성된 스칼라, 벡터 또는 배열로 지정됩니다. 시나리오의 AutoSimulate 속성이 false인 경우, 시나리오에 위성을 추가하면 이전에 사용 가능했던 타임라인 및 재생 위젯이 비활성화됩니다.

이 속성은 satellite 함수를 호출할 때만 설정할 수 있습니다. satellite 함수를 호출한 후에는 이 속성은 읽기 전용입니다.

위성 이름으로, 'Name'과 함께 string형 스칼라, string형 벡터, 문자형 벡터, 또는 문자형 벡터로 구성된 셀형 배열 중 하나가 쉼표로 구분되어 지정됩니다.

  • 위성을 하나만 추가하는 경우 Name을 string형 스칼라나 문자형 벡터로 지정합니다.

  • 위성을 여러 개 추가하는 경우 Name을 string형 스칼라, 문자형 벡터, string형 벡터, 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다. string형 스칼라나 문자형 벡터로 추가된 모든 위성에는 동일한 지정된 이름이 할당됩니다. string형 벡터나 문자형 벡터로 구성된 셀형 배열의 요소 개수는 추가되는 위성의 개수와 같아야 합니다. 각 위성에는 벡터나 셀형 배열에서 해당하는 이름이 할당됩니다.

위성 시나리오에 위성을 추가할 때의 디폴트 값은 다음과 같습니다.

  • 케플러 궤도 요소, TLE 파일 사용 시 — "Satellite ID", 여기서 ID는 위성 시나리오가 할당합니다.

  • SEM almanac 파일이나 RINEX GPS 내비게이션 데이터 사용 시 — "PRN:prnValue", 여기서 prnValue는 SEM almanac 파일에 지정된 대로 위성의 의사 랜덤 잡음(pseudorandom noise) 코드를 나타내는 정수입니다.

  • RINEX Galileo 내비게이션 데이터 사용 시 — "GAL Sat IF: id", 여기서 "id"는 RINEX 내비게이션 데이터에 정의된 Galileo 위성의 위성 ID입니다.

  • 타임테이블 - timetable 객체의 변수 이름입니다.

  • 시계열 - timeseries 객체의 이름이 채워진 경우 해당 이름, 그렇지 않은 경우 "Satellite ID"(ID는 위성 시나리오가 할당함)입니다.

데이터형: string

satellite 객체 생성 시 이 속성을 설정할 수 있으며, 설정하면 이 속성은 읽기 전용이 됩니다.

위성 위치와 속도를 전파하는 데 사용되는 궤도 전파기의 이름으로, 다음 옵션 중 하나로 지정됩니다.

  • timetable형, table형, timeseries또는 tscollection을 사용하여 위성을 지정하는 경우 OrbitPropagator 값은 "ephemeris"입니다.

  • SEM almanac 파일이나 GPS 내비게이션 메시지를 포함하는 RINEX 데이터를 사용하여 위성을 지정하는 경우 OrbitPropagator 값은 다음 옵션 중 하나를 가질 수 있습니다.

    • "gps"(디폴트 값)

    • "sgp4"

    • "sdp4"

    • "two-body-keplerian"

    • "numerical"

  • Galileo 내비게이션 메시지를 포함하는 RINEX 데이터를 사용하여 위성을 지정하는 경우 OrbitPropagator 값은 다음 옵션 중 하나를 가질 수 있습니다.

    • "galileo"(디폴트 값)

    • "sgp4"

    • "sdp4"

    • "two-body-keplerian"

    • "numerical"

  • 케플러 요소를 사용하여 위성을 지정하는 경우 OrbitPropagator 값은 다음 옵션 중 하나를 가질 수 있습니다.

    • "two-body-keplerian"

    • "sgp4"

    • "sdp4"

    • "numerical"

    또한 장반경이 음수인 경우 OrbitPropagator 값은 "numerical"만 될 수 있습니다. 장반경이 양수인 경우 디폴트 값은, 주기가 225분 미만이면 "sgp4"이고 주기가 225분 이상이면 "sdp4"입니다.

  • TLE 파일이나 OMM 파일을 사용하여 위성을 지정하는 경우 OrbitPropagator 값은 다음 옵션 중 하나를 가질 수 있습니다.

    • "two-body-keplerian"

    • "sgp4"

    • "sdp4"

    • "numerical"

    궤도 주기가 225분 미만인 경우 디폴트 OrbitPropagator 값은 "sgp4"입니다. 그렇지 않으면 디폴트 OrbitPropagator 값은 "sdp4"입니다.

  • Keplerian 요소를 사용하여 위성을 지정하는 경우 OrbitPropagator 값은 다음 옵션 중 하나를 가질 수 있습니다.

    • "two-body-keplerian"

    • "sgp4"

    • "sdp4"

RINEX 데이터에 유효한 GPS와 갈릴레오 내비게이션 메시지가 모두 포함되어 있는 경우 이름-값 인수를 사용하여 OrbitPropagator"gps""galileo"로 지정할 수 없습니다. 그러나 "two-body-keplerian", "sgp4", "sdp4" 또는 "numerical"로 지정할 수는 있습니다.

뷰어에서 렌더링할 시각적 3차원 모델 파일의 이름으로, 확장자가 .GLTF, .GLB 또는 .STL인 string형으로 지정됩니다. GLB 모델과 GLTF 모델의 경우 gITF는 오른손 좌표계를 사용합니다. gITF는 +Y를 위쪽, +Z를 앞쪽, -X를 오른쪽으로 정의합니다. gITF 에셋은 +Z를 향합니다. 자세한 내용은 https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#coordinate-system-and-units 항목을 참조하십시오. GLB의 메시 단위는 미터입니다.

3-D model of a small satellite

데이터형: string

뷰어에서 렌더링되는 시각적 3차원 모델의 선형 스케일링으로, 음이 아닌 정수로 지정됩니다. 스케일링은 GLB 모델의 단위가 미터라고 가정합니다.

데이터형: double

출력 인수

모두 축소

시나리오 속의 위성으로, scenario로 지정된 위성 시나리오에 속하는 Satellite 객체로 반환됩니다.

속성 값을 변경하여 Satellite 객체를 수정할 수 있습니다.

버전 내역

R2021a에 개발됨

모두 확장