LTE Waveform Generation and Transmission Using Quick Control RF Signal Generator
This example shows how an over-the-air LTE waveform can be generated and transmitted using LTE Toolbox™, Instrument Control Toolbox™ and Keysight Technologies® RF instruments.
Introduction
In this example LTE Toolbox is used to generate a standard baseband IQ downlink test model (E-TM) waveform. Using Instrument Control Toolbox, the generated waveform is downloaded to Keysight Technologies N5172B signal generator for over-the-air transmission. The over-the-air signal is captured using an Keysight Technologies N9010A signal analyzer.
For more information on LTE waveform generation and analysis, refer to Waveform Generation and Transmission Using LTE Toolbox with Test and Measurement Equipment (LTE Toolbox).
Requirements
To run this example you need:
Keysight Technologies N5172B signal generator
Keysight Technologies N9010A signal analyzer
Keysight VISA version 17.3
IVI-C driver for Keysight Technologies N5172B signal generator
National Instruments™ IVI® compliance package version 16.0.1.2 or higher
LTE Toolbox
Instrument Control Toolbox
Generate a Baseband Waveform Using the LTE Toolbox
Generate test model waveform using lteTestModelTool
(LTE Toolbox), this returns an E-TM time-domain waveform, waveform
, a 2-D numeric array of resource elements for a number of subframes across a single antenna port, tmgrid
, and a scalar structure, tmconfig
, containing information about the OFDM modulated waveform.
config = lteTestModel('1.1', '5MHz'); % Test Model number 1.1, 5MHz bandwidth config.TotSubframes = 100; % Generate 100 subframes [waveform, tmgrid, tmconfig] = lteTestModelTool(config);
The frequency spectrum of the generated time domain waveform, waveform
, can be viewed using spectrumAnalyzer
(DSP System Toolbox). As expected, the 5MHz signal bandwidth is clearly visible at baseband.
% Calculate the spectral content in the LTE signal spectrumPlotTx = spectrumAnalyzer; spectrumPlotTx.SampleRate = tmconfig.SamplingRate; spectrumPlotTx.SpectrumType = 'Power density'; spectrumPlotTx.Method = 'welch'; spectrumPlotTx.PowerUnits = 'dBm'; spectrumPlotTx.RBWSource = 'Property'; spectrumPlotTx.RBW = 15e3; spectrumPlotTx.FrequencySpan = 'Span and center frequency'; spectrumPlotTx.Span = 7.68e6; spectrumPlotTx.CenterFrequency = 0; spectrumPlotTx.Window = 'Rectangular'; spectrumPlotTx.SpectralAverages = 10; spectrumPlotTx.YLimits = [-100 -60]; spectrumPlotTx.YLabel = 'PSD'; spectrumPlotTx.Title = 'Test Model E-TM1.1, 5 MHz Signal Spectrum'; spectrumPlotTx.ShowLegend = false; spectrumPlotTx(waveform);
Generate an Over-the-Air Signal using Quick-Control RF Signal Generator
Quick-Control RF Signal Generator is used to download and transmit the test model waveform created by the LTE Toolbox, waveform
, using the Agilent Technologies N5172B signal generator. This creates an RF LTE signal with a center frequency of 1GHz. Note 1GHz was selected as an example frequency and is not intended to be a recognized LTE channel.
Create an RF Signal Generator object
rf = rfsiggen();
Discover all the available instrument resources you can connect to, using the resources
method.
rf.resources
ans = ' ASRL1::INSTR ASRL3::INSTR ASRL::COM1 ASRL::COM3 TCPIP0::172.28.21.217::inst0::INSTR '
Discover all the available instrument drivers, using drivers
method.
rf.drivers
ans = 'Driver: AgRfSigGen_SCPI Supported Models: E4428C, E4438C Driver: RsRfSigGen_SCPI Supported Models: SMW200A, SMBV100A, SMU200A, SMJ100A, AMU200A, SMATE200A Driver: AgRfSigGen Supported Models: E4428C,E4438C,N5181A,N5182A,N5183A,N5171B,N5181B,N5172B N5182B,N5173B,N5183B,E8241A,E8244A,E8251A,E8254A,E8247C'
Set Resource
and Driver
properties before connecting to the object. The IP address of Keysight Technologies N5172B signal generator is 172.28.21.217 , hence the resource specified will be 'TCPIP0::172.28.21.217::inst0::INSTR'
rf.Resource = 'TCPIP0::172.28.21.217::inst0::INSTR'; rf.Driver = 'AgRfSigGen'; % Connect to the instrument connect(rf);
Download the waveform, waveform
, to the instrument
download(rf, transpose(waveform), tmconfig.SamplingRate);
Call start
to start transmitting waveform using specified centerFrequency
, outputPower
and loopCount
. Loop count represents the number of times the waveform should be repeated.
centerFrequency = 1e9; outputPower = 0; loopCount = Inf; start(rf, centerFrequency, outputPower, loopCount);
The frequency spectrum of the RF signal transmitted by the signal generator can be viewed using a spectrum analyzer tuned to the 1GHz center frequency. The screen capture below, from an Agilent Technologies N9010A signal analyzer, clearly shows the 5MHz signal bandwidth.
Clean up
When you have finished transmitting data, stop the waveform output, disconnect the rfsiggen
object from the signal generator, and remove it from the workspace.
stop(rf);
disconnect(rf);
clear rf