Conventional and Adaptive Beamformers

This example shows how to apply conventional and adaptive beamforming in Simulink® to a narrowband signal received by an antenna array. The signal model includes noise and interference. This example is based on the Conventional and Adaptive Beamformers example.

Available Example Implementations

Conventional Beamforming with Noise

The first model simulates the reception of a rectangular pulse with a delay offset on a 10-element uniformly linear antenna array (ULA). The source of the pulse is located at an azimuth of 45 degrees and an elevation of 0 degrees. Noise with power of 0.5 watts is added to the signal at each element of the array. A phase-shift beamformer is then applied. The example compares the output of the phase-shift beamformer with the signal received at one of the antenna elements.

The model consists of a Signal Simulation stage and a Signal Processing stage. The blocks that corresponds to each stage of the model are:

Narrowband Rx Array - Simulates the signals received at the ULA. The first input to this block is a column vector which contains the received pulses. The pulses are assumed to be narrowband with a carrier frequency equal to the operating frequency specified in the block's dialog panel. The second input (Ang) specifies the incident direction of the pulses. The antenna array's configuration is created by a helper script as a variable in the MATLAB® workspace. This variable is referenced by the Sensor Array tab of the block's dialog panel. Using a variable makes it easier to share the antenna array's configuration across several blocks. Each column of the output corresponds to the signal received at each element of the antenna array.

2-D Selector - Selects the received signal at one of the antenna elements.

Exploring the Example

Several model parameters are calculated by the helper function helperslexBeamformerParam. To open the function from the model, click on Modify Simulation Parameters block. This function is executed once when the model is loaded. It exports to the workspace a structure whose fields are referenced by the model's dialog panels. To modify any parameters, either change the values in the structure from the command prompt or edit the helper function and rerun it to update the parameter structure.

Results and Displays

The displays below show the output of a single element (not beamformed) compared to the reference pulse and the output of the beamformer compared to the reference pulse. When the received signal is not beamformed, the pulse cannot be detected due to the noise. The display of the beamformer's output shows that the beamformed signal is much larger than the noise. The output SNR is approximately 10 times larger than that of the received signal on a single antenna, because a 10-element array produces an array gain of 10.

Conventional and Adaptive Beamformers with Interference

The second model illustrates beamforming in the presence of two interference signals arriving from 30 degrees and 50 degrees in azimuth. The interference amplitudes are much larger than the pulse amplitude. The noise level is set to -50 dBW to highlight only the effect of interference. Phase shift, MVDR, and LCMV beamformers are applied to the received signal and their results are compared.

Several new blocks are added to the blocks used in the previous model:

The helper function used for this example is helperslexBeamformerParam. To open the function from the model, click on Modify Simulation Parameters block. The pulse, interference signal and beamforming directions can also be changed at runtime by changing the angles on the Signal directions and the Angle to beamform blocks without stopping the simulation.

Results and Displays

The figure below shows the output of the phased-shift beamformer. It is not able to detect the pulses because the interference signals are much stronger than the pulse signal.

The next figure shows the output of the MVDR beamformer. An MVDR beamformer preserves the signal arriving along a desired direction, while trying to suppress signals coming from other directions. In this example, both interference signals were suppressed and the pulse at 45 degrees azimuth was preserved.

The MVDR beamformer is, however, very sensitive to the beamforming direction. If the target signal is received along a direction slightly different from the desired direction, the MVDR beamformer suppresses it. This occurs because the MVDR beamformer treats all the signals, except the one along the desired direction, as undesired interferences. This effect is sometimes referred to as "signal self-nulling". The following display shows what happens if we change the target signal's direction in the Signal directions block to 43 instead of 45. Notice how the received pulses have been suppressed as compared to the reference pulse.

You can use an LCMV beamformer to prevent signal self-nulling by broadening the region surrounding the signal direction where you want to preserve the signal. In this example, three separate but closely-spaced constraints are imposed that preserve the response in directions corresponding to 43, 45, and 47 degrees in azimuth. The desired responses in these directions are all set to one. As shown in the figure below, the pulse is preserved.

MATLAB 명령

아래 MATLAB 명령에 해당하는 링크를 클릭하셨습니다.

이 명령을 MATLAB 명령 창에 입력해 실행하십시오.
웹 브라우저에서는 MATLAB 명령을 지원하지 않습니다.

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .