主要内容

多平台雷达探测一代

这个例子展示了如何从一个多平台雷达网络生成雷达探测。该网络包括三个远程平台:两个机载平台和一个地面平台。这种合成数据可用于测试跟踪体系结构对不同目标类型和机动的性能。

雷达平台和目标在场景中建模为平台.场景中平台运动的模拟由trackingScenario

创建一个跟踪场景来管理平台的移动。。scene = trackingScenario;%创建跟踪场景现场。UpdateRate = 0;%使用连续更新速率处理不同更新速率的传感器sceneDuration = 60;%场景持续时间,单位为秒现场。StopTime = sceneDuration;

带有旋转雷达阵列的机载平台

在以650公里/小时的速度向北飞行,巡航高度为10公里的场景中增加一个机载平台。使用路径点生成平台轨迹waypointTrajectory

Ht = 10e3;%海拔(米)SPD = 650*1e3/3600;%速度,单位为m/sstart = [-spd*sceneDuration/2 5e3 -ht];stop = [spd*sceneDuration/2 5e3 -ht];轨迹轨迹(“锚点”(启动、停止),“TimeOfArrival”, (0;sceneDuration]);用它的轨迹创建空中平台。Plat1 =平台(场景,“轨迹”, traj);

在平台上增加一个平面阵列雷达。将雷达安装在平台上方5米的雷达罩内。将雷达建模为机械旋转相控阵。雷达以电子方式沿阵列的视距在仰角上堆叠波束。模型雷达的规格如下表所示:

  • 灵敏度:0 dBsm @ 375 km

  • 机械扫描:仅方位扫描

  • 机械扫描限制:0到360度

  • 电子扫描:仅仰角

  • 电子扫描限制:-2至45度

  • 视野:方位角1度,仰角47度

  • 测量方法:方位角,高程,距离

  • 方位分辨率:1度

  • 仰角分辨率:5度

  • 距离分辨率:30米

用机械旋转雷达建模fusionRadarSensor

sensorIndex = 1;%标识每次检测的原始传感器雷达= fusionRadarSensor(sensorIndex,“旋转”...“MountingLocation”, [0 0 -5],...% m“UpdateRate”, 12.5,...%赫兹“ReferenceRCS”0,...% dBsm“ReferenceRange”375年e3,...% m“ScanMode”“机械和电子”...“MechanicalAzimuthLimits”, [0 360],...%度“MechanicalElevationLimits”, [0 0],...%度“ElectronicAzimuthLimits”, [0 0],...“ElectronicElevationLimits”, [-2 45],...%度“FieldOfView”(1; 47.1),...%度“HasElevation”,真的,...“AzimuthResolution”, 1...%度“ElevationResolution”5,...%度“RangeResolution”30岁的...% m“之内”,真正的);将雷达安装在机载平台上。。plat1。传感器=雷达;

请注意,若要对雷达系统进行建模,则该角度维度的视场应设置为略大于相应机械扫描极限所跨越的值。因此,在本例中,fusionRadarSensor对象的仰角视场设置为47.1度,而根据规范,建模系统的仰角视场为47度。

带有两个雷达阵列的机载平台

在8公里的巡航高度,以550公里/小时的速度向南飞行的场景中增加第二个空中平台。

Ht = 8e3;%海拔(米)SPD = 550*1e3/3600;%速度,单位为m/sstart = [spd*sceneDuration/2 5e3 -ht];stop = [-spd*sceneDuration/2 5e3 -ht];轨迹轨迹(“锚点”(启动、停止),“TimeOfArrival”, (0;sceneDuration]);Plat2 =平台(场景,“轨迹”, traj);

多个传感器可以安装在一个平台上。在平台上方5米处增加一个由两个线性相控阵组成的雷达。安装阵列,使一个阵列看机身的右侧和另一个阵列看机身的左侧。这两个阵列提供覆盖150度方位角扇区在平台的任何一方。仰角不是用线性阵列测量的。该雷达的规格如下表所示:

  • 灵敏度:0 dBsm @ 350公里

  • 机械扫描:无

  • 电子扫描:只有方位

  • 电子扫描限制:-75至75度

  • 视野:方位角1度,仰角60度

  • 测量:方位角,距离

  • 方位分辨率:1度

  • 距离分辨率:30米

线性相控阵雷达的建模fusionRadarSensor

