Custom FM Waveform
Signal generator with custom frequency modulation.
blockType: CustomFMWaveform
Path in the library:
|
Description
The Custom FM Waveform unit generates a custom frequency modulated pulse signal with a specified pulse width, pulse repetition rate and frequency deviation. The signal at the block output is an integer number of pulses or an integer number of samples.
Ports
Input
FreqOffset - frequency offset
scalar
Frequency offset in Hz as a scalar.
Dependencies
To use this port, set the Source of Frequency Offset parameters to Input port
.
Data types: Float64
.
Output
Y - pulse signal
`complex vector
A signal at the block output returned as a complex vector.
Data types: Float64
.
Support for complex numbers: Yes
PRF - pulse repetition rate
`positive scalar
The pulse repetition rate returned as a positive scalar.
Dependencies
To use this port, set the Output signal format parameter to Pulses
and then select the checkbox for the Enable PRF output parameter.
Data types: Float64
.
Coeff - coefficients of matched filter
vector
| matrix
Coefficients of the matched filter returned as a vector or matrix.
Dependencies
To use this port, select the Enable Matched Filter Coefficients Output checkbox.
Data types: Float64
.
Support for complex numbers: Yes
Parameters
Sample rate (Hz) - sampling rate of the output signal
1e6 (by default)
| positive scalar
The sampling frequency of the signal as a positive scalar. The unit of measurement is Hz.
The ratio of Sample rate (Hz) to each element of the vector Pulse repetition frequency (Hz) must be an integer.
This constraint is equivalent to requiring that the pulse repetition interval be an integer multiple of the sampling interval.
Block parameters |
|
Values |
|
By default |
|
Method to specify pulse duration - pulse duration as time or fill factor (duty cycle)
Pulse width (By default)
| Duty cycle
Method to specify pulse duration, options to choose from:
-
Pulse width
- the pulse width is set using the Pulse width (s) parameters. -
Duty cycle
- fill factor, where the pulse duration is calculated from the values of the parameters Pulse repetition frequency (Hz) and Duty Cycle.
Block parameters |
|
Values |
|
By default |
|
Pulse width (s) - pulse width
50e-6 (by default)
| positive scalar
Pulse width in s, specified as a positive scalar value.
The product of Pulse width (s) and Pulse repetition frequency (Hz) must be less than or equal to one. This constraint ensures that the pulse width is less than the pulse repetition interval.
Dependencies
To use this parameter, set the Method to specify pulse duration parameter to Pulse width
.
Block parameters |
|
Values |
|
By default |
|
Duty cycle - fill factor (duty cycle)
0.5 (by default)
| scalar in the range [0,1]
Fill factor set as a scalar in the range .
Dependencies
To use this parameter, set the Method to specify pulse duration parameters to Duty cycle
.
Block parameters |
|
Values |
|
By default |
|
Pulse repetition frequency (Hz) - pulse repetition frequency
1e4 (By default)
| positive scalar
Pulse repetition frequency , specified as a scalar or string vector. The pulse repetition interval is the inverse of the pulse repetition frequency .
The Pulse repetition frequency (Hz) must meet the following constraints:
-
The product of Pulse width (s) and Pulse repetition frequency (Hz) must be less than or equal to one. This constraint ensures that the pulse width is less than one pulse repetition interval. For a phase encoded signal, the pulse width is equal to the product of the duration of one chip by the number of chips.
-
The ratio of the sampling frequency to any Pulse repetition frequency element must be an integer. This constraint is equivalent to requiring that the number of samples in one pulse repetition interval be an integer.
You can select the value , using the block parameters:
-
To implement a constant , specify Pulse repetition frequency (Hz) as a positive scalar.
-
To realise a stepped , specify Pulse repetition frequency (Hz) as a string vector with positive values. After the signal reaches the last element of the vector, the process cycles from the first element of the vector. When is stepped, the time between successive output pulses cycles through successive vector values .
The number of output samples is fixed if the Output signal format parameter is set to Samples
. If a variable is used and Output signal format is set to Pulses
, the number of output samples can vary.
Block parameters |
|
Values |
|
By default |
|
Frequency modulation - function of frequency modulation of the signal
[0, 1e5] (by default)
| ` real vector of length M` | ` function descriptor` | ` cell array`
Frequency modulation function of a signal defined as a real vector of length , a function descriptor or a cell array.
-
If Frequency Modulation is a vector, it specifies a sample of instantaneous frequency values at points as . For -th pulse with start time and duration , the instantaneous frequency at the moment of time
is , where and . The instantaneous frequencies between the times and are found by linear interpolation between and . The resulting user frequency modulated signal can be viewed as a piecewise linear frequency modulated signal consisting of linear sections of equal duration.
-
If the value Frequency Modulation is a function descriptor, the function must have the following syntax: , where is the instantaneous frequency at time , is the time at which to calculate the instantaneous frequency. The values in range from 0 to the pulse width.
-
If the Frequency Modulation value is an array of cells, the first cell must be a function descriptor as above. The remaining entries in the cell array are additional input arguments to the function, if any.
Block parameters |
|
Values |
|
By default |
|
Envelope function - setting the envelope of a frequency modulated signal
Rectangular (by default)
| Gaussian
| Hamming
| Chebyshev
| Hann
| Kaiser
| Taylor
Frequency modulated envelope, selectable options: Rectangular
, Gaussian
, Hamming
, Chebyshev
, Hann
, Kaiser
or Taylor
.
Block parameters |
|
Values |
|
* By default* |
|
Source of Frequency Offset - frequency offset setting
Property (By default)
| Input port
Source of Frequency Offset specified as Property
or Input port
:
-
If
Property
is set, the offset is determined by the value of the Frequency Offset parameters. -
If
Input port
is set, the offset is determined by the port value FreqOffset.
Block parameters |
|
Values |
|
By default |
|
Frequency Offset (Hz) - frequency offset
0 (By default)
| scalar
Frequency offset, specified as a scalar. The unit of measurement is Hz.
Dependencies
To use this parameter, set the Source of Frequency Offset parameter to Property
.
Block parameters |
|
Values |
|
By default |
|
Output signal format - output signal format
Pulses (by default)
| Samples
Output signal format as Pulses
or Samples
:
-
If you set this parameter to
Pulses
, the block output consists of a number of pulses. The number of pulses is the value of the Number of pulses in output parameter. -
If you set this parameter to
Samples
, the block output consists of multiple samples. The number of samples is the value of the Number of samples in output parameters.
Block parameters |
|
Values |
|
By default |
|
Number of samples in output - number of samples of the output signal
100 (by default)
| `positive number `
The number of samples of the output signal specified as a positive integer.
*Example: 1000
Dependencies
To use this parameter, set the Output signal format parameters to Samples
.
Block parameters |
|
Values |
|
By default |
|
Number of pulses in output - number of pulses of the output signal
1 (by default)
| positive number
The number of pulses of the output signal set as a positive integer.
Dependencies
To use this parameter, set the Output signal format parameters to Pulses
.
Block parameters |
|
Values |
|
By default |
|
Enable PRF Output - enable PRF output
off (by default)
| on
.
Select the checkbox to enable the PRF output port.
Dependencies
To use this parameter, set the Output signal format parameters to Pulses
.
Block parameters |
|
Values |
|
* By default* |
|
Enable Matched Filter Coefficients Output - enable output of matched filter coefficients
off (by default)
| on
- enable
Tick the checkbox to enable the Coeff output port.
Block parameters |
|
Values |
|
* By default* |
|