Package jisa.devices.smu
Class AgilentSPA.ASMU
- java.lang.Object
-
- jisa.devices.smu.AgilentSPA.ASMU
-
-
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
-
Nested classes/interfaces inherited from interface jisa.devices.interfaces.SMU
SMU.OffMode
-
-
Constructor Summary
Constructors Constructor Description ASMU(java.lang.String name, int channel, AgilentSPA.Range[] vRanges, AgilentSPA.Range[] iRanges)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes the connection to the instrument.Address
getAddress()
Returns any Address object used to connect to this instrument.int
getAverageCount()
Returns the number of measurements used for averaging by the SMU.AMode
getAverageMode()
Returns the averaging mode of the SMU.double
getCurrent()
Returns the current either being injected or measured by the SMU.double
getCurrentLimit()
Returns the limit for currents output when sourcing voltage (compliance value).double
getCurrentRange()
Returns the range of allowed values for currents being sourced or measured by the SMU.java.lang.String
getIDN()
Returns an identifying String of the instrument.double
getIntegrationTime()
Returns the integration time used for each individual measurement.double
getMeasureRange()
Returns the range of allowed values for the quantity being measured by the SMU.double
getMeasureValue()
Returns the value of whichever parameter is set as measure currentlyjava.lang.String
getName()
Returns the name of the instrument or channel.SMU.OffMode
getOffMode()
Returns the mode used by the SMU channel when turned off.double
getOutputLimit()
Returns the limit for the measured quantity (compliance value).double
getSetCurrent()
Get the default value or the value set by the setCurrent() method.double
getSetVoltage()
Get the default value or the value set by the setVoltage() method.Source
getSource()
Returns the current source mode of the SMU (VOLTAGE OR CURRENT)double
getSourceRange()
Returns the range of allowed values for the quantity being sourced by the SMU.double
getSourceValue()
Returns the value of whichever parameter is set as source currentlyTerminals
getTerminals()
Returns the type of the set of terminals currently being used on the SMU.TType
getTerminalType(Terminals terminals)
Returns what type of connector is used for the given terminal.double
getVoltage()
Returns the voltage either being applied or measured by the SMU.double
getVoltageLimit()
Returns the limit on voltages output when sourcing current (compliance value).double
getVoltageRange()
Returns the range of allowed values for voltages being sourced or measured by the SMU.boolean
isAutoRangingCurrent()
Returns whether the SMU is currently determining its current range automatically.boolean
isAutoRangingMeasure()
Returns whether the SMU is currently determining its measure range automatically.boolean
isAutoRangingSource()
Returns whether the SMU is set to automatically determine the source range to use.boolean
isAutoRangingVoltage()
Returns whether the SMU is automatically determining the range to use for voltages.boolean
isFourProbeEnabled()
Returns whether the device is currently configured to use all four probes.boolean
isLineFilterEnabled()
Returns whether the voltmeter is using any line-frequency filteringboolean
isOn()
Checks whether the output of the SMU is currently enabledprotected ReadFilter
makeCurrentFilter(AMode type)
protected ReadFilter
makeVoltageFilter(AMode type)
protected double
measureCurrent()
protected double
measureVoltage()
protected AgilentSPA.Range
rangeFromCurrent(double currentComp)
protected AgilentSPA.Range
rangeFromVoltage(double voltage)
void
setAverageCount(int count)
Sets how many measurements the SMU should average over.void
setAverageMode(AMode mode)
Sets the averaging mode of the SMU.void
setCurrent(double current)
Sets the current value to be applied by the SMU (switching to current source mode if not already)void
setCurrentLimit(double current)
Sets the limit for currents output when sourcing voltage (compliance value).void
setCurrentRange(double value)
Sets the range of allowed values for currents being sourced or measured by the SMU.void
setFourProbeEnabled(boolean fourProbes)
Sets whether the SMU should apply source using FORCE probes and measure using separate SENSE probes or whether is should do both with the FORCE probes.void
setIntegrationTime(double time)
Sets the integration time for each individual measurement, or closest over-estimate possible.void
setLineFilterEnabled(boolean enabled)
Sets whether the voltmeter should use any line-frequency filtering (if available)void
setMeasureRange(double value)
Sets the range of allowed values for the quantity being measured by the SMU.void
setOffMode(SMU.OffMode mode)
Sets which mode the SMU channel should use when turned off.void
setOutputLimit(double value)
Sets the limit for the measured quantity (ie compliance value).void
setSource(Source source)
Sets the source mode of the SMU (VOLTAGE or CURRENT)void
setSourceRange(double value)
Sets the range of allowed values for the quantity being sourced by the SMU.void
setSourceValue(double level)
Sets the value for whichever parameter is currently being sourcedvoid
setTerminals(Terminals terminals)
Sets which set of terminals should be used on the SMU.void
setVoltage(double voltage)
Sets the voltage value to be applied by the SMU (switching to voltage source mode if not already)void
setVoltageLimit(double voltage)
Sets the limit for voltages output when sourcing current (compliance value).void
setVoltageRange(double value)
Sets the range of allowed values for voltages being sourced or measured by the SMU.void
turnOff()
Turns the output of the SMU offvoid
turnOn()
Turns the output of the SMU onprotected void
updateIntTime()
void
useAutoCurrentRange()
Tells the SMU to automatically determine the range to use for current values.void
useAutoMeasureRange()
Tells the SMU to automatically determine the range to use for the measured quantity.void
useAutoSourceRange()
Sets the SMU to automatically determine the source range to use.void
useAutoVoltageRange()
Tells the SMU to automatically determine the range it uses for voltages.-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jisa.devices.interfaces.IMeter
waitForStableCurrent
-
Methods inherited from interface jisa.devices.interfaces.Instrument
getConfigurationParameters, getLockObject, setTimeout
-
Methods inherited from interface jisa.devices.interfaces.SMU
asAmmeter, asVoltmeter, getConfigurationParameters, getCurrent, getIVPoint, getVoltage, pulseVoltage, setAveraging, setLimits, setOn, setRanges, useAutoRanges
-
Methods inherited from interface jisa.devices.interfaces.VMeter
waitForStableVoltage
-
-
-
-
Constructor Detail
-
ASMU
public ASMU(java.lang.String name, int channel, AgilentSPA.Range[] vRanges, AgilentSPA.Range[] iRanges)
-
-
Method Detail
-
updateIntTime
protected void updateIntTime() throws java.io.IOException
- Throws:
java.io.IOException
-
rangeFromVoltage
protected AgilentSPA.Range rangeFromVoltage(double voltage)
-
rangeFromCurrent
protected AgilentSPA.Range rangeFromCurrent(double currentComp)
-
makeVoltageFilter
protected ReadFilter makeVoltageFilter(AMode type)
-
makeCurrentFilter
protected ReadFilter makeCurrentFilter(AMode type)
-
getSetCurrent
public double getSetCurrent() throws DeviceException, java.io.IOException
Description copied from interface:IVSource
Get the default value or the value set by the setCurrent() method.- Specified by:
getSetCurrent
in interfaceIVSource
- Returns:
- current setting [A]
- Throws:
DeviceException
java.io.IOException
-
getSetVoltage
public double getSetVoltage() throws DeviceException, java.io.IOException
Description copied from interface:IVSource
Get the default value or the value set by the setVoltage() method.- Specified by:
getSetVoltage
in interfaceIVSource
- Returns:
- voltage setting [V]
- Throws:
DeviceException
java.io.IOException
-
getIDN
public java.lang.String getIDN() throws java.io.IOException, DeviceException
Description copied from interface:Instrument
Returns an identifying String of the instrument.- Specified by:
getIDN
in 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:Instrument
Returns the name of the instrument or channel.- Specified by:
getName
in interfaceInstrument
- Returns:
- Name
-
close
public void close() throws java.io.IOException, DeviceException
Description copied from interface:Instrument
Closes the connection to the instrument.- Specified by:
close
in interfaceInstrument
- Throws:
java.io.IOException
- Upon communications errorDeviceException
- Upon incompatibility with device
-
getAddress
public Address getAddress()
Description copied from interface:Instrument
Returns any Address object used to connect to this instrument.- Specified by:
getAddress
in interfaceInstrument
- Returns:
- Address object, null if none
-
measureVoltage
protected double measureVoltage() throws DeviceException, java.io.IOException
- Throws:
DeviceException
java.io.IOException
-
getVoltage
public double getVoltage() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the voltage either being applied or measured by the SMU.- Specified by:
getVoltage
in interfaceSMU
- Specified by:
getVoltage
in interfaceVMeter
- Specified by:
getVoltage
in interfaceVSource
- Returns:
- Voltage value
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setVoltage
public void setVoltage(double voltage) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the voltage value to be applied by the SMU (switching to voltage source mode if not already)- Specified by:
setVoltage
in interfaceSMU
- Specified by:
setVoltage
in interfaceVSource
- Parameters:
voltage
- Value to set- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
measureCurrent
protected double measureCurrent() throws DeviceException, java.io.IOException
- Throws:
DeviceException
java.io.IOException
-
getCurrent
public double getCurrent() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the current either being injected or measured by the SMU.- Specified by:
getCurrent
in interfaceIMeter
- Specified by:
getCurrent
in interfaceISource
- Specified by:
getCurrent
in interfaceSMU
- Returns:
- Current value
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setCurrent
public void setCurrent(double current) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the current value to be applied by the SMU (switching to current source mode if not already)- Specified by:
setCurrent
in interfaceISource
- Specified by:
setCurrent
in interfaceSMU
- Parameters:
current
- Value to set- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
turnOn
public void turnOn() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Turns the output of the SMU on- Specified by:
turnOn
in interfaceIMeter
- Specified by:
turnOn
in interfaceISource
- Specified by:
turnOn
in interfaceSMU
- Specified by:
turnOn
in interfaceSwitch
- Specified by:
turnOn
in interfaceVMeter
- Specified by:
turnOn
in interfaceVSource
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
turnOff
public void turnOff() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Turns the output of the SMU off- Specified by:
turnOff
in interfaceIMeter
- Specified by:
turnOff
in interfaceISource
- Specified by:
turnOff
in interfaceSMU
- Specified by:
turnOff
in interfaceSwitch
- Specified by:
turnOff
in interfaceVMeter
- Specified by:
turnOff
in interfaceVSource
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isOn
public boolean isOn() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Checks whether the output of the SMU is currently enabled- Specified by:
isOn
in interfaceIMeter
- Specified by:
isOn
in interfaceISource
- Specified by:
isOn
in interfaceSMU
- Specified by:
isOn
in interfaceSwitch
- Specified by:
isOn
in interfaceVMeter
- Specified by:
isOn
in interfaceVSource
- Returns:
- Is the output on?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getSource
public Source getSource() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the current source mode of the SMU (VOLTAGE OR CURRENT)- Specified by:
getSource
in interfaceSMU
- Returns:
- Source mode
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setSource
public void setSource(Source source) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the source mode of the SMU (VOLTAGE or CURRENT)- Specified by:
setSource
in interfaceSMU
- Parameters:
source
- Source mode to set- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setSourceValue
public void setSourceValue(double level) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the value for whichever parameter is currently being sourced- Specified by:
setSourceValue
in interfaceSMU
- Parameters:
level
- The level to set- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getSourceValue
public double getSourceValue() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the value of whichever parameter is set as source currently- Specified by:
getSourceValue
in interfaceSMU
- Returns:
- Value of source
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getMeasureValue
public double getMeasureValue() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the value of whichever parameter is set as measure currently- Specified by:
getMeasureValue
in interfaceSMU
- Returns:
- Value of measure
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isFourProbeEnabled
public boolean isFourProbeEnabled() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns whether the device is currently configured to use all four probes.- Specified by:
isFourProbeEnabled
in interfaceSMU
- Returns:
- Are all probes to be used?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setFourProbeEnabled
public void setFourProbeEnabled(boolean fourProbes) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets whether the SMU should apply source using FORCE probes and measure using separate SENSE probes or whether is should do both with the FORCE probes.- Specified by:
setFourProbeEnabled
in interfaceSMU
- Parameters:
fourProbes
- Should it use all four probes?- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getAverageMode
public AMode getAverageMode() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the averaging mode of the SMU.- Specified by:
getAverageMode
in interfaceIMeter
- Specified by:
getAverageMode
in interfaceSMU
- Specified by:
getAverageMode
in interfaceVMeter
- Returns:
- Mode being used
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setAverageMode
public void setAverageMode(AMode mode) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the averaging mode of the SMU.- Specified by:
setAverageMode
in interfaceIMeter
- Specified by:
setAverageMode
in interfaceSMU
- Specified by:
setAverageMode
in interfaceVMeter
- Parameters:
mode
- Mode to use- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getAverageCount
public int getAverageCount() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the number of measurements used for averaging by the SMU.- Specified by:
getAverageCount
in interfaceIMeter
- Specified by:
getAverageCount
in interfaceSMU
- Specified by:
getAverageCount
in interfaceVMeter
- Returns:
- Number of measurements
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setAverageCount
public void setAverageCount(int count) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets how many measurements the SMU should average over.- Specified by:
setAverageCount
in interfaceIMeter
- Specified by:
setAverageCount
in interfaceSMU
- Specified by:
setAverageCount
in interfaceVMeter
- Parameters:
count
- Number of measurements- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getSourceRange
public double getSourceRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the range of allowed values for the quantity being sourced by the SMU. A value of n indicates a range of -n to +n.- Specified by:
getSourceRange
in interfaceSMU
- Returns:
- Range value, in Volts or Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setSourceRange
public void setSourceRange(double value) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the range of allowed values for the quantity being sourced by the SMU. A value of n indicates a range of -n to +n.- Specified by:
setSourceRange
in interfaceSMU
- Parameters:
value
- Range value, in Volts or Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoSourceRange
public void useAutoSourceRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the SMU to automatically determine the source range to use.- Specified by:
useAutoSourceRange
in interfaceSMU
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingSource
public boolean isAutoRangingSource() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns whether the SMU is set to automatically determine the source range to use.- Specified by:
isAutoRangingSource
in interfaceSMU
- Returns:
- Automatic?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getMeasureRange
public double getMeasureRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the range of allowed values for the quantity being measured by the SMU.- Specified by:
getMeasureRange
in interfaceSMU
- Returns:
- Range value, in Volts or Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setMeasureRange
public void setMeasureRange(double value) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the range of allowed values for the quantity being measured by the SMU.- Specified by:
setMeasureRange
in interfaceSMU
- Parameters:
value
- Range value, in Volts or Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoMeasureRange
public void useAutoMeasureRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Tells the SMU to automatically determine the range to use for the measured quantity.- Specified by:
useAutoMeasureRange
in interfaceSMU
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingMeasure
public boolean isAutoRangingMeasure() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns whether the SMU is currently determining its measure range automatically.- Specified by:
isAutoRangingMeasure
in interfaceSMU
- Returns:
- Is it automatic?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getVoltageRange
public double getVoltageRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the range of allowed values for voltages being sourced or measured by the SMU. A value of n indicates a range of -n to +n.- Specified by:
getVoltageRange
in interfaceSMU
- Specified by:
getVoltageRange
in interfaceVMeter
- Returns:
- Range value, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setVoltageRange
public void setVoltageRange(double value) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the range of allowed values for voltages being sourced or measured by the SMU. A value of n indicates a range of -n to +n.- Specified by:
setVoltageRange
in interfaceSMU
- Specified by:
setVoltageRange
in interfaceVMeter
- Parameters:
value
- Range value, in Volts- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoVoltageRange
public void useAutoVoltageRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Tells the SMU to automatically determine the range it uses for voltages.- Specified by:
useAutoVoltageRange
in interfaceSMU
- Specified by:
useAutoVoltageRange
in interfaceVMeter
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingVoltage
public boolean isAutoRangingVoltage() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns whether the SMU is automatically determining the range to use for voltages.- Specified by:
isAutoRangingVoltage
in interfaceSMU
- Specified by:
isAutoRangingVoltage
in interfaceVMeter
- Returns:
- Is it automatic?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getCurrentRange
public double getCurrentRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the range of allowed values for currents being sourced or measured by the SMU.- Specified by:
getCurrentRange
in interfaceIMeter
- Specified by:
getCurrentRange
in interfaceSMU
- Returns:
- Range value, inAmps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setCurrentRange
public void setCurrentRange(double value) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the range of allowed values for currents being sourced or measured by the SMU.- Specified by:
setCurrentRange
in interfaceIMeter
- Specified by:
setCurrentRange
in interfaceSMU
- Parameters:
value
- Range value, in Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoCurrentRange
public void useAutoCurrentRange() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Tells the SMU to automatically determine the range to use for current values.- Specified by:
useAutoCurrentRange
in interfaceIMeter
- Specified by:
useAutoCurrentRange
in interfaceSMU
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingCurrent
public boolean isAutoRangingCurrent() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns whether the SMU is currently determining its current range automatically.- Specified by:
isAutoRangingCurrent
in interfaceIMeter
- Specified by:
isAutoRangingCurrent
in interfaceSMU
- Returns:
- Is it automatic?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getOutputLimit
public double getOutputLimit() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the limit for the measured quantity (compliance value).- Specified by:
getOutputLimit
in interfaceSMU
- Returns:
- The limit, in Volts or Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setOutputLimit
public void setOutputLimit(double value) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the limit for the measured quantity (ie compliance value).- Specified by:
setOutputLimit
in interfaceSMU
- Parameters:
value
- The limit to use, in Volts or Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getVoltageLimit
public double getVoltageLimit() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the limit on voltages output when sourcing current (compliance value).- Specified by:
getVoltageLimit
in interfaceSMU
- Returns:
- The limit, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setVoltageLimit
public void setVoltageLimit(double voltage) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the limit for voltages output when sourcing current (compliance value).- Specified by:
setVoltageLimit
in interfaceSMU
- Parameters:
voltage
- The limit, in Volts- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getCurrentLimit
public double getCurrentLimit() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the limit for currents output when sourcing voltage (compliance value).- Specified by:
getCurrentLimit
in interfaceSMU
- Returns:
- The limit, in Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setCurrentLimit
public void setCurrentLimit(double current) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the limit for currents output when sourcing voltage (compliance value).- Specified by:
setCurrentLimit
in interfaceSMU
- Parameters:
current
- The limit, in Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getIntegrationTime
public double getIntegrationTime() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the integration time used for each individual measurement.- Specified by:
getIntegrationTime
in interfaceIMeter
- Specified by:
getIntegrationTime
in interfaceSMU
- Specified by:
getIntegrationTime
in interfaceVMeter
- Returns:
- Integration time, in seconds
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setIntegrationTime
public void setIntegrationTime(double time) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets the integration time for each individual measurement, or closest over-estimate possible.- Specified by:
setIntegrationTime
in interfaceIMeter
- Specified by:
setIntegrationTime
in interfaceSMU
- Specified by:
setIntegrationTime
in interfaceVMeter
- Parameters:
time
- Integration time, in seconds- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getTerminalType
public TType getTerminalType(Terminals terminals) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns what type of connector is used for the given terminal.- Specified by:
getTerminalType
in interfaceSMU
- Specified by:
getTerminalType
in interfaceVMeter
- Parameters:
terminals
- Which terminal- Returns:
- Terminal type (TRIAX, PHOENIX, BNC or BANANA)
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getTerminals
public Terminals getTerminals() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the type of the set of terminals currently being used on the SMU.- Specified by:
getTerminals
in interfaceSMU
- Specified by:
getTerminals
in 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:SMU
Sets which set of terminals should be used on the SMU.- Specified by:
setTerminals
in interfaceSMU
- Specified by:
setTerminals
in interfaceVMeter
- Parameters:
terminals
- Which type of terminals to use- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getOffMode
public SMU.OffMode getOffMode() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns the mode used by the SMU channel when turned off.- Specified by:
getOffMode
in interfaceSMU
- Returns:
- Mode being used
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setOffMode
public void setOffMode(SMU.OffMode mode) throws DeviceException, java.io.IOException
Description copied from interface:SMU
Sets which mode the SMU channel should use when turned off.- Specified by:
setOffMode
in interfaceSMU
- Parameters:
mode
- Mode to use- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isLineFilterEnabled
public boolean isLineFilterEnabled() throws DeviceException, java.io.IOException
Description copied from interface:SMU
Returns whether the voltmeter is using any line-frequency filtering- Specified by:
isLineFilterEnabled
in interfaceIMeter
- Specified by:
isLineFilterEnabled
in interfaceSMU
- Specified by:
isLineFilterEnabled
in 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.IOException
Description copied from interface:SMU
Sets whether the voltmeter should use any line-frequency filtering (if available)- Specified by:
setLineFilterEnabled
in interfaceIMeter
- Specified by:
setLineFilterEnabled
in interfaceSMU
- Specified by:
setLineFilterEnabled
in interfaceVMeter
- Parameters:
enabled
- Use line filter?- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
-