メインコンテンツ

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

slantRangeCircularOrbit

円軌道衛星と地上局間の斜距離距離を計算する

R2024a 以降

    説明

    dist = slantRangeCircularOrbit(el,hs,hg) は、指定された仰角el、衛星高度hs、および地上局高度hg を使用して、円軌道衛星と地上局間の距離をメートル単位で計算します。

    詳細については、斜距離計算を参照してください。

    メモ

    • slantRangeCircularOrbit は地球が球体であると仮定し、地球の自転速度を無視します。

    • slantRangeCircularOrbit では、衛星から地上局へのアクセスまたはリンクが常に可能であることも想定しています。

    • この構文は、形状に関係なく、任意の軌道タイプに適用できます。

    dist = slantRangeCircularOrbit(el,hs,hg,time) は、円軌道衛星と地上局間の距離を計算するための時間インスタンスを指定します。

    詳細については、斜距離計算を参照してください。

    メモ

    この構文では次のことも想定されています。

    • 地上局は北極(正の Z 軸)に位置し、衛星はYZ 平面の第 2 象限にある初期入力仰角el からスタートします。

    • 衛星は円軌道上を時計回りに移動します。

    すべて折りたたむ

    円軌道を移動する衛星の斜距離を計算し、斜距離を仰角の関数としてプロットします。

    衛星高度を10000 km、地上局高度を120 mに設定します。

    hs = 10000e3; % meters
    hg = 120;     % meters

    仰角を0 度から 90 度まで変化させます。

    el = 0:90;   % degrees

    さまざまな仰角に対する斜距離を計算します。

    dist = slantRangeCircularOrbit(el,hs,hg);

    斜距離を仰角の関数としてプロットします。

    figure
    plot(el,dist,"-*")
    title("Slant Range vs Elevation Angle")
    xlabel("Elevation Angle (degrees)")
    ylabel("Slant Range (meters)")
    grid on

    Figure contains an axes object. The axes object with title Slant Range vs Elevation Angle, xlabel Elevation Angle (degrees), ylabel Slant Range (meters) contains an object of type line.

    衛星の 1 軌道周期における斜距離の変化を可視化します。

    衛星の高度を 1500 km、初期仰角を45 度に設定します。地上局の高さは0mと仮定します。

    hs = 1500e3; % meters
    el = 45;     % degrees
    hg = 0;      % meters

    指定された衛星高度1500 km の場合、軌道周期は 6949.518 秒です。1 周回期間をカバーするには、最大時間インスタンスを 6950 秒に設定します。

    time = 0:6950; % seconds

    指定された時間インスタンスの斜距離を計算します。

    dist = slantRangeCircularOrbit(el,hs,hg,time);

    斜距離を時間の関数としてプロットします。

    figure
    plot(time,dist)
    title("Slant Range vs Time")
    xlabel("Time (seconds)")
    ylabel("Slant Range (meters)")
    grid on

    Figure contains an axes object. The axes object with title Slant Range vs Time, xlabel Time (seconds), ylabel Slant Range (meters) contains an object of type line.

    入力引数

    すべて折りたたむ

    衛星の仰角(度単位)。実数のスカラーまたはベクトルとして指定されます。

    この関数は、各仰角を独立した衛星として扱います。仰角の公称範囲は 0 度から 90 度です。ただし、この関数は任意の仰角を受け入れるため、衛星を軌道上の任意の場所に配置できます。

    たとえば、この図は、el 入力が [45 135 225] となるシナリオを示しています。この場合、関数は 3 つの独立した衛星があると想定します。

    • 衛星1、仰角α1 = 45°

    • 衛星2、仰角α2 = 135°

    • 衛星3、仰角α3 = 225°

    Figure shows 3 elevation angles (45, 135, and 225 degrees) where satellites are positioned in orbit. Each elevation angle is considered as a seperate satellite.

    データ型: double

    衛星の高度(メートル単位)。正のスカラーとして指定されます。

    データ型: double

    地上局の高度(メートル単位)。非負のスカラーとして指定されます。

    hghs より小さくなければなりません。

    データ型: double

    円軌道衛星と地上局間の距離を計算する時間インスタンス。実数スカラーまたはベクトルとして指定されます。単位は秒です。

    time の負の値は、衛星の反時計回りの回転を表します。

    time を指定すると、関数は elhs、および hg 入力を 0 秒の初期値として使用します。

    データ型: double

    出力引数

    すべて折りたたむ

    円軌道衛星と地上局間の距離(メートル単位)。スカラー、ベクトル、または行列として返されます。

    el を長さ NumEL のベクトルとして指定し、time を長さ NumTIME のベクトルとして指定すると、dist はサイズが NumELNumTIME 列の行列になります。dist の各行は、対応する仰角の斜距離を表します。

    衛星と地上局間の斜距離は天頂で最も低く、これは で観測できます。

    データ型: double

    詳細

    すべて折りたたむ

    拡張機能

    すべて展開する

    C/C++ コード生成
    MATLAB® Coder™ を使用して C および C++ コードを生成します。

    バージョン履歴

    R2024a で導入