This example allows you to calibrate multiple SMC channels while connecting the power meter and required standards or ECal module only once.
In the example program:
Modify chans = 2 to indicate the number of channels to calibrate.
You can also change the connector type and cal kit for each port.
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 MultChanCal.vbs. Learn how to setup and run the macro.
Dim app Dim scpi Dim chans Dim i Dim steps Dim desc ' Create / Get the VNA application. Set app = CreateObject("AgilentPNA835x.Application") Set scpi = app.ScpiStringParser app.Preset ' Set number of channels to create chans = 2 ReDim calset(chans - 1) For i = 1 To chans chanStr = CStr(i+1) ' calibrate on channels 2 and 3 Dim parm, measName, sens, calc parm = "S" & CStr(i) & CStr(i) measName = "My" & parm sens = "SENS" & chanStr calc = "CALC" & chanStr scpi.Parse calc & ":CUST:DEF '" & measName & "', 'Scalar Mixer/Converter', '" & parm & "'"
'Setup the new measurement as the 2nd trace in the active window scpi.Parse "DISP:WIND:TRAC" & chanStr & ":FEED '" & measName & "'" 'Make the new trace the active measurement scpi.Parse calc & ":PAR:SEL '" & measName & "'"
'--------------Perform A FCA Mixer Calibration------------- 'Set ports and cal kits for 2 port calibration portion scpi.Parse sens & ":CORR:COLL:GUID:CONN:PORT1:SEL ""APC 3.5 male""" scpi.Parse sens & ":CORR:COLL:GUID:CONN:PORT2:SEL ""APC 3.5 female""" scpi.Parse sens & ":CORR:COLL:GUID:CKIT:PORT1:SEL ""85052C""" scpi.Parse sens & ":CORR:COLL:GUID:CKIT:PORT2:SEL ""85052C""" 'ECal modules are specified with the same command ' scpi.Parse sens & ":CORR:COLL:GUID:CKIT:PORT1:SEL ""N4691-60004 ECal""" ' scpi.Parse sens & ":CORR:COLL:GUID:CKIT:PORT2:SEL ""N4691-60004 ECal"""
'Specify the thru measurement method. scpi.Parse sens & ":CORR:COLL:GUID:PATH:TMET 1,2,""DEFINED THRU"""
'Omit the isolation part of the 2-port cal scpi.Parse sens & ":CORR:COLL:GUID:ISOL NONE"
'Initialize an SMC guided calibration. scpi.Parse sens & ":CORR:COLL:GUID:INIT" 'Determine the number of steps required to complete the calibration. steps = scpi.Parse (sens & ":CORR:COLL:GUID:STEP?") Next For j = 1 To CInt(steps) 'Display the prompt for each step desc = scpi.Parse(sens & ":CORR:COLL:GUID:DESC? " & CStr(j)) MsgBox (desc) 'Measure the same standard for each channel For i = 1 To chans chanStr = CStr(i+1) ' channel number as string scpi.Parse "SENS" & chanStr & ":CORR:COLL:GUID:ACQ STAN" & CStr(j) opc_comp = scpi.Parse("*OPC?") Next Next 'Finish the cal and save the calsets For i = 1 To chans calset(i - 1) = scpi.Parse("SENS" & CStr(i+1) & ":CORR:COLL:GUID:SAVE ON") Next MsgBox ("SMC Cals Complete!")
|