通过将雷达的偏航设置为90度来创建面向右侧的雷达。传感器指数=传感器指数+1;rightRadar = fusionRadarSensor(sensorIndex,“部门”...“MountingLocation”, [0 0 -5],...% m“MountingAngles”, [90 0 0],...% deg,看右边“UpdateRate”, 12.5,...%赫兹“ReferenceRCS”0,...% dBsm“ReferenceRange”350年e3,...% m“ScanMode”“电子”...“ElectronicAzimuthLimits”(-75 75),...%度“FieldOfView”(1; 60),...%度“HasElevation”假的,...“AzimuthResolution”, 1...%度“RangeResolution”30岁的...% m“之内”,真正的);创建一个相同的雷达查看机身左侧。。leftRadar =克隆(右tradar);传感器指数=传感器指数+1;leftRadar。SensorIndex =传感器索引;leftRadar.MountingAngles(1) = -90;看左边将两个线性雷达阵列连接到机载平台上。。plat2。传感器= {leftRadar, rightRadar};

矩形雷达阵列地面平台

增加一个地面雷达,使用一个安装在拖车上方5米的矩形相控阵。雷达使用电子光栅扫描模式电子测量60度方位角跨度和20度仰角高于地面。

  • 灵敏度:0 dBsm @ 350公里

  • 机械扫描:无

  • 电子扫描:方位和仰角

  • 电子扫描限制:-30至30度方位角,-20至0度仰角

  • 视野:方位角1度,仰角5度

  • 测量方法:方位角,高程,距离

  • 方位分辨率:1度

  • 仰角分辨率:5度

  • 距离分辨率:30米

矩形相控阵雷达的建模fusionRadarSensor

创建一个电子扫描矩形阵列雷达。传感器指数=传感器指数+1;雷达= fusionRadarSensor(sensorIndex,“光栅”...“MountingLocation”, [0 0 -5],...% m“UpdateRate”25岁的...%赫兹“ReferenceRCS”0,...% dBsm“ReferenceRange”350年e3,...% m“ScanMode”“电子”...“ElectronicAzimuthLimits”, [-30 30],...%度“ElectronicElevationLimits”, [-20 0],...%度“FieldOfView”(1、5),...%度“HasElevation”,真的,...“AzimuthResolution”, 1...%度“ElevationResolution”5,...%度“RangeResolution”30岁的...% m“之内”,真正的);将矩形雷达阵列安装在拖车平台上。。Plat3 =平台(场景,“传感器”、雷达);plat3.Trajectory。位置= [-30e3 30e3 0];plat3.Trajectory。方位=四元数([-60 0 0],“eulerd”“zyx股票”“帧”);

空中目标

在监视区域内增加四个空中目标。

  1. 在3000米高空以700公里/小时的速度向东北飞行的客机

  2. 在海拔4000米,以900公里/小时的速度向东南方向飞行的穿越客机

  3. 在9000米高空以600公里/小时的速度向东飞行的客机

  4. 飞机以300公里/小时的速度飞行,在3000米高度进行90度转弯

