文档

和差单脉冲雷达目标跟踪

控件的实例分阶段。SumDifferenceMonopulseTracker跟踪移动目标的系统对象™。的分阶段。SumDifferenceMonopulseTracker跟踪器从到达均匀线性阵列(ULA)的信号中求解目标的方向。单脉冲和差分算法需要对目标方向进行先验估计,假设目标方向与实际方向接近。在跟踪器中,当前估计作为下一次估计的先验信息。目标是一个500兆赫的窄带发射器,以800公里/小时的恒定速度移动。对于ULA阵列,转向矢量仅取决于侧舷角。宽边角是源方向与线阵法线平面之间的夹角。任何到达的信号都用它的舷侧角来表示。

注意:此示例仅在R2016b或更高版本中运行。如果您使用的是较早的版本,请将对该函数的每个调用替换为等效的函数一步语法。例如,替换myObject (x)步骤(myObject x)

创建目标平台并定义其运动

假设目标位于[0, 10000, 20000)相对于雷达的局部坐标系。假设目标以每小时800公里的速度沿y轴向雷达移动。

X0 = [0,10000,20000].';V0 = 800;V0 = V0 *1000/3600;targetplatform = phase_platform (x,[0,-v0,0].');

设置ULA阵列

单脉冲跟踪器采用由8个各向同性天线单元组成的ULA阵列。元件间距设为信号波长的一半。

Fc = 500e6;C = physconst(“光速”);Lam = c/fc;天线=相控。IsotropicAntennaElement (“FrequencyRange”[100 e6,800e6],“BackBaffled”,真正的);Array = phased。齿龈(“元素”、天线、“NumElements”8“ElementSpacing”林/ 2);

假设是窄带信号。这类信号可以用分阶段。SteeringVector系统对象。

阶段性的。SteeringVector (“SensorArray”、数组);

跟踪循环

初始化跟踪循环。创建分阶段。SumDifferenceMonopulseTracker系统对象。

跟踪器=阶段性的。SumDifferenceMonopulseTracker (“SensorArray”数组,“PropagationSpeed”c“OperatingFrequency”、fc);

在每个时间步长,计算目标相对于阵列的舷侧角。将步长设置为0.5秒。

T = 0.5;Nsteps = 40;t = [1:Nsteps]* t;

设置用于存储和显示结果的数据向量

rng = 0 (1,Nsteps);broadang_actual = 0 (1,Nsteps);broadang_est = 0 (1,Nsteps);angerr = 0 (1,Nsteps);

通过跟踪循环步骤。首先提供初始舷侧角的估计值。在这个模拟中,实际的舷侧角是已知的,但增加了5度的误差。

[tgtrng,tgtang_actual] = rangeangle(x0,[0,0,0].');Broadang0 = az2broadside(tgtang_actual(1),tgtang_actual(2));Broadang_prev = broadang0 + 5.0;添加某种错误
  1. 计算实际的舷侧角,broadang_actual

  2. 计算信号,signl,从实际的舷侧角度,使用分阶段。SteeringVector系统对象。

  3. 使用分阶段。SumDifferenceMonopulseTracker追踪者,估计舷侧角度broadang_est,从信号。从前一个步骤得到的舷侧角作为当前步骤的初始估计。

  4. 计算估计的舷侧角,broadang_est,实际舷侧角,broadang_actual。这是衡量解决方案好坏的标准。

n = 1: n步x = targetplatform(t(n));[rng (n), tgtang_actual] = rangeangle (x,(0, 0, 0)。');Broadang_actual (n) = az2broadside(tgtang_actual(1),tgtang_actual(2));sign1 = steervec(fc,broadang_actual(n)).';Broadang_est (n) = tracker(sign1,broadang_prev);Broadang_prev = broadang_est(n);Angerr (n) = broadang_est(n) - broadang_actual(n);结束

结果

绘制距离作为时间的函数,显示最接近的点。

情节(t, rng / 1000,“o”)包含(的时间(秒)) ylabel (的距离(公里)

绘制估计的舷侧角作为时间的函数。

情节(t, broadang_actual“o”)包含(的时间(秒)) ylabel (舷侧角(度)

单脉冲跟踪器在样本间角距过大时无法求解方向角。最大允许的角间距大约是阵列的零至零波束宽度的一半。对于8元半波长间隔的ULA,半波束宽度在侧面约为14.3度。在本仿真中,样本间的最大角差为

Maxangdiff = max(abs(diff(broadang_est)));disp (maxangdiff)
4.9546

因此,样品之间的角间距小于半波束宽度。

绘制角度误差。这是估计角度和实际角度的差值。该图显示了一个非常小的误差,在微度的数量级上。

情节(t, angerr“o”)包含(的时间(秒)) ylabel (角度误差(度)

另请参阅

功能

系统对象

这个话题有帮助吗?