Table Of Contents

MT Modulate AM (MT Modulate AM (SSB)) (G Dataflow)

Version:
    Last Modified: February 7, 2018

    Performs single sideband (SSB) amplitude modulation. This node performs signal processing on data and operates independently of hardware settings. Use this node in both simulated and hardware-equipped applications.

    connector_pane_image
    datatype_icon

    message signal

    Message signal used to modulate the carrier wave.

    datatype_icon

    modulation index

    Desired modulation index of the AM modulated waveform parameter. A value of 0.7, for example, corresponds to a modulation index of 70%. A value greater than unity may cause overmodulation and distortion. The node ignores this parameter if you set the suppress carrier? parameter to TRUE.

    Default: 1.0

    datatype_icon

    hilbert filter

    The complex-valued Hilbert filter used for sideband cancellation during generation of the AM-SSB baseband complex signal. The node applies this filter to the message signal for generating the baseband complex analytic signal.

    spd-note-note
    Note  

    Changes to the Hilbert filter take effect when the reset? parameter is set to TRUE.

    datatype_icon

    taps

    The length (N), in taps, of the Hilbert filter.

    datatype_icon

    design

    The underlying design of the Hilbert filter.

    Name Description
    Windowed Hilbert Transformer

    Generates the length N Hilbert filter based on the impulse response.

    Equiripple Hilbert transformer

    Generates an equiripple Hilbert filter.

    Default: Equiripple Hilbert transformer

    datatype_icon

    peak message amplitude

    Peak message amplitude of the message signal parameter. The node uses this value to scale or normalize the input message signal prior to modulation. This value must be positive.

    Default: 1.0

    datatype_icon

    error in

    Error conditions that occur before this node runs.

    The node responds to this input according to standard error behavior.

    Standard Error Behavior

    Many nodes provide an error in input and an error out output so that the node can respond to and communicate errors that occur while code is running. The value of error in specifies whether an error occurred before the node runs. Most nodes respond to values of error in in a standard, predictable way.

    error in does not contain an error error in contains an error
    If no error occurred before the node runs, the node begins execution normally.

    If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

    If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

    Default: No error

    datatype_icon

    sideband

    A value that indicates whether the AM-SSB modulator retains the lower or upper sideband of the message spectrum to generate the AM-SSB baseband complex analytic signal.

    Name Description
    Lower sideband

    Retains the portion of the message spectrum lying in the negative frequency range [ ( 1 / 2 d t ) , 0 ] and eliminates the positive sideband spectrum.

    Upper sideband

    Retains the message spectrum spanning the positive frequency range [ 0 , 1 / 2 d t ] .

    Default: upper sideband

    datatype_icon

    pilot tone

    Parameters for specifying pilot tone generation. The pilot tone is added to the Hilbert-filtered complex baseband signal to generate the modulated waveform. The pilot tone provides a coherent phase reference during demodulation for performing carrier phase and carrier frequency offset correction. Set the amplitude parameter to 0 to disable addition of the pilot tone.

    spd-note-tip
    Tip  

    Adding a pilot tone is optional when suppress carrier? is set to FALSE. In this case, the presence of the DC component in the AM signal (corresponding to the pure carrier tone) provides a coherent reference for phase and frequency offset correction, therefore the pilot tone is not needed.

    datatype_icon

    frequency

    Frequency of the complex exponential tone that is added to the complex baseband signal. Ensure that the absolute value of this tone frequency is less than the Nyquist frequency 1/(2 * dt).

    spd-note-note
    Note  

    When specifying pilot tone parameters, ensure that the pilot tone is added to a portion of the spectrum where the message component of the signal is absent. Conflict between the pilot tone and message signals can cause a residual carrier phase and frequency offset error after demodulation. For example, if you specify a negative pilot tone frequency, specify an upper sideband in the sideband parameter.

    datatype_icon

    amplitude

    Amplitude of the complex exponential tone that is added to the complex analytic baseband signal.

    datatype_icon

    suppress carrier?

    A Boolean that determines whether to suppress the carrier of the modulated signal.

    TRUE The DC component corresponding to the carrier tone in the amplitude-modulated baseband signal is suppressed.
    FALSE The output amplitude-modulated baseband signal consists of a DC component corresponding to the carrier tone.

    Default: FALSE

    datatype_icon

    reset?

    A Boolean that determines whether the node continues AM-SSB modulation using internal states from previous iterations.

    TRUE The node restarts AM-SSB modulation, redesigns the Hilbert filter, and clears internal filter states on each call.
    FALSE The node does not change the Hilbert filter design across multiple calls, and sets the internal filter state to ensure continuous filter operation.

    Default: TRUE

    datatype_icon

    AM modulated waveform

    The modulated complex baseband time-domain data for demodulation.

    datatype_icon

    t0

    The trigger (start) time of the Y array.

    Default: 0.0

    datatype_icon

    dt

    Time interval between data points in the Y array.

    Default: 1.0

    datatype_icon

    Y

    The complex-valued signal-only baseband modulated waveform. The real and imaginary parts of this complex data array correspond to the in-phase (I) and quadrature-phase (Q) data, respectively.

    datatype_icon

    error out

    Error information.

    The node produces this output according to standard error behavior.

    Standard Error Behavior

    Many nodes provide an error in input and an error out output so that the node can respond to and communicate errors that occur while code is running. The value of error in specifies whether an error occurred before the node runs. Most nodes respond to values of error in in a standard, predictable way.

    error in does not contain an error error in contains an error
    If no error occurred before the node runs, the node begins execution normally.

    If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

    If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

    Adjusting the Carrier Phase

    Use the initial phase parameter of MT Upconvert Baseband to adjust the carrier phase during the upconversion process. The initial phase parameter specifies the initial phase, in degrees, of the software local oscillator used in the upconversion process.

    Avoiding Distortion

    To avoid distortion, amplitude-normalize the message signal parameter to ±1.0 with respect to the absolute maximum amplitude of the message signal.

    Prescaling Behavior

    This node prescales the message signal parameter by the scalar peak amplitude prior to modulation. The default value of 1.0 for peak message amplitude indicates that no prescaling occurs.

    Single Sideband (SSB) Amplitude Modulation

    SSB amplitude modulation ensures bandwidth reduction by only retaining either the upper or lower sideband in the message spectrum after the modulation process. The following figure illustrates the series of algorithms applied to the incoming signal m(t). The node applies the AM-DSB algorithms and then applies the Hilbert filter to remove the signal.

    When suppress carrier? is set to FALSE, the output amplitude-modulated signal is represented by the following formula:

    s D S B ( t ) = 1 + k × m ( t ) max | m ( t ) |
    s S S B ( t ) = s D S B ( t ) ( h i ± j × h q ( t ) ) + A p i l o t e j ω p i l o t

    where

    m(t) represents the message signal data

    SDSB(t) represents the double sideband AM modulated signal (unsuppressed carrier)

    SSSB(t) represents the single sideband AM modulated signal (unsuppressed carrier)

    k represents the modulation index

    Apilot represents the amplitude of the pilot tone

    ωpilot represents the frequency of the pilot tone

    hi represents the real component of the Hilbert filter

    hq represents the imaginary component of the Hilbert filter

    When suppress carrier? is set to TRUE, the output amplitude-modulated signal is represented by the following formula:

    s D S B S C ( t ) = k × m ( t ) max | m ( t ) |
    s S S B S C = s D S B S C ( t ) ( h i ± j × h q ( t ) ) + A p i l o t e j ω p i l o t

    where

    m(t) represents the message signal data

    SDSBSC(t) represents the double sideband AM modulated signal (unsuppressed carrier)

    SSSBSC(t) represents the single sideband AM modulated signal (unsuppressed carrier)

    k represents the modulation index

    Apilot represents the amplitude of the pilot tone

    ωpilot represents the frequency of the pilot tone

    hi represents the real component of the Hilbert filter

    hq represents the imaginary component of the Hilbert filter

    In both suppressed and unsuppressed carrier cases, one of two possible Hilbert filter designs is specified using the design element in the Hilbert filter cluster. Select either a Windowed Hilbert transformer or an Equiripple Hilbert transformer.

    The Windowed Hilbert transformer generates a length N Hilbert filter with an impulse response h(n) given by the following equation:

    ωh ( n ) = δ ( n N 2 ) + j × { 2 π sin 2 ( π n 2 ) n 0 , n = 0 , n 0 }

    The Equiripple Hilbert transformer generates a length N Hilbert filter with an impulse response h(n) given by the following equation:

    h ( n ) = g ( n ) e ± j × 0.25 × n

    where g(n) represents an equiripple lowpass filter with a normalized cutoff frequency of 0.25 Hz.

    Where This Node Can Run:

    Desktop OS: Windows

    FPGA: Not supported

    Web Server: Not supported in VIs that run in a web application


    Recently Viewed Topics