urx.excitation - moduleus/urx GitHub Wiki
Excitation applied to an element.
Parameters
Parameter | Datatype | Description |
---|---|---|
pulse_shape | string | Description the pulse shape (e.g., sinusoidal, square wave, chirp), including necessary parameters. |
sampling_frequency | double | Sampling frequency of the excitation waveform, in [Hz]. Default NaN, if waveform is not empty the sampling_frequency must be set to a real value. |
transmit_frequency | double | Transmit frequency, in [Hz]. Default NaN. |
waveform | Array of double | Vector containing the sampled excitation waveform, in [V]. |
Notes
The following figure shows an example of excitation containing 2 periods of 5MHz of square wave with +/-80V amplitude, sampled at 100MSPS:
excitation : {
pulse_shape : "square wave",
waveform : [0, 0, 80, 80, 80, 80, 80, 80, 80, 0, 0, 0, -80, -80, -80, -80, -80, -80, -80, 0,
0, 0, 80, 80, 80, 80, 80, 80, 80, 0, 0, 0, -80, -80, -80, -80, -80, -80, -80, 0, 0]
sampling_frequency : 100e6;
transmit_frequency : 5e6;
}
The figure has been generated using the MATLAB code bellow:
f0 = 5e6;
fs = 100e6;
t = 0:1/fs:2/f0;
excitation = 80 * [round(sin(2*pi*f0*t))];
stem(t, excitation);
grid on
title(sprintf("Excitation '%s' @ %.2fMHz", "square wave", f0/1e6))
xlabel("Time [s]"), ylabel("Amplitude [V]", 'Interpreter', 'none')
ylim([-100 100])
The following figure shows the timing relation between event, transmit_setup, wave and excitation: