modulate - Modulation for communications simulation
Syntax
y = modulate(x,fc,fs,'method')
y = modulate(x,fc,fs,'method',opt)
[y,t] = modulate(x,fc,fs)
Description
y = modulate(x,fc,fs,'method') and
y = modulate(x,fc,fs,'method',opt)
modulate the real message signal x with a carrier frequency fc and
sampling frequency fs, using one of the options
listed below for 'method'. Note that some
methods accept an option, opt.
| Method | Description |
amdsb-sc or am | Amplitude modulation, double sideband, suppressed
carrier. Multiplies x by a sinusoid of frequency fc. y = x.*cos(2*pi*fc*t)
|
amdsb-tc | Amplitude modulation, double sideband, transmitted carrier.
Subtracts scalar opt from x and
multiplies the result by a sinusoid of frequency fc. y = (x-opt).*cos(2*pi*fc*t)
If the opt parameter is
not present, modulate uses a default of min(min(x)) so
that the message signal (x-opt) is entirely nonnegative
and has a minimum value of 0. |
amssb | Amplitude modulation, single sideband. Multiplies x by
a sinusoid of frequency fc and adds the result
to the Hilbert transform of x multiplied by a phase
shifted sinusoid of frequency fc. y =
x.*cos(2*pi*fc*t)+imag(hilbert(x)).*sin(2*pi*fc*t)
This effectively removes the upper sideband. |
fm | Frequency modulation. Creates a sinusoid with instantaneous
frequency that varies with the message signal x. y = cos(2*pi*fc*t + opt*cumsum(x)) cumsum is
a rectangular approximation to the integral of x. modulate uses opt as
the constant of frequency modulation. If opt is
not present, modulate uses a default of opt = (fc/fs)*2*pi/(max(max(x))) so
the maximum frequency excursion from fc is fc Hz. |
pm | Phase modulation. Creates a sinusoid of frequency fc whose
phase varies with the message signal x. y = cos(2*pi*fc*t + opt*x) modulate uses opt as
the constant of phase modulation. If opt is not
present, modulate uses a default of opt = pi/(max(max(x))) so
the maximum phase excursion is π radians. |
pwm | Pulse-width modulation. Creates a pulse-width modulated
signal from the pulse widths in x. The elements
of x must be between 0 and 1, specifying the width
of each pulse in fractions of a period. The pulses start at the beginning
of each period, that is, they are left justified. modulate(x,fc,fs,'pwm','centered') yields
pulses centered at the beginning of each period. y is
length length(x)*fs/fc. |
ppm | Pulse-position modulation. Creates a pulse-position modulated
signal from the pulse positions in x. The elements
of x must be between 0 and 1, specifying the left
edge of each pulse in fractions of a period. opt is
a scalar between 0 and 1 that specifies the length of each pulse in
fractions of a period. The default for opt is 0.1. y is
length length(x)*fs/fc. |
qam | Quadrature amplitude modulation. Creates a quadrature
amplitude modulated signal from signals x and opt. y = x.*cos(2*pi*fc*t) + opt.*sin(2*pi*fc*t) opt must
be the same size as x. |
If you do not specify 'method', then modulate assumes am.
Except for the pwm and ptm cases, y is
the same size as x.
If x is an array, modulate modulates
its columns.
[y,t] = modulate(x,fc,fs) returns the internal
time vector t that modulate uses
in its computations.
See Also
demod, vco, fskdemod, modem.genqamdemod, modem.mskdemodmodem.pammod, modem.pamdemod, pmdemod, modem.qammod
 | medfilt1 | | mscohere |  |
Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
Get the Interactive Kit