Modulate broadcast FM signal
The comm.FMBroadcastModulator
System object™ pre-emphasizes an audio signal and modulates it
onto a baseband FM signal. If the Stereo
property is set to
true
, the object modulates the audio input
(L–R) in the 38 kHz band, in addition to
modulating it in the baseband (L+R). If the
RBDS
property is set to true
, the object
modulates a baseband RDS/RBDS signal at 57 kHz. For more details, see Algorithms.
To FM modulate an audio signal:
Define and set up the comm.FMBroadcastModulator
object.
See Construction.
Call step
to apply broadcast FM
modulation to an audio signal according to the properties of comm.FMBroadcastModulator
.
Note
Starting in R2016b, instead of using the step
method
to perform the operation defined by the System object, you can
call the object with arguments, as if it were a function. For example, y
= step(obj,x)
and y = obj(x)
perform
equivalent operations.
fmbMod = comm.FMBroadcastModulator
creates
a modulator System object, fmbMod
, that frequency
modulates an input signal.
fmbMod = comm.FMBroadcastModulator(demod)
creates
a broadcast FM modulator object whose properties are determined by
the corresponding broadcast FM demodulator object, demod
.
fmbMod = comm.FMBroadcastModulator(
creates
a broadcast FM modulator object with each specified property Name
,Value
)Name
set
to the specified Value
. You can specify additional
name-value pair arguments in any order as (Name1
,Value1
,...,NameN
,ValueN
).
|
Output signal sample rate (Hz) Specify the sample rate of the output signal in Hz as a positive
real scalar. The default value is |
|
Peak deviation of the output signal frequency (Hz) Specify the frequency deviation of the FM modulator in Hz as
a positive real scalar. The default value is |
|
Filter time constant (s) Specify the pre-emphasis highpass filter time constant as a
positive real scalar. FM broadcast standards specify a value of 75
μs in the United States and 50 μs in Europe. The default
value is |
|
Sample rate of the input audio signal (Hz) Specify the audio sample rate as a positive real scalar. The
default value is |
|
Flag to set stereo operations Set this property to |
|
Flag to modulate RDS/RBDS waveform If |
|
Oversampling factor of RDS/RBDS input Specify the number of samples per RDS/RBDS symbol as a positive integer. The RDS/RBDS sample
rate is given by This property applies only when you set The default is 10. |
info | Filter information about FM broadcast modulator |
reset | Reset states of the FM broadcast modulator object |
step | Apply FM broadcast modulation |
Common to All System Objects | |
---|---|
release | Allow System object property value changes |
The FM Broadcast modulator includes the functionality of the
baseband FM modulator, pre-emphasis filtering, and the ability to
transmit stereophonic signals. The algorithms which govern basic FM
modulation and demodulation are covered in comm.FMModulator
.
FM amplifies high-frequency noise and degrades the overall signal-to-noise ratio. To compensate, FM broadcasters insert a pre-emphasis filter prior to FM modulation to amplify the high-frequency content. The FM receiver has a reciprocal de-emphasis filter after the FM demodulator to attenuate high-frequency noise and restore a flat signal spectrum.
The pre-emphasis filter has a highpass characteristic transfer function given by
where τs is the filter time constant. The time constant is 50 μs in Europe and 75 μs in the United States. Similarly, the transfer function for the lowpass de-emphasis filter is given by
Irrespective of the audio sampling rate, the signal is converted to a 152 kHz output sampling rate. For an audio sample rate of 44.1 kHz, the pre-emphasis filter has the following response.
The FM broadcast modulator supports stereophonic and monophonic operations. To support stereo transmission, the left (L) and right (R) channel information (L+R) is assigned to the mono portion of the spectrum (0 to 15 kHz). The (L-R) information is amplitude modulated onto the 23 to 53 kHz region of the baseband spectrum using a 38 kHz subcarrier signal. A pilot tone at 19 kHz in the multiplexed signal enables the FM receiver to coherently demodulate the stereo and RDS/RBDS signals. Here is the spectrum of the multiplex baseband signal.
Here is the block diagram of the FM broadcast modulator, which is used to generate the multiplex baseband signal. L(t) and R(t) denote the time-domain waveforms from the left and right channels. RBDS(t) denotes the time-domain waveform of the RDS/RBDS signal.
The multiplex message signal, m(t) is given by
where C0, C1, and C2 are gains. To generate the appropriate modulation level, these gains scale the amplitudes of the (L(t)±R(t)) signals, the 19 kHz pilot tone, and the RDS/RBDS subcarrier, respectively.
If RBDS
is true
, both the audio and RDS/RBDS inputs
must satisfy the following equation:
The input length of the audio signal must be an integer multiple of the
AudioDecimationFactor
property. The input length of the
RDS/RBDS signal must be an integer multiple of the
RBDSDecimationFactor
property. For more information on
these two properties, see the info
method.
[1] Chakrabarti, I. H., and Hatai, I. “A New High-Performance Digital FM Modulator and Demodulator for Software-Defined Radio and Its FPGA Implementation.” International Journal of Reconfigurable Computing. Vol. 2011, No. 10.1155/2011, 2011, p. 10.
[2] Taub, Herbert, and Donald L. Schilling. Principles of Communication Systems. New York: McGraw-Hill, 1971, pp. 142–155.
[3] Der, Lawrence. “Frequency Modulation (FM) Tutorial”. FM Tutorial. Silicon Laboratories Inc., pp. 4–8.