Skip to content

MEASUREMENT_PARAMS_DMM7510

Changes the measurement settings for the DMM7510. Requires a CONNECT_DMM7510 block to create the connection. Params: connection : VisaConnection The VISA address (requires the CONNECTION_DMM7510 block). autorange : bool, default=True, Use auto range? meas_range : float, default=1, The range to measure with (i.e. the maximum). autozero : bool, default=True, Use auto zero? count : int, default=1, The number of counts to average. NPLC : float, default=1, The integration rate in number of clocks. Returns: out : String Measurement settings
Python Code
from typing import Optional
from flojoy import VisaConnection, flojoy, DataContainer, String


@flojoy(inject_connection=True)
def MEASUREMENT_PARAMS_DMM7510(
    connection: VisaConnection,
    input: Optional[DataContainer] = None,
    autorange: bool = True,
    meas_range: float = 1,
    autozero: bool = True,
    count: int = 1,
    NPLC: float = 1,
) -> String:
    """Changes the measurement settings for the DMM7510.

    Requires a CONNECT_DMM7510 block to create the connection.

    Parameters
    ----------
    connection : VisaConnection
        The VISA address (requires the CONNECTION_DMM7510 block).
    autorange: bool, default=True,
        Use auto range?
    meas_range : float, default=1,
        The range to measure with (i.e. the maximum).
    autozero : bool, default=True,
        Use auto zero?
    count : int, default=1,
        The number of counts to average.
    NPLC : float, default=1,
        The integration rate in number of clocks.

    Returns
    -------
    String
        Measurement settings
    """
    assert count > 0, "The count must be greater than 1."

    dmm = connection.get_handle()

    dmm.commands.dmm.measure.range = meas_range
    if autorange:
        dmm.commands.dmm.measure.autorange = "dmm.ON"
    else:
        dmm.commands.dmm.measure.autorange = "dmm.OFF"
    if autozero:
        dmm.commands.dmm.measure.autozero.enable = "dmm.ON"
    else:
        dmm.commands.dmm.measure.autozero.enable = "dmm.OFF"
    dmm.commands.dmm.measure.nplc = NPLC
    dmm.commands.dmm.measure.count = count

    dmm.commands.dmm.measure.inputimpedance = "dmm.IMPEDANCE_AUTO"

    return String(s=f"Measure range: {dmm.commands.dmm.measure.range}")

Find this Flojoy Block on GitHub

Videos

Control the DMM7510 Multimeter with 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, a DC voltage measurement was extracted from a Keithley DMM7510.

First the necessary blocks were added:

  • CONNECT_DMM7510
  • RESET_DMM7510
  • FUNCTION_DMM7510
  • DIGITS_DMM7510
  • MEASUREMENT_PARAMS_DMM7510
  • MEASUREMENT_FILTER_DMM7510
  • READ_DMM7510
  • BIG_NUMBER

The instrument address was set for each DMM7510 block. The FUNCTION_DMM7510 block was changed in order to extract the correct measurement. The parameters in DIGITS_DMM7510, MEASUREMENT_PARAMS_DMM7510, and MEASUREMENT_FILTER_DMM7510 blocks were changed as necessary. The READ_DMM7510 block was connected to the BIG_NUMBER block in order to view the reading.

The blocks were connected as shown and the app was run.