このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
satelliteScenario
説明
satelliteScenario オブジェクトは、衛星、地上局、およびそれらの相互作用から構成される 3D アリーナを表します。このオブジェクトを使用して、衛星コンステレーションをモデル化し、地上局ネットワークをモデル化し、衛星と地上局間のアクセス解析を実行し、結果を可視化します。
作成
構文
説明
はデフォルトの衛星シナリオ オブジェクトを作成します。sc = satelliteScenario
は、sc = satelliteScenario(startTime,stopTime,sampleTime)StartTime、StopTime、SampleTime プロパティをそれぞれ startTime、stopTime、sampleTime の値に設定します。
は sc = satelliteScenario(___,'AutoSimulate',false)AutoSimulate プロパティを指定された値に設定します。
プロパティ
衛星シナリオシミュレーションの開始時刻(UTC)。datetime スカラーとして指定します。
シナリオに衛星が存在しない場合は、デフォルトの StartTime は現在の UTC 時間になります。それ以外の場合は、
現在の UTC 時間。
TLEファイルで定義された元期。
SEM ファイルで定義されたGPS週番号から推定された参照時間。
GPSと Galileo の RINEX ナビゲーション データから推定された最も古い時間。
時刻表と時系列の最初の時刻。
StartTime、StopTime、または SampleTime プロパティが明示的に指定されている場合、StartTime プロパティは衛星の追加によって更新されなくなります。
AutoSimulate プロパティが false の場合、SimulationStatus が NotStarted の場合にのみ StartTime プロパティを変更できます。restart 関数を使用して SimulationStatus を NotStarted にリセットできますが、これを行うとシミュレーション データが消去されます。
データ型: datetime
衛星シナリオシミュレーションの終了時刻(UTC)。datetime スカラーとして指定します。デフォルトの StopTime は、シナリオ内の衛星の中で最も長い軌道周期である StartTime になります。シナリオに衛星が追加されていない場合、デフォルトの StopTime はデフォルトの StartTime と同じになります。StartTime、StopTime、または SampleTime プロパティが明示的に指定されている場合、StopTime プロパティは衛星の追加によって更新されなくなります。
AutoSimulate プロパティが false の場合、SimulationStatus が NotStarted の場合にのみ StopTime プロパティを変更できます。restart 関数を使用して SimulationStatus を NotStarted にリセットできますが、これを行うとシミュレーション データが消去されます。
データ型: datetime
衛星シナリオシミュレーションのサンプル時間。実数値のスカラーとして指定されます。デフォルトのサンプル時間は、StartTime と StopTime の間に 100 個のサンプルがあるように設定されています。デフォルトの StartTime と StopTime が同じ場合 (シナリオに衛星が追加されていない場合)、デフォルトの SampleTime は 60 秒になります。StartTime、StopTime、または SampleTime プロパティが明示的に指定されている場合、SampleTime プロパティは衛星の追加によって更新されなくなります。
AutoSimulate プロパティが false の場合、SimulationStatus が NotStarted の場合にのみ SampleTime プロパティを変更できます。restart 関数を使用して SimulationStatus を NotStarted にリセットできますが、これを行うとシミュレーション データが消去されます。
データ型: double
この プロパティ は読み取り専用です。
衛星シナリオシミュレーションの現在のシミュレーション時間(UTC)。datetime スカラーとして指定されます。restart 関数を呼び出して、時間を StartTime にリセットします。
依存関係
このプロパティを有効にするには、AutoSimulate を false に設定します。
データ型: datetime
この プロパティ は読み取り専用です。
衛星シナリオのシミュレーション ステータス。次のいずれかとして指定されます。
'NotStarted'—advance関数が呼び出されていません'InProgress'— シミュレーション実行中'Completed'— シミュレーションが終了しました
シミュレーションは、advance 関数が最初に呼び出されたときに開始されます。シミュレーションは、次のいずれかが発生するまで続行されます。
シミュレーションは
StopTimeに到達します。衛星シナリオに新しいアセットが追加されます。
アセットの特定のプロパティ (衛星、地上局、ジンバル、コニカル センサーなど) が変更されました (
MountingLocationやMountingAnglesなど)。プロパティを参照して、プロパティを変更するとシミュレーションを停止できるかどうかを判断します。
restart 関数を呼び出してシミュレーションを再起動し、シミュレーション データを消去し、SimulationStatus を NotStarted に設定します。
依存関係
このプロパティを有効にするには、AutoSimulate を false に設定します。
衛星シナリオを自動的にシミュレートするオプション。数値または論理値のいずれかとして指定します。
1(true) —statesやaccessIntervalsなどの解析関数を呼び出すたびに、衛星シナリオを自動的にシミュレートします。0(false) —advance関数を呼び出すことによってのみ衛星シナリオをシミュレートします。
AutoSimulate 値を変更すると、以前のシミュレーション データが消去されます。
データ型: double
シナリオ内の地上局。GroundStation オブジェクトの行ベクトルとして返されます。GroundStation オブジェクトを作成して衛星シナリオに追加するには、groundStation オブジェクト関数を使用します。シナリオに地上局を追加すると、このプロパティは読み取り専用になります。
論理 1 (true) または 0 (false) として指定された、グラフィックを自動的に表示するオプション。このプロパティは、シナリオに追加されたエンティティが開いている satelliteScenarioViewer ウィンドウに自動的に表示されるかどうかを決定します。
衛星シナリオで使用される中心体オプション。スカラー Aero.satellitescenario.CentralBodyOptions (Aerospace Toolbox) オブジェクトとして指定されます。このプロパティは読み取り専用です。
オブジェクト関数
groundStation | 衛星シナリオに地上局を追加する |
satellite | 衛星シナリオに衛星を追加する |
satelliteScenarioViewer | 衛星シナリオのビューアを作成する |
platform | 衛星シナリオにプラットフォームを追加する |
advance | シミュレーションを1サンプル時間分進める |
restart | シミュレーションを最初からやり直す |
play | 衛星シナリオシミュレーション結果をビューアで再生する |
centralBodyOptions (Aerospace Toolbox) | Modify central body options used in satellite scenario |
例
現在のタイムゾーンでの開始時刻を昨日として指定します。シミュレーションは半日続きます。
startTime = datetime("yesterday","TimeZone","local"); stopTime = startTime + days(0.5);
サンプル時間を 60 秒に指定します。開始時間、終了時間、サンプル時間を指定して、衛星シナリオ オブジェクトを作成します。
sampleTime = 60; sc = satelliteScenario(startTime,stopTime,sampleTime)
sc =
satelliteScenario with properties:
StartTime: 31-Jan-2025 05:00:00
StopTime: 31-Jan-2025 17:00:00
SampleTime: 60
AutoSimulate: 1
CentralBodyOptions: [1×1 Aero.satellitescenario.CentralBodyOptions]
Satellites: [1×0 matlabshared.satellitescenario.Satellite]
GroundStations: [1×0 matlabshared.satellitescenario.GroundStation]
Platforms: [1×0 matlabshared.satellitescenario.Platform]
Viewers: [0×0 matlabshared.satellitescenario.Viewer]
AutoShow: 1
開始時刻を 2020 年 6 月 2 日午前 8 時 23 分 UTC に設定し、終了時刻を 1 日後に設定した衛星シナリオを作成します。シミュレーションのサンプル時間を 60 秒に設定します。
startTime = datetime(2020,6,02,8,23,0); stopTime = startTime + days(1); sampleTime = 60; sc = satelliteScenario(startTime,stopTime,sampleTime);
ケプラーの要素を使用して、シナリオに 2 つの衛星を追加します。
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
軌道上の衛星とグラウンド トラックを1 時間にわたって表示します。
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)

