ebilab.visa

VISA対応デバイスを制御するためのパッケージです。

注釈

VISAドライバー(Keysight-VISA または NI-VISA)がインストールされている必要があります。

Base Class

class ebilab.visa.VisaDevice(*, addr: str | None = None, **kwargs: Any)[ソース]

ベースクラス: object

Base class of visa device.

You can inherit this class and implement class to new device.

pyvisa_inst

instance from ResourceManager.open_resource of pyvisa module Please use this only when you use method which is not supported in VisaDevice class

Type:

Any

property addr: str

VISA address of device

pyvisa_inst: Any
visa_query(cmd: str) str[ソース]

Send command to visa device and read output from device Equivalent to inst.query() in pyvisa class

visa_write(cmd: str) None[ソース]

Send command to visa device Equivalent to inst.write() in pyvisa class

Supported Devices

Keysight 34411A (Digital Multimeter)

class ebilab.visa.K34411A(*, addr: str | None = None, **kwargs: Any)[ソース]

ベースクラス: VisaDevice

Keysight 6½ Digit Digital Multimeter 34411A

measure_current(*, nplc: str | None = None, range: str = 'auto') float[ソース]

Measure current once

パラメータ:
  • nplc (Optional[str]) -- String from

  • {"0.001"

  • "0.002"

  • "0.006"

  • "0.02"

  • "0.06"

  • "0.2"

  • "1"

  • "2"

  • "10"

  • "100"}

  • range (str) -- String from

  • {"auto"

  • "1E-6"

  • "1E-5"

  • "1E-4"

  • "1E-3"

  • "1E-2"

  • "1E-1"

  • "1E+0"

  • "3E+0"

  • "1E+1"}

戻り値:

Measured current value

戻り値の型:

float

measure_resistance(*, nplc: str | None = None, range: str = 'auto') float[ソース]

Measure resistance once

パラメータ:
  • nplc (Optional[str]) -- String from {"0.001", "0.002", "0.006", "0.02", "0.06", "0.2", "1", "2", "10", "100"}

  • range (Optional[str]) -- String from {"auto", "1E+2", "1E+3", "1E+4", "1E+5", "1E+6", "1E+7", "1E+8", "1E+9"}

measure_resistance_4w(*, nplc: str | None = None, range: str = 'auto') float[ソース]

Measure resistance once by 4 wire method

パラメータ:
  • nplc (Optional[str]) -- String from {"0.001", "0.002", "0.006", "0.02", "0.06", "0.2", "1", "2", "10", "100"}

  • range (Optional[str]) -- String from {"auto", "1E+2", "1E+3", "1E+4", "1E+5", "1E+6", "1E+7", "1E+8", "1E+9"}

measure_voltage(*, nplc: str | None = None, range: str = 'auto') float[ソース]

Measure resistance once

パラメータ:
  • nplc (Optional[str]) -- String from {"0.001", "0.002", "0.006", "0.02", "0.06", "0.2", "1", "2", "10", "100"}

  • range (Optional[str]) -- String from {"auto", "1E-1", "1E+0", "1E+1", "1E+2", "1E+3"}

Keysight 34465A (Digital Multimeter)

class ebilab.visa.K34465A(*, addr: str | None = None, **kwargs: Any)[ソース]

ベースクラス: K34411A

Keysight E4980A/AL (LCR Meter)

class ebilab.visa.E4980(*, addr: str | None = None, **kwargs: Any)[ソース]

ベースクラス: VisaDevice

Keysight E4980A Precision LCR Meter

meas_open(*, wait: bool = True) None[ソース]
meas_short(*, wait: bool = True) None[ソース]
trigger(f: float, *, time: str = 'MED', ampl: float = 0.1, format: str = 'ZTD') tuple[float, float][ソース]
trigger(f: float, *, time: str = 'MED', voltage: float | None = None, current: float | None = None, format: str = 'ZTD') tuple[float, float]

measure impedance

パラメータ:

f (float) -- frequency to measure

キーワード引数:
  • voltage (float) -- measurement amplitude [V]. Voltage and current are exclusive.

  • current (float) -- measurement amplitude [A]. Voltage and current are exclusive.

  • time (str) -- measurement time from {"LONG", "MED", "SHORT"}

  • format (str) -- format of return value from {"CPD", "CPQ", "CPG", "CPRP", "CSD", "CSQ", "CSRS", "LPD", "LPQ", "LPG", "LPRP", "LSD", "LSQ", "LSRS", "RX", "ZTD", "ZTR", "GB", "YTD", "YTR"}

戻り値:

Measured impedance value

戻り値の型:

[float, float]

wait_correction() None[ソース]

Daiichi Electronics A707 (Power Supply)

class ebilab.visa.A707(*, addr: str | None = None, **kwargs: Any)[ソース]

ベースクラス: VisaDevice

Keithley 707A Switching Matrix

close_only(contacts: list[str]) None[ソース]

Open all switch and close only specified switch

パラメータ:

contacts (list) -- like ["A2", "B4", "C5"]

open_all() None[ソース]