Package jisa.devices.smu
Class AgilentSPA.AVMU
- java.lang.Object
-
- jisa.devices.smu.AgilentSPA.AVMU
-
- All Implemented Interfaces:
Instrument,Switch,VMeter
- Enclosing class:
- AgilentSPA
public class AgilentSPA.AVMU extends java.lang.Object implements VMeter
-
-
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
-
-
Constructor Summary
Constructors Constructor Description AVMU(java.lang.String name, int channel, AgilentSPA.Range[] vRanges)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes the connection to the instrument.AddressgetAddress()Returns any Address object used to connect to this instrument.intgetAverageCount()Returns the number of measurements used for averaging by the voltmeter.AModegetAverageMode()Returns the averaging mode being used for measurements by the voltmeter.java.lang.StringgetIDN()Returns an identifying String of the instrument.doublegetIntegrationTime()Returns the integration time being used for measurements.java.lang.StringgetName()Returns the name of the instrument or channel.TerminalsgetTerminals()Returns the type of the set of terminals currently being used on the voltmeter.TTypegetTerminalType(Terminals terminals)Returns what type of connector is used for the given terminal.doublegetVoltage()Takes a voltage measurement and returns the value.doublegetVoltageRange()Returns the measurement range being used for voltage measurements.booleanisAutoRangingVoltage()Returns whether the voltmeter is using auto-ranging for voltage measurements.booleanisLineFilterEnabled()Returns whether the voltmeter is using any line-frequency filteringbooleanisOn()Returns whether the voltmeter is on or not.protected ReadFiltermakeVoltageFilter(AMode type)protected doublemeasureVoltage()protected AgilentSPA.RangerangeFromVoltage(double value)voidsetAverageCount(int count)Sets the number of measurements to use for averaging.voidsetAverageMode(AMode mode)Sets the averaging mode used for taking each measurement.voidsetIntegrationTime(double time)Sets the integration time for each measurement.voidsetLineFilterEnabled(boolean enabled)Sets whether the voltmeter should use any line-frequency filtering (if available)voidsetTerminals(Terminals terminals)Sets which set of terminals should be used on the voltmeter.voidsetVoltageRange(double range)Sets the measurement range to use for voltage measurements.voidturnOff()Turns off the voltmeter.voidturnOn()Turns on the voltmeter.protected voidupdateIntTime()voiduseAutoVoltageRange()Tells the voltmeter to use auto-ranging for voltage measurements.-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jisa.devices.interfaces.Instrument
getConfigurationParameters, getLockObject, setTimeout
-
Methods inherited from interface jisa.devices.interfaces.VMeter
getConfigurationParameters, getVoltage, waitForStableVoltage
-
-
-
-
Constructor Detail
-
AVMU
public AVMU(java.lang.String name, int channel, AgilentSPA.Range[] vRanges) throws java.io.IOException- Throws:
java.io.IOException
-
-
Method Detail
-
makeVoltageFilter
protected ReadFilter makeVoltageFilter(AMode type)
-
updateIntTime
protected void updateIntTime() throws java.io.IOException- Throws:
java.io.IOException
-
measureVoltage
protected double measureVoltage() throws java.io.IOException- Throws:
java.io.IOException
-
rangeFromVoltage
protected AgilentSPA.Range rangeFromVoltage(double value)
-
getIDN
public java.lang.String getIDN() throws java.io.IOException, DeviceExceptionDescription copied from interface:InstrumentReturns an identifying String of the instrument.- Specified by:
getIDNin interfaceInstrument- Returns:
- Identifying String
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getName
public java.lang.String getName()
Description copied from interface:InstrumentReturns the name of the instrument or channel.- Specified by:
getNamein interfaceInstrument- Returns:
- Name
-
close
public void close() throws java.io.IOException, DeviceExceptionDescription copied from interface:InstrumentCloses the connection to the instrument.- Specified by:
closein interfaceInstrument- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getAddress
public Address getAddress()
Description copied from interface:InstrumentReturns any Address object used to connect to this instrument.- Specified by:
getAddressin interfaceInstrument- Returns:
- Address object, null if none
-
getVoltage
public double getVoltage() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterTakes a voltage measurement and returns the value.- Specified by:
getVoltagein interfaceVMeter- Returns:
- Voltage measurement value, in Volts
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getIntegrationTime
public double getIntegrationTime() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterReturns the integration time being used for measurements.- Specified by:
getIntegrationTimein interfaceVMeter- Returns:
- Integration time, in seconds.
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
setIntegrationTime
public void setIntegrationTime(double time) throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterSets the integration time for each measurement.- Specified by:
setIntegrationTimein interfaceVMeter- Parameters:
time- Integration time, in seconds.- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getVoltageRange
public double getVoltageRange() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterReturns the measurement range being used for voltage measurements. A range of n indicates -n to +n.- Specified by:
getVoltageRangein interfaceVMeter- Returns:
- Range being used, in Volts
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
setVoltageRange
public void setVoltageRange(double range) throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterSets 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.- Specified by:
setVoltageRangein interfaceVMeter- Parameters:
range- Range to use, in Volts- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
useAutoVoltageRange
public void useAutoVoltageRange() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterTells the voltmeter to use auto-ranging for voltage measurements.- Specified by:
useAutoVoltageRangein interfaceVMeter- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
isAutoRangingVoltage
public boolean isAutoRangingVoltage() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterReturns whether the voltmeter is using auto-ranging for voltage measurements.- Specified by:
isAutoRangingVoltagein interfaceVMeter- Returns:
- Is it auto-ranging?
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getAverageMode
public AMode getAverageMode() throws java.io.IOException, DeviceException
Description copied from interface:VMeterReturns the averaging mode being used for measurements by the voltmeter.- Specified by:
getAverageModein interfaceVMeter- Returns:
- Averaging mode
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
setAverageMode
public void setAverageMode(AMode mode) throws DeviceException, java.io.IOException
Description copied from interface:VMeterSets the averaging mode used for taking each measurement.- Specified by:
setAverageModein interfaceVMeter- Parameters:
mode- Averaging mode to use- Throws:
DeviceException- Upon incompatibility with devicejava.io.IOException- Upon communications error
-
getAverageCount
public int getAverageCount() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterReturns the number of measurements used for averaging by the voltmeter.- Specified by:
getAverageCountin interfaceVMeter- Returns:
- Number of measurements
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
setAverageCount
public void setAverageCount(int count) throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterSets the number of measurements to use for averaging.- Specified by:
setAverageCountin interfaceVMeter- Parameters:
count- Number of measurements- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
turnOn
public void turnOn() throws DeviceException, java.io.IOExceptionDescription copied from interface:VMeterTurns on the voltmeter.- Specified by:
turnOnin interfaceSwitch- Specified by:
turnOnin interfaceVMeter- Throws:
DeviceException- Upon incompatibility with devicejava.io.IOException- Upon communications error
-
turnOff
public void turnOff() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterTurns off the voltmeter.- Specified by:
turnOffin interfaceSwitch- Specified by:
turnOffin interfaceVMeter- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
isOn
public boolean isOn() throws java.io.IOException, DeviceExceptionDescription copied from interface:VMeterReturns whether the voltmeter is on or not.- Specified by:
isOnin interfaceSwitch- Specified by:
isOnin interfaceVMeter- Returns:
- Is it on?
- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getTerminalType
public TType getTerminalType(Terminals terminals) throws DeviceException, java.io.IOException
Description copied from interface:VMeterReturns what type of connector is used for the given terminal.- Specified by:
getTerminalTypein interfaceVMeter- Parameters:
terminals- Which terminal- Returns:
- Terminal type (TRIAX, PHOENIX, BNC or BANANA)
- Throws:
DeviceExceptionjava.io.IOException
-
getTerminals
public Terminals getTerminals() throws DeviceException, java.io.IOException
Description copied from interface:VMeterReturns the type of the set of terminals currently being used on the voltmeter.- Specified by:
getTerminalsin interfaceVMeter- Returns:
- The type of terminals being used
- Throws:
DeviceException- Upon incompatibility with devicejava.io.IOException- Upon communications error
-
setTerminals
public void setTerminals(Terminals terminals) throws DeviceException, java.io.IOException
Description copied from interface:VMeterSets which set of terminals should be used on the voltmeter.- Specified by:
setTerminalsin interfaceVMeter- Parameters:
terminals- Which type of terminals to use- Throws:
DeviceException- Upon incompatibility with devicejava.io.IOException- Upon communications error
-
isLineFilterEnabled
public boolean isLineFilterEnabled() throws DeviceException, java.io.IOExceptionDescription copied from interface:VMeterReturns whether the voltmeter is using any line-frequency filtering- Specified by:
isLineFilterEnabledin interfaceVMeter- Returns:
- Using line filter?
- Throws:
DeviceException- Upon incompatibility with devicejava.io.IOException- Upon communications error
-
setLineFilterEnabled
public void setLineFilterEnabled(boolean enabled) throws DeviceException, java.io.IOExceptionDescription copied from interface:VMeterSets whether the voltmeter should use any line-frequency filtering (if available)- Specified by:
setLineFilterEnabledin interfaceVMeter- Parameters:
enabled- Use line filter?- Throws:
DeviceException- Upon incompatibility with devicejava.io.IOException- Upon communications error
-
-