SIGLENT TECHNOLOGIES SSG6000A Series Programming Manual

SIGLENT TECHNOLOGIES SSG6000A Series Programming Manual

Microwave signal generator

Advertisement

Quick Links

SSG6000A Series Programming Guide
SSG6000A Series
Microwave Signal Generator
Programming Guide
EN01A
int.siglent.com
1

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the SSG6000A Series and is the answer not in the manual?

Questions and answers

Summary of Contents for SIGLENT TECHNOLOGIES SSG6000A Series

  • Page 1 SSG6000A Series Programming Guide SSG6000A Series Microwave Signal Generator Programming Guide EN01A int.siglent.com...
  • Page 3: Table Of Contents

    SSG6000A Series Programming Guide Contents Programming Overview ..................1 Build communication via VISA ..................1 1.1.1 Install NI-VISA ......................1 1.1.2 Connect the instrument to computer ............... 5 Remote Control ......................7 1.2.1 User-defined Programming ..................7 1.2.2 Send SCPI via NI-MAX ................... 7 1.2.3 Send SCPI over Telnet ..................
  • Page 4 SSG6000A Series Programming Guide 3.4.3 Frequency......................29 3.4.4 Level ........................30 3.4.5 Sweep ........................37 3.4.6 Sensor ........................47 3.4.7 Anolog Modulation....................48 3.4.8 AM ......................... 49 3.4.9 Pulse Modulation ....................51 3.4.10 LF Source ......................61 3.4.11 LF Sweep ......................63 3.4.12 System Preset .......................
  • Page 5: Programming Overview

    SSG6000A Series Programming Guide Programming Overview The SSG6000A Series Signal Generator supports USB, LAN and USB-GPIB interfaces. Through these interfaces, combined with NI-VISA and corresponding programming language, users can use the command set based on SCPI (Standard Commands for Programmable Instruments) to remotely program and control the instrument, and interact with other programmable instruments that support the SCPI command set.
  • Page 6 SSG6000A Series Programming Guide Click Unzip. Then the installation process will launch automatically after unzipping files. If your computer needs to install the .NET Framework 4, it shall auto-start. The NI-VISA install dialog is shown above. Click Next to start the installation process.
  • Page 7 SSG6000A Series Programming Guide Set the installation path. The default path is “C:\Program Files\National Instruments\”. You can also modify the installation path. Click Next and the dialog box will appear as shown below. Click Next twice. In the License Agreement dialog, select “I accept the above 2 License Agreement(s).”...
  • Page 8 SSG6000A Series Programming Guide Click Next to begin installation. Now the installation is complete. Reboot your computer. int.siglent.com...
  • Page 9: Connect The Instrument To Computer

    SSG6000A Series Programming Guide 1.1.2 Connect the instrument to computer The signal generator may be able to communicate with the computer through the USB, LAN or USB- GPIB interface. 1.1.2.1 Connect using USB interface Please refer to the following steps to finish the connection via the USB interface: Install NI-VISA on your computer to obtain the USB-TMC driver.
  • Page 10 SSG6000A Series Programming Guide Turn on the signal generator. Press UTILITY → Interface and enter the GPIB number in GPIB Address. The signal generator will be automatically detected as a new GPIB device. int.siglent.com...
  • Page 11: Remote Control

    SSG6000A Series Programming Guide Remote Control 1.2.1 User-defined Programming Users can send SCPI commands through the computer to program and control the signal generator. For details, please refer to the introduction in the “Programming Examples” chapter. 1.2.2 Send SCPI via NI-MAX NI-MAX is a program created and maintained by National Instruments.
  • Page 12 SSG6000A Series Programming Guide 1.2.2.2 Using LAN Run NI-MAX. Click “Devices and Interfaces” > “Network Devices” in the upper left corner of the software. Click “Add Network Device” > “VISA TCP/IP Resource…”. In the pop-up “Create New...” window, select "Manual Entry of LAN Instrument" and then click Next.
  • Page 13 SSG6000A Series Programming Guide Enter the IP address of the signal generator in "Hostname or IP address". You can click "Validate" to verify whether the device can be connected via the entered IP. Click "Finish" to establish the connection. After a short scan, the resource name of the signal generator should be displayed under "Network Devices".
  • Page 14 SSG6000A Series Programming Guide Select the signal generator device and click the “Open VISA Test Panel” button. Select the “Input/Output” page in the VISA test panel. At this time, you can enter SCPI in the input field to write or query. Click the “Query” button as shown below to query the device’s IDN: 1.2.2.3...
  • Page 15 SSG6000A Series Programming Guide Select the “Configuration” > “I/O Settings” in the VISA test panel. Check the Enable Termination Character option, and click Apply Changes button. Select the “Input/Output” page in the VISA test panel. At this time, you can enter SCPI in the input field to write or query.
  • Page 16: Send Scpi Over Telnet

    SSG6000A Series Programming Guide 1.2.3 Send SCPI over Telnet Telnet provides a way to communicate with the signal generator through the LAN interface. The Telnet protocol supports sending SCPI commands from the computer to the signal generator in a manner similar to communicating with the signal generator via USB.
  • Page 17: Send Scpi Over Socket

    SSG6000A Series Programming Guide Press Ctrl+] keys simultaneously to exit the SCPI session with the instrument. To re-enter the SCPI session with the instrument, you can enter open <ip Address> 5024 and press Enter. To close the Telnet window, type Quit and press Enter.
  • Page 18: Introduction To The Scpi Language

    SSG6000A Series Programming Guide Introduction to the SCPI Language Command Format SCPI commands are tree-like hierarchical structures, including multiple subsystems. Each subsystem consists of a root keyword and one or several hierarchical keywords. The command line usually starts with a colon “:” and keywords are separated by a colon “:”. The keyword is followed by optional parameter settings.
  • Page 19: Parameter Type

    SSG6000A Series Programming Guide In the [:SOURce]:AM:STATe OFF|ON|0|1 command, the optional command parameters are "OFF", "ON", "0" or "1". Braces { } Parameters in braces are optional and may not be set, or may be set once or multiple times. For example: In the :CALCulate:LLINe[1]|2:DATA <x-axis>,<ampl>{,<x-axis>,<ampl>} command,...
  • Page 20: Command Abbreviation

    SSG6000A Series Programming Guide For example: In [:SOURce]:POWer:OFFSet <value> command, the parameter <value> can be set to any real number between -100 and 100. String The parameter should be the combination of ASCII characters. For example: In :SYSTem:COMMunicate:LAN:IPADdress <“xxx.xxx.xxx.xxx”> command, the IP address can be set as the string “192.168.1.12”.
  • Page 21: Commands

    SSG6000A Series Programming Guide Commands IEEE 488.2 Common Commands The IEEE standards defined the common commands used for querying the basic information of the instrument and performing basic operations. These commands usually start with "*" and the length of the command keyword is usually 3 characters.
  • Page 22: Standard Event Status Register Query (*Esr?)

    SSG6000A Series Programming Guide DATA TYPE Integer RANGE 0 to 255 EQUIVALENT MENU None EXAMPLE *ESE 16 *ESE? Return: 16\n 3.1.5 Standard Event Status Register Query (*ESR?) SYNTAX *ESR? DESCRIPTION This command reads the value of the Standard Event Status Register.
  • Page 23: Status Byte Query (*Stb?)

    SSG6000A Series Programming Guide *SRE? Return: 24\n 3.1.8 Status Byte Query (*STB?) SYNTAX *STB? DESCRIPTION This command reads the value of Status Byte Register. EQUIVALENT MENU None EXAMPLE *STB? Return: 72\n 3.1.9 Wait-to-Continue (*WAI) SYNTAX *WAI DESCRIPTION This command waits for the execution of all objects sent before this command to be completed.
  • Page 24: System Commands

    SSG6000A Series Programming Guide SYSTem Commands 3.2.1 System Configuration 3.2.1.1 System Time (:SYSTem:TIME) SYNTAX :SYSTem:TIME <hhmmss> :SYSTem:TIME? DESCRIPTION This command sets/gets the system time. DATA TYPE String RANGE Hours(0 ~ 23), minutes(0 ~ 59), seconds(0 ~ 59) RETURN String EQUIVALENT MENU UTILITY >...
  • Page 25 SSG6000A Series Programming Guide :SYSTem:COMMunicate:LAN:IPADdress “192.168.1.12” EXAMPLE :SYSTem:COMMunicate:LAN:IPADdress? Return: “192.168.1.12”\n 3.2.1.4 Gateway (:SYSTem:COMMunicate:LAN:GATeway) SYNTAX :SYSTem:COMMunicate:LAN:GATeway <“xxx.xxx.xxx.xxx”> :SYSTem:COMMunicate:LAN:GATeway? DESCRIPTION This command sets/gets the gateway of the device when the IP assignment is set to Static. DATA TYPE String RANGE Conforms to the IP address standard (0-255:0-255:0-255:0-255)
  • Page 26 SSG6000A Series Programming Guide EXAMPLE :SYSTem:COMMunicate:LAN:TYPE STATIC :SYSTem:COMMunicate:LAN:TYPE? Return: STATIC\n 3.2.1.7 Language (SYSTem:LANGuage) SYNTAX :SYSTem:LANGuage CHINese|ENGLish :SYSTem:LANGuage? DESCRIPTION This command sets/gets the system language. DATA TYPE Enumeration RANGE CHINese|ENGLish RETURN Enumeration EQUIVALENT MENU UTILITY > Setting > Language EXAMPLE :SYSTem:LANGuage CHINese...
  • Page 27 SSG6000A Series Programming Guide RETURN DEFAULT VALUE EQUIVALENT MENU UTILITY > Setting > Beeper EXAMPLE :SYSTem:ALARm ON :SYSTem:ALARm? Return: 3.2.1.10 Setup Type (:SYSTem:PON:TYPE) SYNTAX :SYSTem:PON:TYPE DFT|LAST :SYSTem:PON:TYPE? DESCRIPTION This command sets/gets the system startup type. DATA TYPE Enumeration RANGE DFT|LAST...
  • Page 28 SSG6000A Series Programming Guide DESCRIPTION This command sets/gets the state of system 10M adjustment. DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT MENU UTILITY > Setting > 10M Adjustment EXAMPLE :SYSTem:REF:DAC:STAT ON :SYSTem:REF:DAC:STAT? Return: 3.2.1.13 Ref Osc Code (:SYSTem:REF:DAC) SYNTAX :SYSTem:REF:DAC <value>...
  • Page 29 SSG6000A Series Programming Guide DATA TYPE String RANGE None EQUIVALENT MENU UTILITY > Setting > 10M Adjustment > Recall Ref Osc Setting :SYSTem:REF:DAC:LOAD “U-disk3/test.dac” EXAMPLE 3.2.1.16 Reset Ref Osc Code to Default (:SYSTem:REF:DAC:DEFault) SYNTAX :SYSTem:REF:DAC:DEFault DESCRIPTION This command resets the reference oscillator code to default value.
  • Page 30: System Reset/Preset

    SSG6000A Series Programming Guide 3.2.2 System Reset/Preset 3.2.2.1 System Preset (:SYSTem:PRESet) SYNTAX :SYSTem:PRESet DESCRIPTION This command presets the status of the instrument based on the preset type. EQUIVALENT MENU UTILITY > Preset, or PRESET EXAMPLE Reset the instrument to its default configuration:...
  • Page 31 SSG6000A Series Programming Guide 3.2.2.4 Preset Type (:SYSTem:PRESet:TYPE) SYNTAX :SYSTem:PRESet:TYPE DFT|USER :SYSTem:PRESet:TYPE? DESCRIPTION This command sets/gets the preset type of the system. DATA TYPE Enumeration RANGE DFT|USER RETURN Enumeration DEFAULT VALUE EQUIVALENT MENU UTILITY > Setting > Preset Type EXAMPLE...
  • Page 32: Output Commands

    SSG6000A Series Programming Guide OUTPut Commands 3.3.1 RF Output (:OUTPut[:STATe]) SYNTAX :OUTPut[:STATe] ON|OFF|1|0 :OUTPut[:STATe]? DESCRIPTION This command sets/gets the output status of the RF port. DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT SCPI [:SOURce]:OUTPut ON|OFF|1|0 EQUIVALENT MENU RF ON/OFF or FREQ > RF State...
  • Page 33: Source Commands

    SSG6000A Series Programming Guide SOURce Commands 3.4.1 RF Output ([:SOURce]:OUTPut) SYNTAX [:SOURce]:OUTPut ON|OFF|1|0 DESCRIPTION This command sets the output status of the RF port. DATA TYPE Boolean RANGE ON|OFF|1|0 EQUIVALENT SCPI :OUTPut[:STATe] ON|OFF|1|0 EQUIVALENT MENU RF ON/OFF or FREQ > RF State...
  • Page 34: Level

    SSG6000A Series Programming Guide 3.4.3.2 Frequency ([:SOURce]:FREQuency) SYNTAX [:SOURce]:FREQuency <freq> [:SOURce]:FREQuency? DESCRIPTION This command sets/gets the frequency of the RF output signal. DATA TYPE Float, unit: Hz, kHz, MHz or GHz, default is Hz RANGE Full frequency range RETURN Float, unit: Hz...
  • Page 35 SSG6000A Series Programming Guide DEFAULT VALUE -130 dBm EQUIVALENT MENU Level EXAMPLE :POWer:POWer -2 :POWer:POWer? Return: -2\n 3.4.4.2 Level ([:SOURce]:POWer) SYNTAX [:SOURce]:POWer <power> [:SOURce]:POWer? DESCRIPTION This command sets/gets the level of the RF output signal. DATA TYPE Float, unit: dBm, dBuV, uV, mV, V, nW, uW, mW or W, default is dBm...
  • Page 36 SSG6000A Series Programming Guide DATA TYPE Float, unit: dB RANGE -100 dB to 100 dB RETURN Float, unit: dB DEFAULT VALUE EQUIVALENT MENU LEVEL > Level Offset EXAMPLE :POWer:OFFSet 2 :POWer:OFFSet? Return: 3.4.4.5 ALC State ([:SOURce]:POWer:ALC) SYNTAX [:SOURce]:POWer:ALC ON|OFF|AUTO [:SOURce]:POWer:ALC? DESCRIPTION This command sets/gets the ALC state.
  • Page 37 SSG6000A Series Programming Guide 3.4.4.7 Flatness List Add Row ([:SOURce]:CORRection:FLATness:PAIR) SYNTAX [:SOURce]:CORRection:FLATness:PAIR <freq>,<power> DESCRIPTION This command adds a line to the flatness list. DATA TYPE Freq: float, unit: Hz, kHz, MHz or GHz, default is Hz, Power: float, unit: dB...
  • Page 38 SSG6000A Series Programming Guide 3.4.4.11 Flatness List Load ([:SOURce]:CORRection:LOAD) [:SOURce]:CORRection:LOAD <”file_name”> SYNTAX DESCRIPTION This command loads the flatness list from the file. DATA TYPE String RANGE None EQUIVALENT MENU LEVEL > Flatness > Open :CORRection:LOAD “U-disk3/test.uflt” EXAMPLE 3.4.4.12 Flatness List Clear ([:SOURce]:CORRection:FLATness:PRESet)
  • Page 39 SSG6000A Series Programming Guide RETURN Float, unit: Hz DEFAULT VALUE Maximum frequency EQUIVALENT MENU LEVEL > Flatness > Setting > Fill Type (Manual Step) > Start Freq EXAMPLE :CORRection:FLATness:STARtfreq 200 MHz :CORRection:FLATness:STARtfreq? Return: 200000000\n 3.4.4.15 Flatness List Stop Freq ([:SOURce]:CORRection:FLATness:STOPfreq) SYNTAX [:SOURce]:CORRection:FLATness:STOPfreq <freq>...
  • Page 40 SSG6000A Series Programming Guide 3.4.4.17 Flatness List Linear Step ([:SOURce]:CORRection:FLATness:LINStep) SYNTAX [:SOURce]:CORRection:FLATness:LINStep <freq> [:SOURce]:CORRection:FLATness:LINStep? DESCRIPTION This command sets/queries the linear frequency step of manual step filling. DATA TYPE Float, unit: Hz, kHz, MHz or GHz, default is Hz RETURN Float, unit: Hz...
  • Page 41: Sweep

    SSG6000A Series Programming Guide Return: 3.4.4.20 Fill Flatness with Sensor ([:SOURce]:CORRection:CSET:DATA[:SENSor][:POWer]:SONCe) SYNTAX [:SOURce]:CORRection:CSET:DATA[:SENSor][:POWer]:SONCe DESCRIPTION Amplitude correction values to populate flatness list with power sensor. EQUIVALENT MENU LEVEL > Flatness > Setting > Fill Flatness with Sensor EXAMPLE :CORRection:CSET:DATA:SONCe 3.4.5 Sweep 3.4.5.1...
  • Page 42 SSG6000A Series Programming Guide EXAMPLE :SWEep:TYPE STEP :SWEep:TYPE? Return: STEP\n 3.4.5.3 Start Frequency ([:SOURce]:SWEep:STEP:STARt:FREQuency) SYNTAX [:SOURce]:SWEep:STEP:STARt:FREQuency <freq> [:SOURce]:SWEep:STEP:STARt:FREQuency? DESCRIPTION This command sets/queries the starting frequency of step sweep. DATA TYPE Float, unit: Hz, kHz, MHz or GHz, default is Hz...
  • Page 43 SSG6000A Series Programming Guide RETURN Float, unit: dBm DEFAULT VALUE -130 dBm EQUIVALENT MENU SWEEP > Step Sweep > Start Level EXAMPLE :SWEep:STEP:STARt:LEVel 0 dBm :SWEep:STEP:STARt:LEVel? Return: 3.4.5.6 Stop Level ([:SOURce]:SWEep:STEP:STOP:LEVel) SYNTAX [:SOURce]:SWEep:STEP:STOP:LEVel <level> [:SOURce]:SWEep:STEP:STOP:LEVel? DESCRIPTION This command sets/queries the stop level of step sweep.
  • Page 44 SSG6000A Series Programming Guide DESCRIPTION This command sets/queries the sweep points of step sweep. DATA TYPE Integer RANGE 2 to 65535 RETURN Integer DEFAULT VALUE EQUIVALENT MENU SWEEP > Step Sweep > Sweep Points EXAMPLE :SWEep:STEP:POINts 2 :SWEep:STEP:POINts? Return: 3.4.5.9...
  • Page 45 SSG6000A Series Programming Guide 3.4.5.11 Linear Sweep Step ([:SOURce]:SWEep[:FREQuency]:STEP[:LINear]) SYNTAX [:SOURce]:SWEep[:FREQuency]:STEP[:LINear] <freq> [:SOURce]:SWEep[:FREQuency]:STEP[:LINear]? DESCRIPTION This command sets/queries the linear frequency step of the step sweep. DATA TYPE Float, unit: Hz, kHz, MHz or GHz, default is Hz RANGE None RETURN...
  • Page 46 SSG6000A Series Programming Guide EXAMPLE :SWEep:LIST:ADDList 1 GHz,0 dBm,1 s 3.4.5.14 Sweep List Delete Row ([:SOURce]:SWEep:LIST:DELete) SYNTAX [:SOURce]:SWEep:LIST:DELete <row> DESCRIPTION This command removes a specified row from the sweep list. DATA TYPE Integer RANGE 1 ~ total number of rows in the sweep list EQUIVALENT MENU SWEEP >...
  • Page 47 SSG6000A Series Programming Guide DESCRIPTION This command queries the data from begin_row to end_row in the sweep list. DATA TYPE Integer, Integer RANGE 1 ~ total number of rows in the sweep list, Start row ~ total number of rows in the sweep list...
  • Page 48 SSG6000A Series Programming Guide DATA TYPE String RANGE None EQUIVALENT MENU SWEEP > List Sweep > Save :SWEep:STORe “U-disk3/test.lsw” EXAMPLE 3.4.5.22 Sweep Direction ([:SOURce]:SWEep:DIRect) SYNTAX [:SOURce]:SWEep:DIRect FWD|REV [:SOURce]:SWEep:DIRect? DESCRIPTION This command sets/queries the sweep direction. DATA TYPE Enumeration RANGE FWD|REV...
  • Page 49 SSG6000A Series Programming Guide sweep. EQUIVALENT MENU SWEEP > Execute single sweep EXAMPLE :SWEep:EXECute 3.4.5.25 Trigger Mode ([:SOURce]:SWEep:SWEep:TRIGger:TYPE) SYNTAX [:SOURce]:SWEep:SWEep:TRIGger:TYPE AUTO|KEY|BUS|EXT [:SOURce]:SWEep:SWEep:TRIGger:TYPE? DESCRIPTION This command sets/queries the sweep trigger mode. DATA TYPE Enumeration RANGE AUTO|KEY|BUS|EXT RETURN Enumeration DEFAULT VALUE AUTO EQUIVALENT MENU SWEEP >...
  • Page 50 SSG6000A Series Programming Guide RANGE POSitive|NEGative RETURN Enumeration DEFAULT VALUE POSitive EQUIVALENT MENU SWEEP > Trigger Slope EXAMPLE :INPut:TRIGger:SLOPe NEGative :INPut:TRIGger:SLOPe? Return: NEGative\n 3.4.5.28 Get Current Sweep Point ([:SOURce]:SWEep:CURRent:DATA?) SYNTAX [:SOURce]:SWEep:CURRent:DATA? DESCRIPTION This command queries the current sweep point. RETURN...
  • Page 51: Sensor

    SSG6000A Series Programming Guide DEFAULT VALUE None EQUIVALENT MENU Display level at the top of the screen EXAMPLE :SWEep:CURRent:LEVel? Return: 0.000000\n 3.4.6 Sensor 3.4.6.1 Level Control ([:SOURce]:POWer:SPC:STATe) SYNTAX [:SOURce]:POWer:SPC:STATe ON|OFF|1|0 [:SOURce]:POWer:SPC:STATe? DESCRIPTION This command sets/queries the level control state of the power sensor.
  • Page 52: Anolog Modulation

    SSG6000A Series Programming Guide 3.4.6.3 Limit Level ([:SOURce]:POWer:LIMit) SYNTAX [:SOURce]:POWer:LIMit <power> [:SOURce]:POWer:LIMit? DESCRIPTION This command sets/queries the Limit level of the power sensor level control. DATA TYPE Float, unit: dBm, dBuV, uV, mV, V, nW, uW, mW or W, default is dBm...
  • Page 53 SSG6000A Series Programming Guide DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT SCPI :OUTPut:MODulation[:STATe] ON|OFF|1|0 :OUTPut:MODulation[:STATe]? EQUIVALENT MENU ANALOG MOD > On EXAMPLE :MODulation ON :MODulation? Return: 3.4.8 3.4.8.1 AM State ([:SOURce]:AM:STATe) SYNTAX [:SOURce]:AM:STATe ON|OFF|1|0 [:SOURce]:AM:STATe? DESCRIPTION This command sets/gets the switch status of amplitude modulation.
  • Page 54 SSG6000A Series Programming Guide EXAMPLE :AM:WAVEform SQUAre :AM:WAVEform? Return: SQUAre\n 3.4.8.3 AM Source ([:SOURce]:AM:SOURce) SYNTAX [:SOURce]:AM:SOURce INTernal|EXTernal|INT,EXT [:SOURce]:AM:SOURce? DESCRIPTION This command sets/queries the modulation source of AM modulation. DATA TYPE Enumeration RANGE INTernal|EXTernal|INT,EXT RETURN Enumeration DEFAULT VALUE INTernal EQUIVALENT MENU MOD >...
  • Page 55: Pulse Modulation

    SSG6000A Series Programming Guide Modulation wave is Square: 0.01 Hz ~ 20 kHz. RETURN Float, unit: Hz DEFAULT VALUE 1 kHz EQUIVALENT MENU MOD > AM > AM Rate EXAMPLE :AM:FREQuency 10 kHz :AM:FREQuency? Return: 10000\n 3.4.8.6 AM Sensitivity ([:SOURce]:AM:SENSitivity?)
  • Page 56 SSG6000A Series Programming Guide DESCRIPTION This command sets/queries the modulation source of pulse modulation. DATA TYPE Enumeration RANGE INTernal|EXTernal RETURN Enumeration DEFAULT VALUE INTernal EQUIVALENT SCPI [:SOURce]:PULM:SOURce:INT INTernal|EXTernal [:SOURce]:PULM:SOURce:INT? EQUIVALENT MENU MOD > PULSE > Pulse Source EXAMPLE :PULM:SOURce INTernal...
  • Page 57 SSG6000A Series Programming Guide EQUIVALENT MENU MOD > PULSE > Pulse Out EXAMPLE :PULM:OUT:STATe ON :PULM:OUT:STATe? Return: 3.4.9.5 Pulse Out Polarity ([:SOURce]:PULM:POLarity) SYNTAX [:SOURce]:PULM:POLarity NORMal|INVerted [:SOURce]:PULM:POLarity? DESCRIPTION This command sets/queries the pulse output polarity. DATA TYPE Enumeration RANGE NORMal|INVerted RETURN...
  • Page 58 SSG6000A Series Programming Guide sets/queries the pulse period. DATA TYPE Float, unit: ns, us, ms or s, default is s RANGE 40 ns ~ 300 s RETURN Float, unit: s DEFAULT VALUE 10 ms EQUIVALENT SCPI [:SOURce]:PULM:INT[1]:PERiod <value> [:SOURce]:PULM:INT[1]:PERiod? EQUIVALENT MENU MOD >...
  • Page 59 SSG6000A Series Programming Guide EQUIVALENT SCPI [:SOURce]:PULM:INT[1]:PWIDth <value> [:SOURce]:PULM:INT[1]:PWIDth? EQUIVALENT MENU MOD > PULSE > Pulse Width EXAMPLE PULM:WIDT 33 us PULM:WIDT? Return: 3.3e-05\n 3.4.9.10 Pulse Width ([:SOURce]:PULM:INT[1]:PWIDth) SYNTAX [:SOURce]:PULM:INT[1]:PWIDth <value> [:SOURce]:PULM:INT[1]:PWIDth? DESCRIPTION When the pulse mode is Single, this command sets/queries the pulse width;...
  • Page 60 SSG6000A Series Programming Guide 3.4.9.12 #2 Width ([:SOURce]:PULM:DOUBle:WIDTh) SYNTAX [:SOURce]:PULM:DOUBle:WIDTh <time> [:SOURce]:PULM:DOUBle:WIDTh? DESCRIPTION When the pulse mode is Double, this command sets/queries the pulse width of the second pulse. DATA TYPE Float, unit: ns, us, ms or s, default is s...
  • Page 61 SSG6000A Series Programming Guide DATA TYPE Row: Integer, On_time: float, unit: ns, us, ms or s, default is s RANGE Row: 1 ~ total number of rows in the pulse train, On_time: 20 ns ~ 300 s EQUIVALENT MENU MOD > PULSE > Pulse Train...
  • Page 62 SSG6000A Series Programming Guide Count: 1 ~ 65535 EQUIVALENT MENU MOD > PULSE > Pulse Train EXAMPLE :PULM:TRAin:CHANGe 2,3 ms,500 ns,4 3.4.9.19 Pulse Train Data ([:SOURce]:PULM:TRAin:LIST?) SYNTAX [:SOURce]:PULM:TRAin:LIST? <begin_row>,<end_row> DESCRIPTION This command queries the data from begin_row to end_row in the pulse train.
  • Page 63 SSG6000A Series Programming Guide DESCRIPTION This command loads the pulse train from the file. DATA TYPE String RANGE None EQUIVALENT MENU MOD > PULSE > Pulse Train > Load PULM:TRAin:LOAD “U-disk3/test.pulstrn” EXAMPLE 3.4.9.23 Pulse Train Store ([:SOURce]:PULM:TRAin:STORE) [:SOURce]:PULM:TRAin:STORE <”file_name”> SYNTAX DESCRIPTION This command saves the pulse train into file.
  • Page 64 SSG6000A Series Programming Guide DEFAULT VALUE AUTO EQUIVALENT MENU MOD > PULSE > Pulse Trigger EXAMPLE :PULM:TRIG:MODE EXTernal :PULM:TRIGger:MODE? Return: EXTernal\n 3.4.9.26 Trigger Delay ([:SOURce]:PULM:DELay) SYNTAX [:SOURce]:PULM:DELay <value> [:SOURce]:PULM:DELay? DESCRIPTION When the pulse trigger mode is EXTernal, this command sets/queries the trigger delay.
  • Page 65: Lf Source

    SSG6000A Series Programming Guide [:SOURce]:PULM:TRIGger:EXTernal:GATE:POLarity? DESCRIPTION This command sets/queries the trigger polarity of the external gating signal for the pulse function. DATA TYPE Enumeration RANGE NORMal|INVerted RETURN Enumeration DEFAULT VALUE NORMal EQUIVALENT MENU MOD > PULSE > Trig Polarity EXAMPLE...
  • Page 66 SSG6000A Series Programming Guide EQUIVALENT MENU LF > LF Source > LF Level EXAMPLE LFOutput:VOLTage 2 Vpp LFOutput:VOLTage? Return: 3.4.10.3 LF Offset ([:SOURce]:LFOutput:OFFSEt) SYNTAX [:SOURce]:LFOutput:OFFSEt <voltage> [:SOURce]:LFOutput:OFFSEt? DESCRIPTION This command sets/queries the amplitude offset of the LF output signal. DATA TYPE...
  • Page 67: Lf Sweep

    SSG6000A Series Programming Guide DESCRIPTION This command sets/queries the wave shape of the LF output signal. DATA TYPE Enumeration RANGE SINE|SQUare|TRIangle|SAWTooth|DC RETURN Enumeration DEFAULT VALUE SINE EQUIVALENT MENU LF > LF Source > LF Shape EXAMPLE :LFOutput:SHAPe TRIangle :LFOutput:SHAPe? Return: TRIangle\n 3.4.10.6...
  • Page 68 SSG6000A Series Programming Guide Return: 3.4.11.2 Sweep Direction ([:SOURce]:LFOutput:SWEep:DIRect) SYNTAX [:SOURce]:LFOutput:SWEep:DIRect UP|DOWN [:SOURce]:LFOutput:SWEep:DIRect? DESCRIPTION This command sets/queries the direction of LF sweep. DATA TYPE Enumeration RANGE UP|DOWN RETURN Enumeration DEFAULT VALUE EQUIVALENT MENU LF > LF Sweep > Direction EXAMPLE...
  • Page 69 SSG6000A Series Programming Guide RETURN Float, unit: Hz DEFAULT VALUE 1.5 kHz EQUIVALENT MENU LF > LF Sweep > Stop Freq EXAMPLE :LFOutput:SWEep:STOP:FREQuency 1000 :LFOutput:SWEep:STOP:FREQuency? Return: 1000\n 3.4.11.5 Center Freq ([:SOURce]:LFOutput:SWEep:CENTer:FREQuency) SYNTAX [:SOURce]:LFOutput:SWEep:CENTer:FREQuency <freq> [:SOURce]:LFOutput:SWEep:CENTer:FREQuency? DESCRIPTION This command sets/queries the center frequency of LF sweep.
  • Page 70 SSG6000A Series Programming Guide 3.4.11.7 Sweep Time ([:SOURce]:LFOutput:SWEep:DWELl) SYNTAX [:SOURce]:LFOutput:SWEep:DWELl <time> [:SOURce]:LFOutput:SWEep:DWELl? DESCRIPTION This command sets/queries the sweep time of LF sweep. DATA TYPE Float, unit: ns, us, ms or s, default is s RANGE 1 ms ~ 500 s...
  • Page 71: System Preset

    SSG6000A Series Programming Guide :LFOutput:SWEep:XPOLar? Return: POS\n 3.4.11.10 Sweep Shape ([:SOURce]:LFOutput:SWEep:SHAPe) SYNTAX [:SOURce]:LFOutput:SWEep:SHAPe TRIangle|SAWTooth [:SOURce]:LFOutput:SWEep:SHAPe? DESCRIPTION This command sets/queries the sweep shape of LF sweep. DATA TYPE Enumeration RANGE TRIangle|SAWTooth RETURN Enumeration DEFAULT VALUE SAWTooth EQUIVALENT MENU LF > LF Sweep > Sweep Shape...
  • Page 72: Sense Commands

    SSG6000A Series Programming Guide SENSe Commands 3.5.1 Power Sensor 3.5.1.1 Sensor Info (:SENSe[:POWer]:TYPE?) SYNTAX :SENSe[:POWer]:TYPE? DESCRIPTION This command queries the model of the power sensor connected to the signal generator. RETURN String DEFAULT VALUE None EQUIVALENT MENU HOME > POWER SENSOR > Sensor Info...
  • Page 73 SSG6000A Series Programming Guide 3.5.1.4 Statistics State (:SENSe[:POWer]:STATIStics:STATe) SYNTAX :SENSe[:POWer]:STATIStics:STATe ON|OFF|1|0 :SENSe[:POWer]:STATIStics:STATe? DESCRIPTION This command sets/queries the measurement statistics status of the power sensor. DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT MENU HOME > POWER SENSOR > Statistics...
  • Page 74 SSG6000A Series Programming Guide 3.5.1.7 Statistics Min Value (:SENSe[:POWer]:STATIStics:MIN?) SYNTAX :SENSe[:POWer]:STATIStics:MIN? DESCRIPTION This command queries the minimum value of the power sensor measurement statistics. RETURN Float, unit: dBm. DEFAULT VALUE None EQUIVALENT MENU HOME > POWER SENSOR > Statistics > min...
  • Page 75 SSG6000A Series Programming Guide EXAMPLE SENSe:STATIStics:CLEAr 3.5.1.11 Level Control (:SENSe[:POWer]:LEV:CTL:STATe) SYNTAX :SENSe[:POWer]:LEV:CTL:STATe ON|OFF|1|0 :SENSe[:POWer]:LEV:CTL:STATe? DESCRIPTION This command sets/queries the level control state of the power sensor. DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT SCPI [:SOURce]:POWer:SPC:STATe ON|OFF|1|0 [:SOURce]:POWer:SPC:STATe? EQUIVALENT MENU HOME >...
  • Page 76 SSG6000A Series Programming Guide DESCRIPTION This command sets/queries the Limit level of the power sensor level control. DATA TYPE Float, unit: dBm, dBuV, uV, mV, V, nW, uW, mW or W, default is dBm RANGE -120 dBm ~ 20 dBm...
  • Page 77 SSG6000A Series Programming Guide EQUIVALENT MENU HOME > POWER SENSOR > Auto Zero EXAMPLE :CALibration:ZERO:TYPE EXTernal :CALibration:ZERO:TYPE? Return: EXTernal\n 3.5.1.16 Zeroing (:SENSe[:POWer]:ZERO) SYNTAX :SENSe[:POWer]:ZERO DESCRIPTION This command performs a zeroing operation on the power sensor. EQUIVALENT MENU HOME > POWER SENSOR > Click to perform zeroing...
  • Page 78 SSG6000A Series Programming Guide Return: 1000000\n 3.5.1.19 Level Offset State (:SENSe[:POWer]:OFFSet:STATe) SYNTAX :SENSe[:POWer]:OFFSet:STATe ON|OFF|1|0 :SENSe[:POWer]:OFFSet:STATe? DESCRIPTION This command sets/queries the level offset state of the power sensor. DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT MENU HOME > POWER SENSOR > Level Offset...
  • Page 79 SSG6000A Series Programming Guide RETURN Enumeration DEFAULT VALUE AUTO EQUIVALENT MENU HOME > POWER SENSOR > Averaging EXAMPLE SENSe:FILTer:TYPE USER SENSe:FILTer:TYPE? Return: USER\n 3.5.1.22 Average Times (:SENSe[:POWer]:FILTer:LENGth) SYNTAX :SENSe[:POWer]:FILTer:LENGth <length> :SENSe[:POWer]:FILTer:LENGth? DESCRIPTION This command sets/queries the average number of measurements of the power sensor.
  • Page 80 SSG6000A Series Programming Guide 3.5.1.24 Logging (:SENSe[:POWer]:LOGGing:STATe) SYNTAX :SENSe[:POWer]:LOGGing:STATe ON|OFF|1|0 :SENSe[:POWer]:LOGGing:STATe? DESCRIPTION This command sets/queries the logging status of the power sensor. DATA TYPE Boolean RANGE ON|OFF|1|0 RETURN DEFAULT VALUE EQUIVALENT MENU HOME > POWER SENSOR > Logging EXAMPLE SENSe:LOGGing:STATe ON...
  • Page 81: Programming Examples

    SSG6000A Series Programming Guide Programming Examples This chapter provides some examples for programmers. In these examples you can see how to use VISA or Sockets and the above SCPI commands to control a signal generator. By following these examples, you can develop more applications.
  • Page 82 SSG6000A Series Programming Guide Set the include directory of library files. The default installation path of NI-VISA library files is “C:\Program Files\IVI Foundation\VISA\Win64\Lib_x64\msc”. Fill in the library file installation path in Project --- Properties --- Linker --- General --- Additional library directory, as shown below: Set up library files.
  • Page 83 SSG6000A Series Programming Guide Finally, reference the header file in the project .cpp file: #include <visa.h> Add code (1) USBTMC access code Write a function Usbtmc_test: Usbtmc_test() /* This code demonstrates sending synchronous read & write commands */ /* to an USB Test & Measurement Class (USBTMC) instrument using */ /* NI-VISA /* The example writes the "*IDN?\n"...
  • Page 84 SSG6000A Series Programming Guide unsigned char buffer[100]; /** First we must call viOpenDefaultRM to get the manager * handle. We will store this handle in defaultRM.*/ status = viOpenDefaultRM (&defaultRM); (status<VI_SUCCESS) printf ("Could not open a session to the VISA Resource Manager!\n");...
  • Page 85 SSG6000A Series Programming Guide * asking for the device's identification. */ char * cmmand ="*IDN?\n"; status = viPrintf (instr, cmmand); (status<VI_SUCCESS) printf ("Error writing to the device %d.\n", i+1); status = viClose (instr); continue; /** Now we will attempt to read back a response from the device to * the identification query that was sent.
  • Page 86 SSG6000A Series Programming Guide (2) TCP/IP access code Write a function TCP_IP_Test: int TCP_IP_Test(char *pIP) char outputBuffer[VI_FIND_BUFLEN]; ViSession defaultRM, instr; ViStatus status; /* First we will need to open the default resource manager. */ status = viOpenDefaultRM (&defaultRM); (status<VI_SUCCESS) printf("Could not open a session to the VISA Resource Manager!\n");...
  • Page 87: Vb Example

    SSG6000A Series Programming Guide else printf ("\nMesseage read from device: %*s\n", 0,outputBuffer); status = viClose (instr); status = viClose (defaultRM); printf("Press 'Enter' to exit."); fflush(stdin); getchar(); return int _tmain(int argc, _TCHAR* argv[]) printf("Please input IP address:"); char ip[256]; fflush(stdin); gets(ip);...
  • Page 88 SSG6000A Series Programming Guide program. Add code (1) USBTMC access code Write a function Usbtmc_test: Private Function Usbtmc_test() As Long ' This code demonstrates sending synchronous read & write commands ' to an USB Test & Measurement Class (USBTMC) instrument using ' NI-VISA ' The example writes the "*IDN?\n"...
  • Page 89 SSG6000A Series Programming Guide status = viOpenDefaultRM(defaultRM) (status < VI_SUCCESS) Then resultTxt.Text = "Could not open a session to the VISA Resource Manager!" Usbtmc_test = status Exit Function End If ' Find all the USB TMC VISA resources in our system and store the ' number of resources in the system in numInstrs.
  • Page 90 SSG6000A Series Programming Guide End If ' Now we will attempt to read back a response from the device to ' the identification query that was sent. We will use the viRead ' function to acquire the data. ' After the data has been read the response is displayed.
  • Page 91 SSG6000A Series Programming Guide resultTxt.Text = "An error occurred opening the session" viClose(defaultRM) TCP_IP_Test = status Exit Function End If status = viWrite(instrsesn, "*IDN?", 5, count) (status < VI_SUCCESS) Then resultTxt.Text = "Error writing to the device." End If status = viRead(instrsesn, outputBuffer, VI_FIND_BUFLEN, count) (status <...
  • Page 92: Matlab Example

    SSG6000A Series Programming Guide 4.1.3 MATLAB Example System environment: Windows 7 Programming software: MATLAB R2013a Example content: Use NI-VISA to access and control the device through USBTMC or TCP/IP and perform read and write operations. Please follow below steps to complete the example: Open MATLAB and modify the current directory.
  • Page 93 SSG6000A Series Programming Guide % NI-VISA %Create a VISA-USB object connected to a USB instrument vu = visa('ni','USB0::0xF4EC::0x1504::SSG6A_TESE0000::INSTR'); %Open the VISA object created fopen(vu); %Send the string "*IDN?",asking for the device's identification. fprintf(vu,'*IDN?'); %Request the data outputbuffer = fscanf(vu); disp(outputbuffer);...
  • Page 94: Labview Example

    SSG6000A Series Programming Guide %Request the data outputbuffer = fscanf(vt); disp(outputbuffer); %Close the VISA object fclose(vt); delete(vt); clear vt; The running result: 4.1.4 LabVIEW Example System environment: Windows 7 Programming software: LabVIEW 2011 Example content: Use NI-VISA to access and control the device through USBTMC or TCP/IP and perform read and write operations.
  • Page 95 SSG6000A Series Programming Guide Select the device resource from the VISA resource name list box and run the program. In this example, the VI opens a VISA session to the USBTMC device, writes a command to the device, and then reads back the response. In this example, the specific command sent is a device ID query.
  • Page 96 SSG6000A Series Programming Guide Enter the IP address and run the program: int.siglent.com...
  • Page 97: Socket Examples

    SSG6000A Series Programming Guide Socket Examples The Windows operating system itself supports Sockets communication, and this communication method is also relatively simple. It should be noted that "\n" (newline character) needs to be added to the end of the SCPI command string.
  • Page 98 SSG6000A Series Programming Guide except socket.error: input('Failed to connect to ip %s!\nPress "Enter" to exit: ' % remote_ip) s.close() sys.exit() return s def SocketQuery(Sock, cmd): try : #Send cmd string Sock.sendall(cmd) time.sleep(1) except socket.error: #Send failed input('Send failed!\nPress "Enter" to exit: ') SocketClose(Sock) sys.exit()
  • Page 99 SSG6000A Series Programming Guide The running result: int.siglent.com...
  • Page 100 SSG6000A Series Programming Guide About SIGLENT SIGLENT is an international high-tech company, concentrating on R&D, sales, production and services of electronic test & measurement instruments. SIGLENT first began developing digital oscilloscopes independently in 2002. After more than a decade of continuous development, SIGLENT has extended...

Table of Contents