Modulate using FM method
The FMModulator
System
object™ applies FM modulation to an input signal.
To FM modulate a signal:
Define and set up the FMModulator
object.
See Construction.
Call step
to apply FM modulation
to a signal according to the properties of comm.FMModulator
.
The behavior of step
is specific to each object in
the toolbox.
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.
H = comm.FMModulator
creates a modulator System
object, H
,
that frequency modulates an input signal.
H = comm.FMModulator(demod)
creates an
FM modulator object whose properties are determined by the corresponding
FM demodulator object, demod
.
H = comm.FMModulator(
creates
an FM modulator object with each specified property Name
,Value
)Name
set
to the specified Value
. Name
must
appear inside single quotes. You can specify additional namevalue
pair arguments in any order as (Name1
,Value1
,...,NameN
,ValueN
).

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 

Sample rate of the input signal (Hz) Specify the sample rate in Hz as a positive real scalar. The
default value is 
reset  Reset states of the FM modulator object 
step  Applies FM baseband modulation 
Common to All System Objects  

release  Allow System object property value changes 
[1] Chakrabarti, I. H., and Hatai, I. “A New HighPerformance Digital FM Modulator and Demodulator for SoftwareDefined 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: McGrawHill, 1971, pp. 142–155.
Represent a frequency modulated passband signal, Y(t), as
$$Y(t)=A\mathrm{cos}\left(2\pi {f}_{c}t+2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}\right)\text{\hspace{0.17em}},$$
where A is the carrier amplitude, f_{c} is the carrier frequency, x(τ) is the baseband input signal, and f_{Δ} is the frequency deviation in Hz. The frequency deviation is the maximum shift from f_{c} in one direction, assuming x(t) ≤ 1.
A baseband FM signal can be derived from the passband representation by downconverting it by f_{c} such that
$$\begin{array}{c}{y}_{s}(t)=Y(t){e}^{j2\pi {f}_{c}t}=\frac{A}{2}\left[{e}^{j\left(2\pi {f}_{c}t+2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}\right)}+{e}^{j\left(2\pi {f}_{c}t+2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}\right)}\right]{e}^{j2\pi {f}_{c}t}\\ =\frac{A}{2}\left[{e}^{j2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}}+{e}^{j4\pi {f}_{c}tj2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}}\right]\text{\hspace{0.17em}}.\end{array}$$
Removing the component at 2f_{c} from y_{s}(t) leaves the baseband signal representation, y(t), which is expressed as
$$y(t)=\frac{A}{2}{e}^{j2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}}.$$
The expression for y(t) is rewritten as
$$y(t)=\frac{A}{2}{e}^{j\varphi (t)}\text{\hspace{0.17em}},$$
where $$\varphi (t)=2\pi {f}_{\Delta}{\displaystyle {\int}_{0}^{t}x(\tau )d\tau}$$, which implies that the input signal is a scaled version of the derivative of the phase, ϕ(t).
A baseband delay demodulator is used to recover the input signal from y(t).
A delayed and conjugated copy of the received signal is subtracted from the signal itself,
$$w(t)=\frac{{A}^{2}}{4}{e}^{j\varphi (t)}{e}^{j\varphi (tT)}=\frac{{A}^{2}}{4}{e}^{j\left[\varphi (t)\varphi (tT)\right]}\text{\hspace{0.17em}},$$
where T is the sample period. In discrete terms, w_{n}=w(nT), and
$$\begin{array}{l}{w}_{n}=\frac{{A}^{2}}{4}{e}^{j\left[{\varphi}_{n}{\varphi}_{n1}\right]}\text{\hspace{0.17em}}\text{,}\\ {v}_{n}={\varphi}_{n}{\varphi}_{n1}\text{\hspace{0.17em}}.\end{array}$$
The signal v_{n} is the approximate derivative of ϕ_{n}, such that v_{n} ≈ x_{n}.