Archived:Configure Low Data Rate Telemetry Receiver Using NI PXIe-5122 Oscilloscope

Updated Dec 7, 2023

NI does not actively maintain this document.

This content provides support for older products and technology, so you may notice outdated links or obsolete information about operating systems or other relevant products.

Environment

Hardware

  • PXI-5122
  • PXIe-5122
  • PXI Oscilloscope

Software

  • LabVIEW 2020
  • LabVIEW Modulation Toolkit 20.0

Driver

  • NI-SCOPE

Operating System

  • Windows

Satellite communication is a crucial area where data transmission happens between the satellite and the ground station in wireless mode. Data quality is essential for these applications. The Consultative Committee for Space Data Systems (CCSDS) has formulated the standards to make sure the data communication happens without any loss. The systems that are deployed on the ground station are called Telemetry Receivers. The receiver's functionality is to Down-convert the IF signal received and apply PSK Demodulation on it. The baseband data thus obtained is Decoded and Frame Synchronization is done to provide the actual data to the user for analysis. Telemetry is the process of receiving data or measurements from a remote location to the ground control station.

The outcome of this article is to provide the user with knowledge of satellite communication and provide the steps for configuring a Low Data Rate Telemetry Receiver using NI LabVIEW and NI Modulation Toolkit to develop the Telemetry Receiver application.

Prerequisite

A basic knowledge on Telemetry System & Satellite Communications and Modulation-Demodulation is required to understand the concepts. LabVIEW programming and NI hardware tool understanding is required.

NI Scope Configuration

  1. Install LabVIEW 2018 or later in a system with Windows OS. Install NI Modulation toolkit and ensure the installed modulation toolkit is compatible with the installed LabVIEW version.
  2. Install NI-Scope drivers in the system.
  3.  Open LabVIEW and create a new VI by navigating to File >> New VI.
  4. On the block diagram navigate to the Instrument I/O >> Instr Drivers >> NI-Scope in the functions palette and pin the NI-Scope driver palette on the block diagram.
Scope Drivers.png
  1. Initialize the hardware session by using the NI-Scope drivers as explained belowHardware Init.png
  2. Open a session of the oscilloscope by calling the niScope Initialize.vi and select the resource name as PXI 5122.
  3. Configure the niScope Configure Vertical.vi by selecting the Vertical Range (V) and Coupling.
  4. Configure the niScope Configure Horizontal Timing.vi by selecting Min. Sampling Rate.
  5. Configure the niScope Configure Trigger (poly).vi as Software Ref Trigger. Upon trigger, the oscilloscope will continue sampling until stopped.
  6. Initiate the acquisition by calling the niScope Initiate Acquisition.vi. The oscilloscope starts acquiring data at this point.
  7. Set the Fetch Relative to property node to Read Pointer. It will start at the beginning of the buffer and continue from the last point read. This is used to start acquisition from the last acquired point.
  8. Verify the hardware control configurations on the front panel is shown below:
Hardware Config.png
  1. Start acquiring the data using the ni Scope Fetch (poly).vi. Select the acquisition data type as Waveform Data - WD
WDT type.png

Demodulator Configuration

  1. Navigate to RF Communications >> Modulation >> Digital >> Demodulation >> MT Downconvert.vi in the Functions Palette.
  2. Configure the Carrier Frequency and Passband Bandwidth of MT Downconvert.vi to down-convert the IF signal received to zero IF frequency.
  3. Navigate to RF Communications >> Modulation >> Digital >> IQ Resample (MT Resample (complex Cluster) .vi and configure the desired sample rate (Hz) control as per the Data Rate (preferably 8 times the Data Rate).
  4. Navigate to RF Communications >> Modulation >> Digital >> Demodulation >> MT Demodulate PSK.vi in the Functions Palette and configure the Matched filter coefficients, Pulse shaping filter coefficients, and PSK system parameters. The output of this vi is the demodulated bit stream.Demod.png
  5. The inputs to this MT Demodulate PSK.vi is given from the MT Generate Filter Coefficients.vi
  6. Configure the controls of the MT Generate Filter Coefficients.vi with the values shown :FIlter Configuration.png
  7. Configure the demodulator parameters on the front panel as shown :
    1. PSK Type as normal,
    2. Samples Per Symbol as 8,
    3. TX filter as Root Raised Cosine,
    4. M-PSK type as 2,
    5. TX Filter Alpha as 0.5.
Modulation Controls.png
  1. To plot the constellation connect the output of the MT Demodulate PSK.vi to the MT Format Constellation.vi  and the path to navigate is RF Communications >> Modulation >> Digital >> Visualization >> Constellation.
  2. To test the functionality of the Telemetry Receiver feed a PSK modulated signal to the input CH0/CH1 of Oscilloscope PXI 5122.
  3. To check the demodulator functionality the constellation should be locked as shown in the figure below.
Constellation.png
  1. Once the Demodulation is done to get the actual data for user analysis, the output bitstream should be processed through Frame Synchronization code.

Frame Synchronization Code Performs the following Actions

  1. Configure the sync pattern and convert it into bits (0 and 1). Sync pattern is a numeric control that is appended to the data bits of PSK modulated signal. This will be used as starting point from which the demodulated bits have to be decoded. Sync Pattern has to be specified in the hexadecimal format and the user should know the sync pattern which is appended in the message bits of the PSK modulated Signal.
Sync Bits.png
  1. The output of this block is the sync bits of 0 and 1s, and also the inverted bit pattern of 1 and 0's. 
  2. The Frame Synchronization logic can be implemented as shown below:FS Software IP.png
  3. The output of the MT Demodulate PSK.vi is the output bitstream and Frequency offset.
  4. The frequency offset should be less than the data rate control. If the frequency offset value is greater than the data rate then the output of the demodulator is not accurate upon which the Frame Synchronization is not applied to the data.
  5. Check Sync block is used to detect the sync pattern.
  6. In every iteration, the data acquired should be equal to the data rate, if not the data size is made equal.
  7. Once the sync pattern is detected, the particular index of the bit stream array is identified as the starting bit of the packet. So from that index packet is constructed as per the packet size.
  8. The Repacketize block ensures the packet size is the same as configured by handling the data bits from present and previous packets.
  9. Once the data packet is acquired, the frame synchronization code searches for the sync pattern. 
  10. If the sync matches with the sync pattern configured then the indicators on the front panel - Frame Sync Lock is enabled.
  11. Sync Pattern, Frame Number, Analog data, Digital data, and user data are extracted and displayed to the user for analysis.Extract Data.pngTelemetry Rx Code.png
  12. After configuring the controls as specified above, Run the VI.

Once the above configurations are performed, the proper functionality of the software is observed.
  1. Sync Pattern configured in the Transmitter VI is detected in the Sync Detected indicator of the Telemetry Receiver VI.
  2. The indicators Frame Number, Analog Data, Digital Data, and Data displayed in the text box in the Telemetry Receiver VI are the same as configured in the Telemetry Transmitter VI.
  3. Frame Lock, Constellation Lock, and Data displayed in the textbox are verified by the Telemetry Receiver functionality.UI.png