studio icon indicating copy to clipboard operation
studio copied to clipboard

Siglent 1104X-E/1204X-E Waveform Data

Open Rerouter opened this issue 5 years ago • 0 comments

At the moment there is nothing in place to handle the response given by the WF? command, So felt I would start the discussion on how to preferably get it to spit out a scaled and relative timestamped .csv as at present I cannot see any other way to pull large data files via network off one of these devices. image

The first command in the screenshot "WFSU SP, 3, FP, 200, NP, 100", is just there to limit the amount of data, this is "Waveform Set Up". limiting it to 100 points, this is just to pretty up the example, but it will happily dump the entire memory using this method.

Page 141: https://www.siglentamerica.com/wp-content/uploads/dlm_uploads/2017/10/ProgrammingGuide_forSDS-1-1.pdf

The WaveForm command on these is broken into 2 parts, "DESC" and "DAT2", other siglent/lecroy devices may also use "TEXT", "TIME", "DAT1", and to pull all available segments, "ALL" can be used, the other segments can be called on this device, but text and dat1 always return empty.

The below method is from that manual. and decribes what other registers need to be read for this scaling.

How to use the data recovery waveform: 1.To calculate the voltage value corresponding to the data point. Using the formula : voltage value(V) = code value ( vdiv /25)- voffset. code value: The decimal of wave data . Note: If the decimal is greater than 127, it should minus 255.Then the value is code value. Such as the wave data is 0xFC convert to decimal is 252. So the code value is 252-255 =-3. vdiv: The Volts/div value. voffset: The voltage position value. The following picture as an example: Send command C1:VDIV?,return C1:VDIV 5.00E-01V Get the current Volts/div values: vdiv = 0.5V. Send command C1:OFST?,return C1:OFST -5.00E-01V Get the current voltage position values: voffset = -0.5V. According the wave data, we can know the first point of wave data is the 0x02 convert to decimal is 2 (Hexadecimal converted to decimal). The first point of wave data voltage value = 2(0.5/25)-(-0.5) = 0.54V.

2.To calculate the time value of the first data point. Using the formula : time value(S) = trdl-( timebasegrid/2). trdl: The time value which is center of the screen. timebase: The timebase value. grid: The grid numbers in horizontal direction. The following picture as an example: Send command TRDL?,return TRDL -5.000000ns. Get the current time value center of the screen: trdl = -5.00E-09s. Send command TDIV?,return TDIV 5.00E-09S. Get the current timebase: timebase = 5.00E-09S. The time value of the first data point: time value = -5.00E-09 – (5.00E0914/2) = -40.00E-09(s)=-40(ns). Send command ―SARA?, return SARA 1.00GSa/s. Get the current sampling rate: sampling rate= 1.00GSa/s. The time interval: time inter = 1/ sampling rate = 1ns So the time value of the second data point: value = -40ns+1ns = -39ns

Rerouter avatar Dec 01 '18 03:12 Rerouter