OFDM Radar

Inheritance diagram of hermespy.jcas.ofdm_radar.OFDMRadar

A radar implementation estimation range-doppler maps from OFDM symbols as suggested by [1].

An OFDM radar can be created as follows:

 1# Configure a OFDM radar
 2device = SimulatedDevice(
 3    carrier_frequency=24e9,
 4    bandwidth=1024*90.909e3,
 5    oversampling_factor=4,
 6)
 7radar = OFDMRadar(OFDMWaveform(
 8    grid_resources=[
 9        GridResource(16, PrefixType.CYCLIC, .1, [GridElement(ElementType.DATA, 7), GridElement(ElementType.REFERENCE, 1)]),
10        GridResource(128, PrefixType.CYCLIC, .1, [GridElement(ElementType.DATA, 1)]),
11    ],
12    grid_structure=[
13        SymbolSection(64, [0, 1])
14    ],
15    num_subcarriers=1024,
16))
17radar.detector = MaxDetector()
18device.add_dsp(radar)
19
20# Generate a single target
21radar_channel = SingleTargetRadarChannel(.75 * radar.max_range(device.bandwidth), 1., velocity=10, attenuate=False)
22transmission = device.transmit()
23propagation = radar_channel.propagate(transmission, device, device)
24reception = device.receive(propagation)
25
26# Visualize radar image
27reception.operator_receptions[0].cube.plot_range()
class OFDMRadar(waveform=None, receive_beamformer=None, detector=None, min_range=0.0, selected_transmit_ports=None, selected_receive_ports=None, carrier_frequency=None, seed=None)[source]

Bases: DuplexJCASOperator[OFDMWaveform], Serializable

A joint communication and sensing approach estimating a range-power profile from OFDM symbols.

Refer to [1] for the original publication.

Parameters:
  • waveform (OFDMWaveform | None) – Communication waveform emitted by this operator.

  • receive_beamformer (ReceiveBeamformer | None) – Beamformer used to process the received signal.

  • detector (RadarDetector | None) – Detector used to process the radar cube.

  • min_range (float) – Minimal range considered for the generated radar cubes. Zero by default, but can be adjusted to ignore, for example, self-interference.

  • selected_transmit_ports (Sequence[int] | None) – Indices of antenna ports selected for transmission from the operated Device's antenna array. If not specified, all available ports will be considered.

  • selected_receive_ports (Sequence[int] | None) – Indices of antenna ports selected for reception from the operated Device's antenna array. If not specified, all available antenna ports will be considered.

  • carrier_frequency (float | None) – Central frequency of the mixed signal in radio-frequency transmission band. If not specified, the operated device’s default carrier frequency will be assumed during signal processing.

  • seed (int | None) – Random seed used to initialize the pseudo-random number generator.

classmethod Deserialize(process)[source]

Deserialize an object’s state.

Objects cannot be deserialized directly, instead a Factory must be instructed to carry out the deserialization process.

Parameters:

process (DeserializationProcess) – The current stage of the deserialization process. This object is generated by the Factory and provides an interface to deserialization methods supporting multiple backends.

Return type:

OFDMRadar

Returns:

The deserialized object.

max_range(bandwidth)[source]

Maximum range detectable by OFDM radar.

Defined by equation (12) in [1] as

\[d_\mathrm{max} = \frac{c_0}{2 \Delta f} \quad \text{.}\]
Parameters:

bandwidth (float) – Target bandwidth of the OFDM waveform in Hz.

Return type:

float

Returns:

Maximum range in m.

max_relative_doppler(bandwidth)[source]

The maximum relative doppler shift detectable by the OFDM radar in Hz.

Parameters:

bandwidth (float) – Target bandwidth of the OFDM waveform in Hz.

Return type:

float

Returns:

Maximum relative doppler shift in Hz.

range_resolution(bandwidth)[source]

Range resolution achievable by OFDM radar.

Defined by equation (13) in [1] as

\[\Delta r = \frac{c_0}{2 B} = \frac{c_0}{2 N \Delta f} = \frac{d_{\mathrm{max}}}{N} \quad \text{.}\]
Parameters:

bandwidth (float) – Target bandwidth of the OFDM waveform in Hz.

Return type:

float

Returns:

Range resolution in m.

relative_doppler_resolution(bandwidth)[source]

The relative doppler resolution achievable by the OFDM radar in Hz.

Parameters:

bandwidth (float) – Target bandwidth of the OFDM waveform in Hz.

Return type:

float

Returns:

Relative doppler resolution in Hz.

property power: float[source]

Expected power of the transmitted signal in Watts.

Note

Applies only to the signal-carrying parts of the transmission, silent parts shuch as guard intervals should not be considered.