添加飞往东北的客机。Ht = 3e3;%海拔(米)SPD = 700*1e3/3600;%速度,单位为m/s安= 45;腐= [cosd(ang) sind(ang) 0;-sind(ang) cosd(ang) 0;0 0 1];Offset = [-15e3 -25e3 -ht];start = offset - [spd*sceneDuration/2 0 0]*rot;stop = offset + [spd*sceneDuration/2 0 0]*rot;轨迹轨迹(“锚点”(启动、停止),“TimeOfArrival”, (0;sceneDuration]);rcs = rcsSignature(“模式”, [10 10;10 10],...“方位”, [-180 180],“高度”, [-90 90],...“频率”, [0 10e9]);自定义目标的RCS签名平台(场景,“轨迹”traj,“签名”、rcs);增加东南方向的过境客机。Ht = 4e3;%海拔(米)SPD = 900*1e3/3600;%速度,单位为m/s抵消=[(启动(1)+停止(1)/ 2(开始(2)+停止(2))/ 2 ht);start = offset + [0 -spd*sceneDuration/2 0]*rot;stop = offset + [0 spd*sceneDuration/2 0]*rot;轨迹轨迹(“锚点”(启动、停止),“TimeOfArrival”, (0;sceneDuration]);rcs = rcsSignature;%所有视角默认为10 dBsm RCS平台(场景,“轨迹”traj,“签名”、rcs);添加东行客机。Ht = 9e3;%海拔(米)SPD = 600*1e3/3600;%速度,单位为m/sstart = [30e3 -spd*sceneDuration/2-20e3 -ht];stop = [30e3 spd*sceneDuration/2-20e3 -ht];轨迹轨迹(“锚点”(启动、停止),“TimeOfArrival”, (0;sceneDuration]);平台(场景,“轨迹”, traj);%所有视角默认为10 dBsm RCS%增加水平加速度为0.3 G的喷射转向。Ht = 3e3;%海拔(米)SPD = 300*1e3/3600;%速度,单位为m/s加速度= 0.3*9.8;%向心加速度m/s^2半径= spd^2/加速度;%转弯半径,单位为米T0 = 0;T1 = t0+5;T2 = t1+pi/2*半径/spd;t3 = sceneDuration;Start = [0e4 -4e4 -ht];WPS = [...0 0 0;...%开始直段Spd *t1 0 0;...%开始水平转弯Spd *t1+半径半径0;...%水平转弯结束Spd *t1+半径半径+ Spd *(t3-t2) 0];第二段结束轨迹轨迹(“锚点”,开始+ wps,“TimeOfArrival”, (t0;t1;t2;t3]);平台(场景,“轨迹”, traj);

雷达探测的生成

下面的循环将平台和目标位置向前推进,直到场景结束。对于场景中的每一步,将从每个平台生成检测。

trackingScenario可以按固定时间间隔前进或自动确定下次更新时间。设置UpdateRate0trackingScenario确定下一次更新时间。

rng (2018);为可重复的结果设置随机种子创建一个theaterPlot来显示被探测目标和平台的真实和测量位置。theaterDisplay = helperMultiPlatDisplay(场景);标题(“多平台雷达方案”);传奇(“显示”);显示场景的3D视图。视图(-60年,10);记录所有的检测detLog = {};timeLog = [];推进(场景)从每个平台上的雷达生成探测。[dets,configs] =检测(场景);更新显示当前光束位置和检测。theaterDisplay(依据);%记录传感器数据和地面真实值。detLog = [detLog;依据);% #好< AGROW >timeLog = [timeLog;scene.SimulationTime];% #好< AGROW >结束

{

注意来自机载平台的宽波束和来自地面雷达执行光栅扫描的窄波束。您可以在下面的2D视图中可视化地面真相轨迹。四个目标用三角形表示。在x轴上约30公里处是向东行驶的客机(从左到右)。在x轴上约2公里处是喷气机顺时针旋转。再往南是两架穿越的客机。

视图(-90、90);% 2D视图

{

将记录的探测结果与其测量不确定度绘制成图。每种颜色都对应于生成检测的平台。前面显示的图例适用于下面所有的图。注意,雷达会产生假警报,这是远离目标轨迹的探测。

theaterDisplay (detLog);标题([num2str(元素个数(detLog))“记录的检测”num2str(元素个数(timeLog))“模拟步骤”]);传奇(“隐藏”);

{

下面的3D视图显示了这些探测是如何在海拔上分布的。对于带有3D传感器的平台(蓝色和黄色平台),检测紧密跟随目标轨迹。2D-view平台的探测(红色平台)从目标轨迹的仰角偏移,因为它的雷达无法测量仰角。每个检测的1-sigma测量不确定度显示为以测量目标位置为中心的灰色椭球(显示为填充圆)。

视图(25 [-60]);% 3D视图

{

放大喷气执行90度水平转弯。雷达根据雷达的分辨率和每个探测的信噪比(SNR)报告1-sigma测量不确定度。距离较远或信噪比较小的目标比距离较近或信噪比较大的目标具有更大的测量不确定度。请注意,蓝色检测比黄色检测具有更小的测量不确定度。这是因为蓝色探测来自于机载平台(平台1),该平台比产生黄色探测的地面平台(平台3)更接近目标。

xlim(9000年[-3000]);ylim(-32000年[-44000]);zlim(0000年[-12000]);轴(“广场”);标题(“喷射执行水平转弯”);

{

注意从使用两个线性阵列的机载平台(平台2)产生的红色探测高度的巨大不确定性。椭球在距离和方位角方向上有小轴,但在仰角方向上有非常大的轴。这是因为该平台上的线性阵列无法提供仰角估计。在这种情况下,平台雷达报告的探测高度为0度,其高程不确定性与高程视场相对应。

放大两架交叉的客机。带有旋转阵列的蓝色机载雷达产生的探测次数最少(对这两个目标只有4次探测),但这些探测是最精确的(最小的椭圆)。来自该平台的少量探测是由于其雷达的360机械扫描,这限制了其波束在场景中重新审视目标的频率。其他平台的雷达具有较小的扫描区域,允许它们以更高的速度重新审视目标。

视图(20 [-55]);xlim(-10000年[-22000]);ylim(-19000年[-31000]);标题(“穿越飞机”);

{

放大那架向东飞行的客机。不同雷达平台对探测次数和精度的观测结果相同。

视图(-70 [10]);xlim(36000年[24000]);ylim(-14000年[-26000]);Zlim ([-15000 -3000])“客机东行”);

{

总结

本例展示了如何建模雷达监视网络,并模拟由多个机载和地面雷达平台生成的探测。在本例中,您学习了如何定义场景,包括可以是静止的或正在运动的目标和平台。您还学习了如何可视化地面真实轨迹、传感器光束、检测和相关的测量不确定性。您可以通过跟踪和融合算法处理这些合成数据,以评估它们在此场景中的性能。您还可以修改此示例,以针对不同的目标类型和机动练习您的多目标跟踪器。