メインコンテンツ

receive

シナリオ内のレーダーからの IQ 信号の受信

説明

sig = receive(scenario) は、scenario 内のレーダーで受信されたターゲット エコー sig を返します。

[sig,info] = receive(scenario) は、信号受信時に各レーダーの構成の構造体配列 info も返します。

[sig,info,pids] = receive(scenario) は、プラットフォーム ID pids の列配列も返します。

すべて折りたたむ

レーダー シナリオにおいて、レーダー トランシーバーを使用して 2 つのプラットフォームからの信号を取得します。データの繰り返し性を確保するため、乱数シードを設定します。

s = rng(0);
scenario = radarScenario('UpdateRate',1);
plat1 = platform(scenario);
plat1.Trajectory.Position = [0,0,0];
plat1.Sensors = radarTransceiver;
plat2 = platform(scenario);
plat2.Trajectory.Position = [1000,0,0];
[sig,sensorConfs] = receive(scenario)
sig = 1×1 cell array
    {100×2 double}

sensorConfs = struct with fields:
              IsScanDone: 0
         MechanicalAngle: 0
         ElectronicAngle: [2×1 double]
          OriginPosition: [3×1 double]
             Orientation: [3×3 double]
      NextRepetitionTime: 1.0000e-04
    ReferenceSensorIndex: 0
                  Sensor: [1×1 radarTransceiver]

プラットフォーム 1 はプラットフォーム 2 からのエコーを受信します。

rgrid = physconst('lightspeed')*(0:size(sig{1},1)-1)/ ...
    (2*sensorConfs.Sensor.Waveform.SampleRate)/1e3;
plot(rgrid,abs(sum(sig{1},2)))
xlabel('Range (km)')
ylabel('Magnitude')

Figure contains an axes object. The axes object with xlabel Range (km), ylabel Magnitude contains an object of type line.

入力引数

すべて折りたたむ

レーダー シナリオ。radarScenario オブジェクトとして指定します。

出力引数

すべて折りたたむ

レーダー受信機で受信した信号。cell 配列として返されます。cell 配列の各要素は、各レーダーで受信したエコー信号です。

複素数のサポート: あり

レーダー構成。構造体配列として返されます。各構造体には以下のフィールドが含まれています。

  • IsScanDone –– 1 周期の機械的スキャンが完了したかどうか

  • MechanicalAngle –– 機械的スキャンによる現在のアンテナ指向角

  • Origin –– プラットフォーム座標系におけるレーダー位置

  • Orientation –– プラットフォーム座標系におけるレーダー方位軸

データ型: struct

レーダーが取り付けられているプラットフォーム ID。実数値の列ベクトルとして返されます。

データ型: double

バージョン履歴

R2021a で導入