This VBScript program does the following:
Preset the VNA
Return active channel number and measurement string
Create a marker
Set X-axis value
Read X, Y-axis values
Set marker to trace Min
Read X, Y-axis values
The SCPI commands in this example are sent over a COM interface using the SCPIStringParser object. You do NOT need a GPIB connection to run this example.
This VBScript (*.vbs) program can be run as a macro in the VNA. To do this, copy the following code into a text editor file such as Notepad and save it on the VNA hard drive as Markers.vbs. Learn how to setup and run the macro.
See Other SCPI Example Programs
| Dim na, vi, ret Set na = CreateObject("AgilentPNA835x.Application") Set vi = na.ScpiStringParser 'Get Identification String from Analyzer ret=vi.Parse("*IDN?") msgbox ret 'Preset VNA ret=vi.Parse("SYST:PRES; *OPC?") 'Get Active Channel and Measurement chan = vi.Parse("SYST:ACT:CHAN?") meas = vi.Parse("SYST:ACT:MEAS?") 'Convert chan to a single number chan=CStr(CInt(chan)) 'Select Active Measurement vi.Parse "CALC" + chan + ":PAR:SEL " + meas 'Turn Marker 1 on and set X value to 1 GHz vi.Parse "CALC" + chan + ":MARK1:STAT ON" vi.Parse "CALC" + chan + ":MARK1:X 1e9" 'Get X and Y marker values x_val = vi.Parse("CALC" + chan + ":MARK1:X?") y_val = vi.Parse("CALC" + chan + ":MARK1:Y?") 'Display Marker Values msgbox "X Value = " + x_val + Chr(10) + "Y Value = " + y_val 'Use Marker 1 as a minimum search vi.Parse "CALC" + chan + ":MARK1:FUNC:EXEC MIN" 'Get X and Y marker values x_val = vi.Parse("CALC" + chan + ":MARK1:X?") y_val = vi.Parse("CALC" + chan + ":MARK1:Y?") 'Display Marker Values msgbox "X Value = " + x_val + Chr(10) + "Y Value = " + y_val |