Package jisa.devices.interfaces
Interface VMeter
-
- All Superinterfaces:
Instrument
,Switch
- All Known Implementing Classes:
AgilentSPA.ASMU
,AgilentSPA.AVMU
,DummyMCSMU
,K1234
,K2182
,K236
,K2400
,K2450
,K2600B
,K6430
,KeithleySCPI
,MCSMU.VirtualSMU
,TestFET
public interface VMeter extends Instrument, Switch
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jisa.devices.interfaces.Instrument
Instrument.AutoQuantity<S>, Instrument.OptionalQuantity<S>, Instrument.Parameter<S>, Instrument.Setter<S>, Instrument.TableQuantity
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description int
getAverageCount()
Returns the number of measurements used for averaging by the voltmeter.AMode
getAverageMode()
Returns the averaging mode being used for measurements by the voltmeter.default java.util.List<Instrument.Parameter<?>>
getConfigurationParameters(java.lang.Class<?> target)
static java.lang.String
getDescription()
double
getIntegrationTime()
Returns the integration time being used for measurements.Terminals
getTerminals()
Returns the type of the set of terminals currently being used on the voltmeter.TType
getTerminalType(Terminals terminals)
Returns what type of connector is used for the given terminal.double
getVoltage()
Takes a voltage measurement and returns the value.default double
getVoltage(double integrationTime)
Takes a voltage measurement using a specified one-off integration time.double
getVoltageRange()
Returns the measurement range being used for voltage measurements.boolean
isAutoRangingVoltage()
Returns whether the voltmeter is using auto-ranging for voltage measurements.boolean
isLineFilterEnabled()
Returns whether the voltmeter is using any line-frequency filteringboolean
isOn()
Returns whether the voltmeter is on or not.void
setAverageCount(int count)
Sets the number of measurements to use for averaging.void
setAverageMode(AMode mode)
Sets the averaging mode used for taking each measurement.void
setIntegrationTime(double time)
Sets the integration time for each measurement.void
setLineFilterEnabled(boolean enabled)
Sets whether the voltmeter should use any line-frequency filtering (if available)void
setTerminals(Terminals terminals)
Sets which set of terminals should be used on the voltmeter.void
setVoltageRange(double range)
Sets the measurement range to use for voltage measurements.void
turnOff()
Turns off the voltmeter.void
turnOn()
Turns on the voltmeter.void
useAutoVoltageRange()
Tells the voltmeter to use auto-ranging for voltage measurements.default void
waitForStableVoltage(double pctMargin, int duration)
-
Methods inherited from interface jisa.devices.interfaces.Instrument
close, getAddress, getConfigurationParameters, getIDN, getLockObject, getName, setTimeout
-
-
-
-
Method Detail
-
getDescription
static java.lang.String getDescription()
-
getVoltage
double getVoltage() throws java.io.IOException, DeviceException
Takes a voltage measurement and returns the value.- Returns:
- Voltage measurement value, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getVoltage
default double getVoltage(double integrationTime) throws DeviceException, java.io.IOException
Takes a voltage measurement using a specified one-off integration time.- Parameters:
integrationTime
- Integration time to use in seconds- Returns:
- Voltage measurement value, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getIntegrationTime
double getIntegrationTime() throws java.io.IOException, DeviceException
Returns the integration time being used for measurements.- Returns:
- Integration time, in seconds.
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setIntegrationTime
void setIntegrationTime(double time) throws java.io.IOException, DeviceException
Sets the integration time for each measurement.- Parameters:
time
- Integration time, in seconds.- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getVoltageRange
double getVoltageRange() throws java.io.IOException, DeviceException
Returns the measurement range being used for voltage measurements. A range of n indicates -n to +n.- Returns:
- Range being used, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setVoltageRange
void setVoltageRange(double range) throws java.io.IOException, DeviceException
Sets the measurement range to use for voltage measurements. If only discrete options are available, the smallest range that contains the supplied value is used. A range of n indicates -n to +n.- Parameters:
range
- Range to use, in Volts- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoVoltageRange
void useAutoVoltageRange() throws java.io.IOException, DeviceException
Tells the voltmeter to use auto-ranging for voltage measurements.- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingVoltage
boolean isAutoRangingVoltage() throws java.io.IOException, DeviceException
Returns whether the voltmeter is using auto-ranging for voltage measurements.- Returns:
- Is it auto-ranging?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getAverageMode
AMode getAverageMode() throws java.io.IOException, DeviceException
Returns the averaging mode being used for measurements by the voltmeter.- Returns:
- Averaging mode
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setAverageMode
void setAverageMode(AMode mode) throws java.io.IOException, DeviceException
Sets the averaging mode used for taking each measurement.- Parameters:
mode
- Averaging mode to use- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getAverageCount
int getAverageCount() throws java.io.IOException, DeviceException
Returns the number of measurements used for averaging by the voltmeter.- Returns:
- Number of measurements
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setAverageCount
void setAverageCount(int count) throws java.io.IOException, DeviceException
Sets the number of measurements to use for averaging.- Parameters:
count
- Number of measurements- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
turnOn
void turnOn() throws java.io.IOException, DeviceException
Turns on the voltmeter.- Specified by:
turnOn
in interfaceSwitch
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
turnOff
void turnOff() throws java.io.IOException, DeviceException
Turns off the voltmeter.- Specified by:
turnOff
in interfaceSwitch
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isOn
boolean isOn() throws java.io.IOException, DeviceException
Returns whether the voltmeter is on or not.- Specified by:
isOn
in interfaceSwitch
- Returns:
- Is it on?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getTerminalType
TType getTerminalType(Terminals terminals) throws DeviceException, java.io.IOException
Returns what type of connector is used for the given terminal.- Parameters:
terminals
- Which terminal- Returns:
- Terminal type (TRIAX, PHOENIX, BNC or BANANA)
- Throws:
DeviceException
java.io.IOException
-
getTerminals
Terminals getTerminals() throws DeviceException, java.io.IOException
Returns the type of the set of terminals currently being used on the voltmeter.- Returns:
- The type of terminals being used
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setTerminals
void setTerminals(Terminals terminals) throws DeviceException, java.io.IOException
Sets which set of terminals should be used on the voltmeter.- Parameters:
terminals
- Which type of terminals to use- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
waitForStableVoltage
default void waitForStableVoltage(double pctMargin, int duration) throws java.io.IOException, DeviceException, java.lang.InterruptedException
- Throws:
java.io.IOException
DeviceException
java.lang.InterruptedException
-
isLineFilterEnabled
boolean isLineFilterEnabled() throws DeviceException, java.io.IOException
Returns whether the voltmeter is using any line-frequency filtering- Returns:
- Using line filter?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setLineFilterEnabled
void setLineFilterEnabled(boolean enabled) throws DeviceException, java.io.IOException
Sets whether the voltmeter should use any line-frequency filtering (if available)- Parameters:
enabled
- Use line filter?- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getConfigurationParameters
default java.util.List<Instrument.Parameter<?>> getConfigurationParameters(java.lang.Class<?> target)
- Specified by:
getConfigurationParameters
in interfaceInstrument
-
-