衛星シナリオ オブジェクトを作成し、AutoSimulate プロパティを false に設定して、衛星シナリオの手動シミュレーションを有効にします。
sc = satelliteScenario('AutoSimulate',false);シナリオに GPS 衛星コンステレーションを追加します。
sat = satellite(sc,"gpsAlmanac.txt");advance 関数を使用してシナリオをシミュレートします。
while advance(sc) end
衛星の位置履歴を取得します。
p = states(sat);
AutoSimulate は false なので、地上局を追加する前にシナリオを再起動してください。
restart(sc);
シナリオに地上局を追加します。
gs = groundStation(sc);
各衛星と地上局間のアクセス解析を追加します。
ac = access(sat,gs);
シナリオをシミュレートし、アクセス間隔を決定します。
while advance(sc) end intvls1 = accessIntervals(ac)
intvls1=35×8 table
Source Target IntervalNumber StartTime EndTime Duration StartOrbit EndOrbit
________ ___________________ ______________ ____________________ ____________________ ________ __________ ________
"PRN:1" "Ground station 32" 1 11-Jan-2020 23:20:25 12-Jan-2020 05:15:47 21322 NaN NaN
"PRN:2" "Ground station 32" 1 12-Jan-2020 04:03:16 12-Jan-2020 07:48:06 13490 NaN NaN
"PRN:3" "Ground station 32" 1 11-Jan-2020 19:50:06 11-Jan-2020 21:38:53 6527.3 NaN NaN
"PRN:3" "Ground station 32" 2 12-Jan-2020 01:52:43 12-Jan-2020 06:42:49 17406 NaN NaN
"PRN:4" "Ground station 32" 1 11-Jan-2020 19:50:06 12-Jan-2020 00:11:11 15665 NaN NaN
"PRN:4" "Ground station 32" 2 12-Jan-2020 04:54:02 12-Jan-2020 07:48:06 10444 NaN NaN
"PRN:5" "Ground station 32" 1 12-Jan-2020 05:52:03 12-Jan-2020 07:48:06 6962.4 NaN NaN
"PRN:6" "Ground station 32" 1 12-Jan-2020 02:43:29 12-Jan-2020 07:48:06 18276 NaN NaN
"PRN:7" "Ground station 32" 1 11-Jan-2020 21:09:52 12-Jan-2020 03:27:00 22628 NaN NaN
"PRN:8" "Ground station 32" 1 11-Jan-2020 20:33:36 12-Jan-2020 03:19:45 24369 NaN NaN
"PRN:9" "Ground station 32" 1 11-Jan-2020 19:50:06 12-Jan-2020 00:47:27 17841 NaN NaN
"PRN:9" "Ground station 32" 2 12-Jan-2020 05:08:32 12-Jan-2020 07:48:06 9573.3 NaN NaN
"PRN:10" "Ground station 32" 1 12-Jan-2020 00:32:56 12-Jan-2020 01:59:58 5221.8 NaN NaN
"PRN:11" "Ground station 32" 1 11-Jan-2020 22:15:09 12-Jan-2020 04:39:32 23063 NaN NaN
"PRN:12" "Ground station 32" 1 12-Jan-2020 04:32:16 12-Jan-2020 07:48:06 11749 NaN NaN
"PRN:13" "Ground station 32" 1 12-Jan-2020 00:03:56 12-Jan-2020 02:50:44 10008 NaN NaN
⋮
シミュレーション結果を可視化します。
v = satelliteScenarioViewer(sc,'ShowDetails',false);
play(sc);
AutoSimulate プロパティを true に設定した場合、アクセス間隔が同じであることを確認します。
sc.AutoSimulate = true; intvls2 = accessIntervals(ac)
intvls2=35×8 table
Source Target IntervalNumber StartTime EndTime Duration StartOrbit EndOrbit
________ ___________________ ______________ ____________________ ____________________ ________ __________ ________
"PRN:1" "Ground station 32" 1 11-Jan-2020 23:20:25 12-Jan-2020 05:15:47 21322 NaN NaN
"PRN:2" "Ground station 32" 1 12-Jan-2020 04:03:16 12-Jan-2020 07:48:06 13490 NaN NaN
"PRN:3" "Ground station 32" 1 11-Jan-2020 19:50:06 11-Jan-2020 21:38:53 6527.3 NaN NaN
"PRN:3" "Ground station 32" 2 12-Jan-2020 01:52:43 12-Jan-2020 06:42:49 17406 NaN NaN
"PRN:4" "Ground station 32" 1 11-Jan-2020 19:50:06 12-Jan-2020 00:11:11 15665 NaN NaN
"PRN:4" "Ground station 32" 2 12-Jan-2020 04:54:02 12-Jan-2020 07:48:06 10444 NaN NaN
"PRN:5" "Ground station 32" 1 12-Jan-2020 05:52:03 12-Jan-2020 07:48:06 6962.4 NaN NaN
"PRN:6" "Ground station 32" 1 12-Jan-2020 02:43:29 12-Jan-2020 07:48:06 18276 NaN NaN
"PRN:7" "Ground station 32" 1 11-Jan-2020 21:09:52 12-Jan-2020 03:27:00 22628 NaN NaN
"PRN:8" "Ground station 32" 1 11-Jan-2020 20:33:36 12-Jan-2020 03:19:45 24369 NaN NaN
"PRN:9" "Ground station 32" 1 11-Jan-2020 19:50:06 12-Jan-2020 00:47:27 17841 NaN NaN
"PRN:9" "Ground station 32" 2 12-Jan-2020 05:08:32 12-Jan-2020 07:48:06 9573.3 NaN NaN
"PRN:10" "Ground station 32" 1 12-Jan-2020 00:32:56 12-Jan-2020 01:59:58 5221.8 NaN NaN
"PRN:11" "Ground station 32" 1 11-Jan-2020 22:15:09 12-Jan-2020 04:39:32 23063 NaN NaN
"PRN:12" "Ground station 32" 1 12-Jan-2020 04:32:16 12-Jan-2020 07:48:06 11749 NaN NaN
"PRN:13" "Ground station 32" 1 12-Jan-2020 00:03:56 12-Jan-2020 02:50:44 10008 NaN NaN
⋮
シナリオを可視化します。
play(sc);

ヒント
衛星シナリオを保存するときは、シナリオ オブジェクトを含むワークスペース全体を保存するか、シナリオ オブジェクト自体を保存します。
バージョン履歴
R2021a で導入R2024b: 衛星シナリオ:SGP4/ SDP4を Spacetrack レポート #3 の再検討と整合させる
参考
オブジェクト
関数
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.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の 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)