メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

時間変動衛星リンク バジェット アナライザーにカスタムシナリオをインポートする

R2024b 以降

この例では、以下の方法を説明します。

  • satelliteScenario オブジェクトを使用してカスタマイズされたシナリオをモデル化します。

  • シナリオを 衛星リンク バジェット アナライザー アプリにインポートして、時間変動リンク バジェット解析を実行します。

  • インポートされたシナリオ内のリンクを作成および削除します。

この例では、2 行要素 ( TLE ) ファイルから 3 つの衛星が追加され、アップリンクとダウンリンク方向の両方でリンクが定義されたシナリオをモデル化します。シナリオ オブジェクトを MAT ファイルに保存し、それを衛星リンク バジェット アナライザー アプリにインポートして、時間によって変化するリンク バジェットを解析できます。あるいは、MATLAB ™ ワークスペースからカスタム シナリオを直接インポートすることもできます。

衛星シナリオの作成

開始時刻が 2020 年 6 月 2 日午前 8 時 23 分 UTC、終了時刻が 5 時間後の衛星シナリオを作成します。シミュレーションのサンプル時間を 60 秒に設定します。

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

シナリオに衛星を追加する

threeSatelliteConstellation TLEファイルからシナリオに衛星を追加します。

sat = satellite(sc,"threeSatelliteConstellation.tle");

衛星にジンバルを追加する

各衛星にジンバルを追加します。衛星とは独立してジンバルを操縦できます。

この例では、ジンバルにより、衛星1 の受信アンテナを地上局1 に向け、衛星2 の送信アンテナを地上局2 に向けることができます。

gimbalrxSat1 = gimbal(sat(1));
gimbaltxSat2 = gimbal(sat(2));

ジンバルに受信機と送信機を追加する

衛星1のジンバルに受信機を追加します。

gainToNoiseTemperatureRatio = 5;                                  % dB/K
systemLoss = 3;                                                   % dB
rxSat1 = receiver(gimbalrxSat1,Name="Satellite 1 Receiver", ...
    GainToNoiseTemperatureRatio=gainToNoiseTemperatureRatio, ...
    SystemLoss=systemLoss);

衛星 2のジンバルに送信機を追加します。

frequency = 27e9;                                                     % Hz
power = 20;                                                           % dBW
bitRate = 20;                                                         % Mbps
systemLoss = 3;                                                       % dB
txSat2 = transmitter(gimbaltxSat2,Name="Satellite 2 Transmitter", ...
    Frequency=frequency,power=power,BitRate=bitRate, ...
    SystemLoss=systemLoss);

衛星のアンテナ仕様を定義します。

dishDiameter = 0.5;                                    % m
apertureEfficiency = 0.5;
gaussianAntenna(rxSat1,DishDiameter=dishDiameter, ...
    ApertureEfficiency=apertureEfficiency);
gaussianAntenna(txSat2,DishDiameter=dishDiameter, ...
    ApertureEfficiency=apertureEfficiency);

地上局を追加する

地上局1 と地上局2 を追加します。

gs1 = groundStation(sc,Name="Ground Station 1");  % Default location
latitude = -35.40139;                             % degrees
longitude = 148.98167;                            % degrees
gs2 = groundStation(sc,latitude,longitude, ...
    Name="Ground Station 2");

各地上局にジンバルを追加

地上局にジンバルを追加します。これらのジンバルにより、地上局のアンテナを衛星に向けることができます。

gimbalgs1 = gimbal(gs1);
gimbalgs2 = gimbal(gs2);

地上局ジンバルに送信機と受信機を追加する

地上局gs1に送信機を追加します。

frequency = 30e9;                                                       % Hz
power = 40;                                                             % dBW
bitRate = 20;                                                           % Mbps
txGs1 = transmitter(gimbalgs1,Name="Ground Station 1 Transmitter", ...
    Frequency=frequency,Power=power,BitRate=bitRate);

地上局gs2に受信機を追加します。

requiredEbNo = 14;                                               % dB
rxGs2 = receiver(gimbalgs2,Name="Ground Station 2 Receiver", ...
    RequiredEbNo=requiredEbNo);

地上局のアンテナ仕様を定義します。

dishDiameter = 5;                                % m
gaussianAntenna(txGs1,DishDiameter=dishDiameter);
gaussianAntenna(rxGs2,DishDiameter=dishDiameter);

ジンバルのトラッキングターゲットを設定する

最高のリンク品質を得るには、アンテナがそれぞれのターゲットに継続的に向けられている必要があります。ジンバルを親 (衛星または地上局) から独立して操縦し、他の衛星や地上局を追跡するように設定できます。pointAt を使用して、ジンバルのトラッキングターゲットを次のように設定します。

  • 地上局1の送信アンテナは衛星1に向けられている

  • 衛星1号機の受信アンテナは地上局1に向けられている

  • 衛星2号機の送信アンテナは地上局2に向けられている。

  • 地上局2の受信アンテナは衛星2に向けられている

pointAt(gimbalgs1,sat(1));
pointAt(gimbalrxSat1,gs1);
pointAt(gimbaltxSat2,gs2);
pointAt(gimbalgs2,sat(2));

リンク解析を追加

gs1 と衛星1 の間にアップリンクを作成します。

uplink = link(txGs1,rxSat1);

衛星2 と gs2 の間にダウンリンクを作成します。

downlink = link(txSat2,rxGs2);

衛星リンク バジェット アナライザーアプリへのシナリオのインポート

アプリを起動し、時間変動リンク バジェットアナライザー オプションを選択します。これにより、時間変動リンク バジェットアナライザー アプリのデフォルト構成が開きます。

ツールストリップで、シナリオのインポート ボタンをクリックし、次を選択します。

  • MAT ファイルからシナリオ オブジェクトをインポート して、MAT ファイルからサテライト シナリオをインポートします。

まず、保存関数を使用して、すべてのカスタム シナリオ変数を現在のフォルダー内のファイル importScenarioExample.mat に保存します。

save("importScenarioExample.mat","sc");

次に、MAT ファイルからシナリオ オブジェクトをインポート をクリックし、このファイル名を選択してカスタム シナリオをインポートします。

  • ワークスペースからシナリオ オブジェクトをインポート して、ワークスペースから直接サテライト シナリオをインポートします。

この図は、カスタム シナリオをインポートした後の更新されたアプリ構成を示しています。

custom_scenario.png

リンクの追加/削除

ツールストリップの シナリオの編集 セクションにある リンクの作成 または 削除 ボタンを使用して、送信機と受信機間のリンクを追加または削除します。

参考

アプリ

オブジェクト

関数