18.12.2012 Views

R&S FSQ Signal Analyzer - Rohde & Schwarz

R&S FSQ Signal Analyzer - Rohde & Schwarz

R&S FSQ Signal Analyzer - Rohde & Schwarz

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

R&S <strong>FSQ</strong> Remote Control – Programming Examples<br />

7.3.1.2 Shape Factor Measurement (Using n dB Down)<br />

More Complex Programming Examples<br />

The n-dB-down function of the R&S <strong>FSQ</strong> is used twice to determine the shape factor<br />

of a filter (ratio of bandwidths at 60 dB and 3 dB below the filter maximum).<br />

The following example is again based on a signal with a level of –30 dBm at 100<br />

MHz. The shape factor is determined for the 30 kHz resolution bandwidth. The<br />

default setting of the R&S <strong>FSQ</strong> is used for measurements (SetupInstrument).<br />

REM ************************************************************************<br />

Public Sub ShapeFactor()<br />

result$ = Space$(100)<br />

'--------- R&S <strong>FSQ</strong> default setting --------------------------<br />

CALL SetupInstrument<br />

'Default setting<br />

status = viWrite(analyzer, "INIT:CONT OFF", 13, retCnt)<br />

'Single sweep<br />

'--------- Set frequency -----------------------------------status<br />

= viWrite(analyzer, "FREQ:SPAN 1MHz", 14, retCnt)<br />

'Span<br />

status = viWrite(analyzer, "BAND:RES 30kHz", 14, retCnt)<br />

'Resolution bandwidth<br />

status = viWrite(analyzer, "INIT;*WAI", 9, retCnt)<br />

'Perform sweep with sync<br />

'--------- Measure 60 dB value -----------------------------status<br />

= viWrite(analyzer, "CALC:MARK:PEXC 6DB", 18, retCnt)<br />

'Peak excursion<br />

status = viWrite(analyzer, "CALC:MARK:STAT ON", 17, retCnt)<br />

'Marker1 on<br />

status = viWrite(analyzer, "CALC:MARK:TRAC 1", 16, retCnt)<br />

'Assign marker1 to trace1<br />

status = viWrite(analyzer, "CALC:MARK:MAX", 13, retCnt)<br />

'Set marker1 to 100 MHz<br />

status = viWrite(analyzer, "CALC:MARK:FUNC:NDBD 60dB", 24, retCnt)<br />

'Read out bandwidth measured<br />

status = viWrite(analyzer, "CALC:MARK:FUNC:NDBD:RES?", 24, retCnt)<br />

'at 60 dB<br />

status = viRead(analyzer, result$, 100, retCnt)<br />

result60 = Val(result$)<br />

'--------- Measure 3 dB Down value -------------------------status<br />

= viWrite(analyzer, "CALC:MARK:FUNC:NDBD 3dB", 23, retCnt)<br />

'Read out bandwidth measured<br />

status = viWrite(analyzer, "CALC:MARK:FUNC:NDBD:RES?", 24, retCnt)<br />

'at 60 dB<br />

status = viRead(analyzer, result$, 100, retCnt)<br />

result3 = Val(result$)<br />

'--------- Read out shape factor-----------------------------<br />

Print "Shapefaktor 60dB/3dB: ";result60/result3<br />

END SUB<br />

REM ************************************************************************<br />

Operating Manual 1313.9681.12 - 01 7.9

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!