UNI-T UTG900E Series Programming Manual
UNI-T UTG900E Series Programming Manual

UNI-T UTG900E Series Programming Manual

Function/arbitrary waveform generator
Hide thumbs Also See for UTG900E Series:

Advertisement

Quick Links

Programming Manual
UTG900E Series
Programming Manual
UTG900E Series Function/Arbitrary Waveform Generator
July 15
, 2022
th
Uni-Trend Technology (China) Co., Ltd.
2 / 41
Instruments.uni-trend.com

Advertisement

Table of Contents
loading
Need help?

Need help?

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

Questions and answers

Summary of Contents for UNI-T UTG900E Series

  • Page 1 Programming Manual UTG900E Series Programming Manual UTG900E Series Function/Arbitrary Waveform Generator July 15 , 2022 Uni-Trend Technology (China) Co., Ltd. 2 / 41 Instruments.uni-trend.com...
  • Page 2 The information provided in this manual is subject to change without notice.  UNI-T is not responsible for any errors that may be contained in this manual, or for any incidental or  consequential damages arising from the information and functions provided in this manual.
  • Page 3: Scpi Introduction

    Programming Manual UTG900E Series SCPI Introduction SCPI (Standard Commands for Programmable Instruments) is a standard instrument programming language based on the existing IEEE 488.1 and IEEE 488.2 standards, following the floating point arithmetic rules of IEEE754 standard, 7-bit coding character of information change in ISO646 (equivalent to ASCII programming), and etc.
  • Page 4 Programming Manual UTG900E Series Integer Type  The parameter can be any integer value within a valid range unless otherwise noted. Note: Now, please do not set The parameter to decimal format to avoid abnormity. For example, The parameter < count > in the command of :DISPlay:GRID:BRIGhtness <count> can be any integer value within range of 0~100.
  • Page 5 The query returns the manufacturer name, signal source model, product serial number and the software versioning separated by dot. Note: The returning model should be same as the nameplate. Example  UNI-T Technologies, UTG900, 000000001, 00.00.01 *RST Command Format  *RST Function ...
  • Page 6 Programming Manual UTG900E Series <file> means the configuration file. Return Format  The query returns the current configuration file data of signal source. Example  :SYSTem:CONFigure Write the configuration file data into signal source and load it. :SYSTem:CONFigure? The query returns a binary stream of current configuration file data of signal source.
  • Page 7 Programming Manual UTG900E Series :SYSTem:BEEP ON Turn buzzer on :SYSTem:BEEP? The query returns 1 :SYSTem:NUMBer:FORMat Command Format  :SYSTem:NUMBer:FORMat {COMMa|SPACe|NONe} :SYSTem:NUMBer:FORMat? Function  Control the separator of system number format. Return Format  The query returns the separator of system number format.
  • Page 8 Programming Manual UTG900E Series :SYSTem:CYMometer? Function  Control the system frequency meter ON/OFF. Note: Synchronous output of channel will be off when this function on. Return Format  The query returns the system frequency meter ON/OFF, 0 in OFF, 1 in ON.
  • Page 9: Channel Commands

    Programming Manual UTG900E Series CHANnel Commands Set the related functions of signal source channels. :CHANnel<n>:OUTPut Command Format  :CHANnel<n>:OUTPut {{1 | ON} | {0 | OFF}} :CHANnel<n>:OUTPut? Function  Set the specified channel output ON/OFF. <n>:Channel No., n value 1, 2.
  • Page 10 Programming Manual UTG900E Series The query returns 1 :CHANnel<n>:LIMit:ENABle Command Format  :CHANnel<n>:LIMit:ENABle {{1 | ON} | {0 | OFF}} :CHANnel<n>:LIMit:ENABle? Function  Set the amplitude limiting ON/OFF of specified channel. <n>: Channel No., n value 1, 2. Return Format ...
  • Page 11 Programming Manual UTG900E Series The query returns 2e+0 :CHANnel<n>:AMPLitude:UNIT Command Format  :CHANnel<n>:AMPLitude:UNIT {VPP | VRMS | DBM} :CHANnel<n>:AMPLitude:UNIT? Function  Set the unit of output amplitude in specified channel. <n>: Channel No., n value 1, 2. Return Format ...
  • Page 12 Programming Manual UTG900E Series :CHANnel1:BASE:WAVe? The query returns SINe. :CHANnel<n>:BASE:FREQuency Command Format  :CHANnel<n>:BASE:FREQuency {<freq>} :CHANnel<n>:BASE:FREQuency? Function  Set the output frequency of specified channel. <freq> means the frequency value, in “Hz” unit. (1e-6s ~ current max. frequency of wave) <n>: Channel No, n value 1, 2.
  • Page 13 Programming Manual UTG900E Series :CHANnel1:BASE:PHAse 20 Set the output phase of channel 1 to 20° :CHANnel1:BASE:PHAse? The query returns 20 :CHANnel<n>:BASE:AMPLitude Command Format:  :CHANnel<n>:BASE:AMPLitude { <amp>} :CHANnel<n>:BASE:AMPLitude? Function  Set the output amplitude of specified channel. <amp> means voltage, unit is the specified one of current channel.
  • Page 14 Programming Manual UTG900E Series <voltage> means voltage and its unit is the specified unit of current channel. <n>: Channel No, n value 1, 2. Return Format  The query returns the high signal output value of specified channel, using scientific notation to return.
  • Page 15 Programming Manual UTG900E Series Set the signal output symmetry of ramp wave in specified channel. < symmetry > means symmetry, in “%” unit, range of 0~100. <n>: Channel No., n value 1, 2. Return Format  The query returns the signal output symmetry of ramp wave in specified channel.
  • Page 16 Programming Manual UTG900E Series :CHANnel<n>:MODe {CONTINUE | AM | PM | FM | FSK | Line | Log } :CHANnel<n>:MODe? Function  Set the signal types of specified channel, CONTINUE, AM, PM, FM, FSK, Line, Log. <n>: Channel No., n value 1, 2.
  • Page 17 Programming Manual UTG900E Series :CHANnel<n>:MODulate:ARB:INDex Command Format  :CHANnel<n>:MODulate:ARB:INDex {<index >} :CHANnel<n>:MODulate:ARB:INDex? Function  Set the specified channel to load the modulated arbitrary wave index stored in signal source. <index> means arbitrary wave index <n>: Channel No., n value 1, 2.
  • Page 18 Programming Manual UTG900E Series :CHANnel<n>:MODulate:DEPTh Command Format  :CHANnel<n>:MODulate:DEPTh { <depth>} :CHANnel<n>:MODulate:DEPTh? Function  Set the modulation depth of specified channel. <depth> means the modulation depth, in “%” unit, range of 0% ~ 100%, and AM modulation depth is 0% ~ 120%.
  • Page 19 Programming Manual UTG900E Series :CHANnel<n>:FM:FREQuency:DEV Command Format  :CHANnel<n>:FM:FREQuency:DEV { <freq>} :CHANnel<n>:FM:FREQuency:DEV? Function  Set the frequency deviation of specified channel. <freq> means the frequency deviation, in “Hz” unit. 0Hz ~ is the current fundamental frequency. <n>: Channel No., n value 1, 2.
  • Page 20 Programming Manual UTG900E Series :CHANnel1:FSK:HOPP:FREQ? The query returns 2e+3 :CHANnel<n>:SWEep:FREQuency:STARt Command Format  :CHANnel<n>:SWEep:FREQuency:STARt <freq> :CHANnel<n>:SWEep:FREQuency:STARt? Function  Set the start frequency of sweep in specified channel. < freq > means frequency, in “Hz” unit. <n>: Channel No., n value 1, 2.
  • Page 21 Programming Manual UTG900E Series Example  :CHANnel1:SWEEP:TIMe 2 Set the sweep time of channel 1 to 2S :CHANnel1:SWEEP:TIMe? The query returns 2e+0 WARB Commands It is used to write file commands of arbitrary wave, including the fundamental arbitrary wave and modulated arbitrary wave writing configuration.
  • Page 22: Display Commands

    Programming Manual UTG900E Series DISPlay Commands It is used in signal source display information. :DISPlay? Command Format  :DISPlay? Function  Query the image data in current screen of oscilloscope. Return Format  The query returns the image data, and the returning data matches with Appendix 2:IEEE 488.2 binary...
  • Page 23: Programming Instructions

    Programming Manual UTG900E Series Programming Instructions Describe some troubles and solutions during the programming operation, and please follow instructions if any trouble met. Programming Preparation The programming preparation is only for the Visual Studio and LabVIEW programming in the Windows operating system.
  • Page 24 Programming Manual UTG900E Series VISA Programming Example Given some programming Example, this page can help you understand how to use VISA, operate the device as per the commands details, and develop more applications. VC++ Example Condition: Windows System & Visual Studio.
  • Page 25 Programming Manual UTG900E Series Select the "Linker-Command Line" in the left side of properties dialog, and set the "Additional" content to the visa32.lib, as followings showed. Add the visa.h file to the projectname.cpp. #include <visa.h> Source Code USBTMC Example usbtmc_test() /** This code demonstrates sending synchronous read &...
  • Page 26 Programming Manual UTG900E Series * results using the write and read functions. * Open Resource Manager * Open VISA Session to an Instrument * Write the Identification Query Using viPrintf * Try to Read a Response With viScanf * Close the VISA Session*/ ViSession defaultRM;...
  • Page 27 Programming Manual UTG900E Series (status < VI_SUCCESS) printf("Cannot open a session to the device %d. \n", + 1); continue; /** At this point we now have a session open to the USB TMC instrument. *We will now use the viPrintf function to send the device the string "*IDN?\n", *asking for the device’s identification.
  • Page 28 Programming Manual UTG900E Series 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"); /* Now we will open a session via TCP/IP device */ char head[256] = "TCPIP0::";...
  • Page 29 Programming Manual UTG900E Series C# Example Condition: Windows System & Visual Studio.  Description: Access the device through the USBTMC and TCP/IP, and send "*IDN?" command in NI-VISA  to check the device information. Steps  Open the Visual Studio software, and newly create a C# console project.
  • Page 30 Programming Manual UTG900E Series resource string.Format("TCPIP0::{0}::inst0::INSTR", ip); mbSession (MessageBasedSession)rmSession.Open(resource); mbSession.RawIO.Write("*IDN?\n"); System.Console.WriteLine(mbSession.RawIO.ReadString()); catch (Exception System.Console.WriteLine(ex.Message); void Main(string[] args) tcp_ip_test("192.168.20.11"); VB Example Condition: Windows System & Microsoft Visual Basic 6.0.  Description: Access the device through the USBTMC and TCP/IP, and send "*IDN?" command in NI-VISA ...
  • Page 31 Programming Manual UTG900E Series USBTMC Example PrivateFunction usbtmc_test() AsLong ' 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" string to all the USBTMC ' devices connected to the system and attempts to read back ' results using the write and read functions.
  • Page 32 Programming Manual UTG900E Series ' can be found in the function panel by right clicking on the ' descriptor parameter. After opening a session to the ' device, we will get a handle to the instrument which we ' will use in later VISA functions. The AccessMode and Timeout ' parameters in this function are reserved for future ' functionality.
  • Page 33: Labview Example

    Programming Manual UTG900E Series instrsesn AsLong status AsLong count AsLong ' First we will need to open the default resource manager. status = viOpenDefaultRM(defaultRM) (status < VI_SUCCESS) Then resultTxt.Text = "Could not open a session to the VISA Resource Manager!"...
  • Page 34 Programming Manual UTG900E Series followings showed. Communicating with device through the TCP/IP is similar to USBTMC, set the VISA writing and reading to be synchronous I/O, and the LabVIEW to be asynchronous I/O by default. Right-click the node, and select the "Synchronous I/O Mode>>Synchronous" in shortcut menu to write or read data synchronously, as followings showed.
  • Page 35 Programming Manual UTG900E Series function usbtmc_test() % This code demonstrates sending synchronous read & write commands % to an USB Test & Measurement Class (USBTMC) instrument using % NI-VISA %Create a VISA-USB object connected to a USB instrument vu = visa('ni','USB0::0x5345::0x1234::SN20220718::INSTR');...
  • Page 36: Python Example

    Programming Manual UTG900E Series clear vt; Python Example Condition: Windows System & Python3.8 & PyVISA 1.11.0.  Description: Access the device through the USBTMC and TCP/IP, and send "*IDN?" command in the  NI-VISA to check the device information. Steps ...
  • Page 37: Programming Applications

    Programming Manual UTG900E Series Programming Applications Sine Wave Configuration In this page, we will introduce how to configure the sine function. Description The sine wave has amplitude, offset, and phase relative to the synchronization pulse, and its amplitude and offset can be set by high and low voltage.
  • Page 38 Programming Manual UTG900E Series The above square wave can be generated by following commands. :CHANnel1:MODe CONTinue :CHANnel1:BASE:WAVe SQUare :CHANnel1:BASE:FREQuency 40000 :CHANnel1:BASE:AMPLitude 2 :CHANnel1:BASE:OFFSet 0 :CHANnel1:BASE:PHAse 90 :CHANnel1:BASE:DUTY 20 :CHANnel1:OUTPut ON Sawtooth Wave Configuration Description The sawtooth wave has amplitude, offset, and phase relative to the synchronization pulse. Its symmetry can be used to create ramp wave and other waves.
  • Page 39 Programming Manual UTG900E Series The above sawtooth wave can be generated by following commands. :CHANnel1:MODe CONTinue :CHANnel1:BASE:WAVe RAMP :CHANnel1:BASE:FREQuency 30000 :CHANnel1:BASE:HIGH 2 :CHANnel1:BASE:LOW 0 :CHANnel1:BASE:PHAse 90 :CHANnel1:RAMP:SYMMetry 20 :CHANnel1:OUTPut ON Pulse Wave Configuration Description The pulse wave has amplitude, offset, and phase relative to the synchronization pulse. It also adds edge slope and duty ratio (or pulse width).
  • Page 40 Programming Manual UTG900E Series Description The arbitrary wave has frequency, amplitude, offset and phase, and also adds modes and wave files. Example The built-in arbitrary wave can be loaded and modified by the following codes. :CHANnel1:MODe CONTinue :CHANnel1:BASE:WAVe ARB :CHANnel1:ARB:MODe DDS :CHANnel1:BASE:ARB INTernal,"ACos.bsv"...
  • Page 41: Appendix 1: List

    Programming Manual UTG900E Series Appendix 1:<key> List Function LED Light Wave Wave Type Mode Output Mode √ Utility System Symbol Number Symbol Number Dot NUM0 NUMBER 0 NUM1 NUMBER 1 NUM2 NUMBER 2 NUM3 NUMBER 3 NUM4 NUMBER 4 NUM5...

Table of Contents