Documentation

Radar Tracking

This example shows how to use a Kalman filter to estimate an aircraft's position and velocity from noisy radar measurements.

示例模型

The example model has three main functions. It generates aircraft position, velocity, and acceleration in polar (range-bearing) coordinates; it adds measurement noise to simulate inaccurate readings by the sensor; and it uses a Kalman filter to estimate position and velocity from the noisy measurements.

Model Output

Run the model. At the end of the simulation, a figure displays the following information:

- The actual trajectory compared to the estimated trajectory

- The estimated residual for range

- The actual, measured, and estimated positions in X (North-South) and Y (East-West)

Kalman Filter Block

Estimation of the aircraft's position and velocity is performed by the 'Radar Kalman Filter' subsystem. This subsystem samples the noisy measurements, converts them to rectangular coordinates, and sends them as input to the DSP System Toolbox™ Kalman Filter block.

The Kalman Filter block produces two outputs in this application. The first is an estimate of the actual position. This output is converted back to polar coordinates so it can be compared with the measurement to produce a residual, the difference between the estimate and the measurement. The Kalman Filter block smoothes the measured position data to produce its estimate of the actual position.

The second output from the Kalman Filter block is the estimate of the state of the aircraft. In this case, the state is comprised of four numbers that represent position and velocity in the X and Y coordinates.

实验:初始速度不匹配

The Kalman Filter block works best when it has an accurate estimate of the aircraft's position and velocity, but given time it can compensate for a bad initial estimate. To see this, change the entry for theInitial condition for estimated state卡尔曼过滤器中的参数。y方向上初始速度的正确值为400。尝试将估计值更改为100并再次运行模型。

Observe that the range residual is much greater and the 'E-W Position' estimate is inaccurate at first. Gradually, the residual becomes smaller and the position becomes more accurate as more measurements are gathered.

实验:增加测量噪声

在当前模型中,与最终范围相比,添加到范围估计的噪声相当小。噪声的最大幅度为300英尺,而最大范围为40,000英尺。尝试将范围噪声的幅度增加到更大的值,例如,通过更改该数量或1500英尺的5倍。Gainparameter in the 'Meas. Noise Intensity' Gain block.

Observe that the blue lines representing the estimated positions have moved farther from the red lines representing the actual positions, and the curves have become much more 'bumpy' and 'jagged'. We can partially compensate for the inaccuracy by giving the Kalman Filter block a better estimate of the measurement noise. Try setting theMeasurement noise covariance卡尔曼过滤器块的参数到1500,然后再次运行模型。

Observe that when the measurement noise estimate is better, the E-W and N-S position estimate curves become smoother. The N-S position curve now consistently underestimates the position. Given how noisy the measurements are compared to the value of the N-S coordinate, this is expected behavior.

See Also

The Simulink® example 'sldemo_radar_eml' uses the same initial simulation of target motion and accomplishes the tracking through the use of an extended Kalman filter implemented using the MATLAB Function block.

Was this topic helpful?