Package jisa.devices.smu
Class TestFET
- java.lang.Object
-
- jisa.devices.smu.TestFET
-
-
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.MCSMU
MCSMU.VirtualSMU
-
Nested classes/interfaces inherited from interface jisa.devices.interfaces.SMU
SMU.OffMode
-
-
Field Summary
Fields Modifier and Type Field Description static int
CHANNEL_SD
static int
CHANNEL_SG
-
Method Summary
All Methods Static 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(int channel)
Returns how many measurements the SMU is using to perform its averaging on the specified channel.AMode
getAverageMode(int channel)
Returns which averaging mode the SMU is currently using for measurements on the specified channel.double
getCurrent(int channel)
Returns the current of the specified channeldouble
getCurrentLimit(int channel)
Returns the limit (compliance) on current when not being sourced on the specified channel.double
getCurrentRange(int channel)
Returns the range being used for current values on the specified channel.static java.lang.String
getDescription()
java.lang.String
getIDN()
Returns an identifying String of the instrument.double
getIntegrationTime(int channel)
Returns the integration time used for measurements on the specified channel.double
getMeasureRange(int channel)
Returns the range being used for the measured quantity on the specified channel.double
getMeasureValue(int channel)
Returns the value of whichever quantity is being measured on the specified channeljava.lang.String
getName()
Returns the name of the instrument or channel.java.lang.String
getName(int channel)
int
getNumChannels()
Returns the number of channels this SMU has.SMU.OffMode
getOffMode(int channel)
double
getOutputLimit(int channel)
Returns the limit (compliance) on whichever quantity is not being sourced on the specified channel.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(int channel)
Returns the source mode of the specified channeldouble
getSourceRange(int channel)
Returns the range being used for the sourced quantity on the specified channel.double
getSourceValue(int channel)
Returns the value of whichever quantity is being sourced on the specified channelTerminals
getTerminals(int channel)
TType
getTerminalType(int channel, Terminals terminals)
double
getVoltage(int channel)
Returns the voltage of the specified channeldouble
getVoltageLimit(int channel)
Returns the limit (compliance) on voltage when not being sourced on the specified channel.double
getVoltageRange(int channel)
Returns the range being used for voltage values on the specified channel.boolean
isAutoRangingCurrent(int channel)
Returns whether auto-ranging is being used for current values on the specified channel.boolean
isAutoRangingMeasure(int channel)
Returns whether auto-ranging is being used for the measured quantity on the specified channel.boolean
isAutoRangingSource(int channel)
Returns whether auto-ranging is being used for the source quantity on the specified channel.boolean
isAutoRangingVoltage(int channel)
Returns whether auto-ranging is being used for voltage values on the specified channel.boolean
isFourProbeEnabled(int channel)
Returns whether the device is currently configured to use all four probes on the specified channel.boolean
isLineFilterEnabled(int channel)
Returns whether the voltmeter is using any line-frequency filteringboolean
isOn(int channel)
Returns whether the specified channel currently has its output enabledvoid
setAverageCount(int channel, int count)
Sets how many measurements to use when averaging on the specified channel.void
setAverageMode(int channel, AMode mode)
Sets which type of averaging the SMU should use when making a measurement on the specified channel.void
setBias(int channel, double level)
Sets the level of whichever quantity is being sourced on the specified channelvoid
setCurrent(int channel, double current)
Sets the specified channel to source the given current (when turned on)void
setCurrentLimit(int channel, double value)
Sets the limit (compliance) on current when not being sourced on the specified channel.void
setCurrentRange(int channel, double value)
Sets the range (and thus precision) to use for current values on the specified channel.void
setFourProbeEnabled(int channel, 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 on the specified channel.void
setIntegrationTime(int channel, double time)
Sets the integration time to use for measurements on the specified channel.void
setLineFilterEnabled(int channel, boolean enabled)
Sets whether the voltmeter should use any line-frequency filtering (if available)void
setMeasureRange(int channel, double value)
Sets the range (and thus precision) to use for the measured quantity on the given channel.void
setOffMode(int channel, SMU.OffMode mode)
void
setOutputLimit(int channel, double value)
Sets the limit (compliance) on whichever quantity is not being sourced on the given channel.void
setSource(int channel, Source source)
Sets the source mode of the specified channelvoid
setSourceRange(int channel, double value)
Sets the range (and thus precision) to use for the sourced quantity on the given channel.void
setTerminals(int channel, Terminals terminals)
void
setVoltage(int channel, double voltage)
Sets the specified channel to source the given voltage (when turned on)void
setVoltageLimit(int channel, double value)
Sets the limit (compliance) on voltage values when not being sourced on the specified channel.void
setVoltageRange(int channel, double value)
Sets the range (and thus precision) to use for voltage values on the specified channel.void
turnOff(int channel)
Disables output on the specified channelvoid
turnOn(int channel)
Enables output on the specified channelvoid
useAutoCurrentRange(int channel)
Tells the SMU to use auto-ranging for current values on the specified channel.void
useAutoMeasureRange(int channel)
Tells the SMU to use auto-ranging for the measured quantity on the specified channel.void
useAutoSourceRange(int channel)
Tells the SMU to use auto-ranging for the sourced quantity on the specified channel.void
useAutoVoltageRange(int channel)
Tells the SMU to use auto-ranging for voltage values on the specified channel.-
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.MCSMU
checkChannel, get, getAverageCount, getAverageMode, getChannel, getChannelClass, getChannels, getCurrent, getCurrentLimit, getCurrentRange, getIntegrationTime, getIVPoint, getIVPoint, getMCIVPoint, getMeasureRange, getMeasureValue, getOffMode, getOutputLimit, getSource, getSourceRange, getSourceValue, getSubInstrument, getSubInstrumentTypes, getTerminals, getTerminalType, getVoltage, getVoltageLimit, getVoltageRange, isAutoRangingCurrent, isAutoRangingMeasure, isAutoRangingSource, isAutoRangingVoltage, isFourProbeEnabled, isLineFilterEnabled, isOn, setAverageCount, setAverageMode, setAveraging, setAveraging, setCurrent, setCurrentLimit, setCurrentRange, setFourProbeEnabled, setIntegrationTime, setLimits, setLimits, setLineFilterEnabled, setMeasureRange, setOffMode, setOutputLimit, setRanges, setRanges, setSource, setSourceRange, setSourceValue, setTerminals, setVoltage, setVoltageLimit, setVoltageRange, turnOff, turnOn, useAutoCurrentRange, useAutoMeasureRange, useAutoRanges, useAutoRanges, useAutoSourceRange, useAutoVoltageRange
-
Methods inherited from interface jisa.devices.interfaces.MultiInstrument
contains, contains, get, getSubInstruments, getSubInstruments
-
Methods inherited from interface jisa.devices.interfaces.SMU
asAmmeter, asVoltmeter, getConfigurationParameters, getCurrent, getVoltage, pulseVoltage, setOn
-
Methods inherited from interface jisa.devices.interfaces.VMeter
waitForStableVoltage
-
-
-
-
Field Detail
-
CHANNEL_SD
public static final int CHANNEL_SD
- See Also:
- Constant Field Values
-
CHANNEL_SG
public static final int CHANNEL_SG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
TestFET
public TestFET(Address address)
-
-
Method Detail
-
getDescription
public static java.lang.String getDescription()
-
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
-
getVoltage
public double getVoltage(int channel) throws DeviceException
Description copied from interface:MCSMU
Returns the voltage of the specified channel- Specified by:
getVoltage
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Voltage, in Volts
- Throws:
DeviceException
- Upon device compatibility error
-
getCurrent
public double getCurrent(int channel) throws DeviceException
Description copied from interface:MCSMU
Returns the current of the specified channel- Specified by:
getCurrent
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Current, in Amps
- Throws:
DeviceException
- Upon device compatibility error
-
setVoltage
public void setVoltage(int channel, double voltage) throws DeviceException
Description copied from interface:MCSMU
Sets the specified channel to source the given voltage (when turned on)- Specified by:
setVoltage
in interfaceMCSMU
- Parameters:
channel
- Channel numbervoltage
- Voltage to source, in Volts- Throws:
DeviceException
- Upon device compatibility error
-
setCurrent
public void setCurrent(int channel, double current) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the specified channel to source the given current (when turned on)- Specified by:
setCurrent
in interfaceMCSMU
- Parameters:
channel
- Channel numbercurrent
- Current to source, in Amps- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
turnOn
public void turnOn(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Enables output on the specified channel- Specified by:
turnOn
in interfaceMCSMU
- Parameters:
channel
- Channel number- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
turnOff
public void turnOff(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Disables output on the specified channel- Specified by:
turnOff
in interfaceMCSMU
- Parameters:
channel
- Channel number- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
isOn
public boolean isOn(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether the specified channel currently has its output enabled- Specified by:
isOn
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Is it enabled?
- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
setSource
public void setSource(int channel, Source source) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the source mode of the specified channel- Specified by:
setSource
in interfaceMCSMU
- Parameters:
channel
- Channel numbersource
- VOLTAGE or CURRENT- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
getSource
public Source getSource(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the source mode of the specified channel- Specified by:
getSource
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Source mode (VOLTAGE or CURRENT)
- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
setBias
public void setBias(int channel, double level) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the level of whichever quantity is being sourced on the specified channel- Specified by:
setBias
in interfaceMCSMU
- Parameters:
channel
- Channel numberlevel
- Volts or Amps- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
getSourceValue
public double getSourceValue(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the value of whichever quantity is being sourced on the specified channel- Specified by:
getSourceValue
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Voltage or Current, in Volts or Amps
- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
getMeasureValue
public double getMeasureValue(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the value of whichever quantity is being measured on the specified channel- Specified by:
getMeasureValue
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Voltage or Current, in Volts or Amps
- Throws:
DeviceException
- Upon device compatibility errorjava.io.IOException
- Upon communications error
-
getNumChannels
public int getNumChannels()
Description copied from interface:MCSMU
Returns the number of channels this SMU has.- Specified by:
getNumChannels
in interfaceMCSMU
- Returns:
- Number of channels
-
setFourProbeEnabled
public void setFourProbeEnabled(int channel, boolean fourProbes) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
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 on the specified channel.- Specified by:
setFourProbeEnabled
in interfaceMCSMU
- Parameters:
channel
- Channel numberfourProbes
- Should it use all four probes?- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isFourProbeEnabled
public boolean isFourProbeEnabled(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether the device is currently configured to use all four probes on the specified channel.- Specified by:
isFourProbeEnabled
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Are all probes to be used?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setAverageMode
public void setAverageMode(int channel, AMode mode) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets which type of averaging the SMU should use when making a measurement on the specified channel.- Specified by:
setAverageMode
in interfaceMCSMU
- Parameters:
channel
- Channel numbermode
- Averaging mode- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setAverageCount
public void setAverageCount(int channel, int count) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets how many measurements to use when averaging on the specified channel.- Specified by:
setAverageCount
in interfaceMCSMU
- Parameters:
channel
- Channel numbercount
- Averaging count- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getAverageCount
public int getAverageCount(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns how many measurements the SMU is using to perform its averaging on the specified channel.- Specified by:
getAverageCount
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Averaging count
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getAverageMode
public AMode getAverageMode(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns which averaging mode the SMU is currently using for measurements on the specified channel.- Specified by:
getAverageMode
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Averaging mode
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setSourceRange
public void setSourceRange(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the range (and thus precision) to use for the sourced quantity on the given channel.- Specified by:
setSourceRange
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Range value, in Volts or Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getSourceRange
public double getSourceRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the range being used for the sourced quantity on the specified channel.- Specified by:
getSourceRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Range value, in Volts or Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoSourceRange
public void useAutoSourceRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Tells the SMU to use auto-ranging for the sourced quantity on the specified channel.- Specified by:
useAutoSourceRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingSource
public boolean isAutoRangingSource(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether auto-ranging is being used for the source quantity on the specified channel.- Specified by:
isAutoRangingSource
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Auto-ranging in use?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setMeasureRange
public void setMeasureRange(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the range (and thus precision) to use for the measured quantity on the given channel.- Specified by:
setMeasureRange
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Range value, in Volts or Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getMeasureRange
public double getMeasureRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the range being used for the measured quantity on the specified channel.- Specified by:
getMeasureRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Range value, in Volts or Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoMeasureRange
public void useAutoMeasureRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Tells the SMU to use auto-ranging for the measured quantity on the specified channel.- Specified by:
useAutoMeasureRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingMeasure
public boolean isAutoRangingMeasure(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether auto-ranging is being used for the measured quantity on the specified channel.- Specified by:
isAutoRangingMeasure
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Auto-ranging in use?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setVoltageRange
public void setVoltageRange(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the range (and thus precision) to use for voltage values on the specified channel.- Specified by:
setVoltageRange
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Range, in Volts- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getVoltageRange
public double getVoltageRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the range being used for voltage values on the specified channel.- Specified by:
getVoltageRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Range, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoVoltageRange
public void useAutoVoltageRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Tells the SMU to use auto-ranging for voltage values on the specified channel.- Specified by:
useAutoVoltageRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingVoltage
public boolean isAutoRangingVoltage(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether auto-ranging is being used for voltage values on the specified channel.- Specified by:
isAutoRangingVoltage
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Auto-ranging in use?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setCurrentRange
public void setCurrentRange(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the range (and thus precision) to use for current values on the specified channel.- Specified by:
setCurrentRange
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Range, in Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getCurrentRange
public double getCurrentRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the range being used for current values on the specified channel.- Specified by:
getCurrentRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Range, in Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
useAutoCurrentRange
public void useAutoCurrentRange(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Tells the SMU to use auto-ranging for current values on the specified channel.- Specified by:
useAutoCurrentRange
in interfaceMCSMU
- Parameters:
channel
- Channel number- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
isAutoRangingCurrent
public boolean isAutoRangingCurrent(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether auto-ranging is being used for current values on the specified channel.- Specified by:
isAutoRangingCurrent
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Auto-ranging in use?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setOutputLimit
public void setOutputLimit(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the limit (compliance) on whichever quantity is not being sourced on the given channel.- Specified by:
setOutputLimit
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Limit, in Volts or Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getOutputLimit
public double getOutputLimit(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the limit (compliance) on whichever quantity is not being sourced on the specified channel.- Specified by:
getOutputLimit
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Limit, in Volts or Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setVoltageLimit
public void setVoltageLimit(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the limit (compliance) on voltage values when not being sourced on the specified channel.- Specified by:
setVoltageLimit
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Limit, in Volts- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getVoltageLimit
public double getVoltageLimit(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the limit (compliance) on voltage when not being sourced on the specified channel.- Specified by:
getVoltageLimit
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Limit, in Volts
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setCurrentLimit
public void setCurrentLimit(int channel, double value) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the limit (compliance) on current when not being sourced on the specified channel.- Specified by:
setCurrentLimit
in interfaceMCSMU
- Parameters:
channel
- Channel numbervalue
- Limit, in Amps- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getCurrentLimit
public double getCurrentLimit(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the limit (compliance) on current when not being sourced on the specified channel.- Specified by:
getCurrentLimit
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Limit, in Amps
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setIntegrationTime
public void setIntegrationTime(int channel, double time) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets the integration time to use for measurements on the specified channel.- Specified by:
setIntegrationTime
in interfaceMCSMU
- Parameters:
channel
- Channel numbertime
- Integration time, in seconds- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getIntegrationTime
public double getIntegrationTime(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns the integration time used for measurements on the specified channel.- Specified by:
getIntegrationTime
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Integration time, in seconds
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
getTerminalType
public TType getTerminalType(int channel, Terminals terminals) throws DeviceException, java.io.IOException
- Specified by:
getTerminalType
in interfaceMCSMU
- Throws:
DeviceException
java.io.IOException
-
setTerminals
public void setTerminals(int channel, Terminals terminals) throws DeviceException, java.io.IOException
- Specified by:
setTerminals
in interfaceMCSMU
- Throws:
DeviceException
java.io.IOException
-
getTerminals
public Terminals getTerminals(int channel) throws DeviceException, java.io.IOException
- Specified by:
getTerminals
in interfaceMCSMU
- Throws:
DeviceException
java.io.IOException
-
setOffMode
public void setOffMode(int channel, SMU.OffMode mode) throws DeviceException, java.io.IOException
- Specified by:
setOffMode
in interfaceMCSMU
- Throws:
DeviceException
java.io.IOException
-
getOffMode
public SMU.OffMode getOffMode(int channel) throws DeviceException, java.io.IOException
- Specified by:
getOffMode
in interfaceMCSMU
- Throws:
DeviceException
java.io.IOException
-
isLineFilterEnabled
public boolean isLineFilterEnabled(int channel) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Returns whether the voltmeter is using any line-frequency filtering- Specified by:
isLineFilterEnabled
in interfaceMCSMU
- Parameters:
channel
- Channel number- Returns:
- Using line filter?
- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
setLineFilterEnabled
public void setLineFilterEnabled(int channel, boolean enabled) throws DeviceException, java.io.IOException
Description copied from interface:MCSMU
Sets whether the voltmeter should use any line-frequency filtering (if available)- Specified by:
setLineFilterEnabled
in interfaceMCSMU
- Parameters:
channel
- Channel numberenabled
- Use line filter?- Throws:
DeviceException
- Upon incompatibility with devicejava.io.IOException
- Upon communications error
-
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
-
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
-
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
-
-