Skip to content

EXTRACT_SWEEP_FSV

Extract the sweep trace from an FSV network analyzer. Requires a CONNECTION_FSV block at the start of the app to connect with the instrument. The VISA address will then be listed under 'connection'. This block should also work with compatible R&S network analyzers. Params: connection : VisaConnection The VISA address (requires the CONNECTION_FSV block). Returns: out : OrderedPair The sweep trace from the FSV is returned.
Python Code
from flojoy import flojoy, DataContainer, OrderedPair, VisaConnection
from typing import Optional
from numpy import fromstring
from time import sleep


@flojoy(inject_connection=True)
def EXTRACT_SWEEP_FSV(
    connection: VisaConnection,
    default: Optional[DataContainer] = None,
) -> OrderedPair:
    """Extract the sweep trace from an FSV network analyzer.

    Requires a CONNECTION_FSV block at the start of the app to connect with
    the instrument. The VISA address will then be listed under 'connection'.

    This block should also work with compatible R&S network analyzers.

    Parameters
    ----------
    connection: VisaConnection
        The VISA address (requires the CONNECTION_FSV block).

    Returns
    -------
    OrderedPair
        The sweep trace from the FSV is returned.
    """

    rohde = connection.get_handle()

    # Wait until the sweep count reach the target.
    target = rohde.query("SWE:COUN?")
    while rohde.query("SWE:COUN:CURR?") != target:
        rohde.write("*WAI")
        sleep(0.1)

    x = fromstring(rohde.query("TRAC:DATA:X? TRACE1"), sep=",")
    y = fromstring(rohde.query("TRAC? TRACE1"), sep=",")

    return OrderedPair(x=x, y=y)

Find this Flojoy Block on GitHub

Videos

Read FM Radio Signals using Flojoy

Example

Having problems with this example app? Join our Discord community and we will help you out!
React Flow mini map

In this example, the Rohde & Schwarz FSV Signal Analyzer is used to view the FM radio range (86-110 MHz).

First 4 FSV nodes were added: CONNECTION_FSV, SWEEP_SETTINGS_FSV, INIT_SWEEP_FSV, and EXTRACT_SWEEP_FSV. A LINE node was also added. The VISA address was set for the 4 instrument nodes. The range of the signal analyzer sweep was set with SWEEP_SETTINGS_FSV (start = 86, stop = 110 MHz).

The nodes were then connected as shown in the image, and the app was run.