Package jisa.devices.smu
Class K2450
- java.lang.Object
-
- jisa.visa.VISADevice
-
- jisa.devices.smu.KeithleySCPI
-
- jisa.devices.smu.K2450
-
- All Implemented Interfaces:
IMeter,Instrument,ISource,IVMeter,IVSource,SMU,Switch,VMeter,VSource
public class K2450 extends KeithleySCPI
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jisa.devices.smu.KeithleySCPI
KeithleySCPI.Source
-
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
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.StringC_QUERY_LIMIT_2450protected static java.lang.StringC_QUERY_LIMIT_2450_MAXprotected static java.lang.StringC_QUERY_LIMIT_2450_MINprotected static java.lang.StringC_SET_LIMIT_2450-
Fields inherited from class jisa.devices.smu.KeithleySCPI
C_MEASURE_CURRENT, C_MEASURE_RESISTANCE, C_MEASURE_VOLTAGE, C_QUERY_AVG_COUNT, C_QUERY_AVG_MODE, C_QUERY_AVG_STATE, C_QUERY_LFR, C_QUERY_LIMIT, C_QUERY_MEAS_AUTO_RANGE, C_QUERY_MEAS_RANGE, C_QUERY_MEAS_RANGE_MAX, C_QUERY_MEAS_RANGE_MIN, C_QUERY_NPLC, C_QUERY_OFF_STATE, C_QUERY_OUTPUT_STATE, C_QUERY_PROBE_MODE, C_QUERY_SOURCE_FUNCTION, C_QUERY_SOURCE_VALUE_MAX, C_QUERY_SOURCE_VALUE_MIN, C_QUERY_SRC_AUTO_RANGE, C_QUERY_SRC_RANGE, C_QUERY_SRC_RANGE_MAX, C_QUERY_SRC_RANGE_MIN, C_QUERY_TERMINALS, C_SET_AVG_COUNT, C_SET_AVG_MODE, C_SET_AVG_STATE, C_SET_LIMIT, C_SET_MEAS_AUTO_RANGE, C_SET_MEAS_RANGE, C_SET_NPLC, C_SET_OFF_STATE, C_SET_OUTPUT_STATE, C_SET_PROBE_MODE, C_SET_SOURCE_FUNCTION, C_SET_SOURCE_VALUE, C_SET_SRC_AUTO_RANGE, C_SET_SRC_RANGE, C_SET_TERMINALS, iLimit, LINE_FREQUENCY, OFF_GUARD, OFF_HIGH_Z, OFF_NORMAL, OFF_ZERO, OUTPUT_OFF, OUTPUT_ON, TERMS_FRONT, TERMS_REAR, vLimit
-
Fields inherited from class jisa.visa.VISADevice
C_IDN, CR_TERMINATOR, CRLF_TERMINATOR, DEFAULT_EOI, DEFAULT_EOS, DEFAULT_TIMEOUT, EOS_RETURN, LF_TERMINATOR
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidfixLimits()doublegetCurrentLimit()Returns the limit for currents output when sourcing voltage (compliance value).static java.lang.StringgetDescription()java.lang.StringgetName()Returns the name of the instrument or channel.doublegetOutputLimit()Returns the limit for the measured quantity (compliance value).doublegetSetCurrent()Get the default value or the value set by the setCurrent() method.doublegetSetVoltage()Get the default value or the value set by the setVoltage() method.TTypegetTerminalType(Terminals terminals)Returns what type of connector is used for the given terminal.doublegetVoltageLimit()Returns the limit on voltages output when sourcing current (compliance value).booleanisLimitTripped()booleanisLineFilterEnabled()Returns whether the voltmeter is using any line-frequency filteringprotected doublemeasureCurrent()protected doublemeasureVoltage()voidsetCurrentLimit(double current)Sets the limit for currents output when sourcing voltage (compliance value).voidsetLineFilterEnabled(boolean enabled)Sets whether the voltmeter should use any line-frequency filtering (if available)voidsetMeasureRange(Function funcOpt, boolean measState)This command determines if the measurement range is set manually or automatically for the selected measure function.voidsetOffMode(SMU.OffMode mode)Sets which mode the SMU channel should use when turned off.voidsetSourceValue(KeithleySCPI.Source type, double value)voidsetVoltageLimit(double voltage)Sets the limit for voltages output when sourcing current (compliance value).-
Methods inherited from class jisa.devices.smu.KeithleySCPI
disableAveraging, getAverageCount, getAverageMode, getCurrent, getCurrentRange, getIntegrationTime, getMeasureMode, getMeasureRange, getMeasureValue, getOffMode, getSource, getSourceMode, getSourceRange, getSourceValue, getTerminals, getVoltage, getVoltageRange, isAutoRangingCurrent, isAutoRangingMeasure, isAutoRangingSource, isAutoRangingVoltage, isFourProbeEnabled, isOn, mario, pulseVoltage, setAverageCount, setAverageMode, setCurrent, setCurrentRange, setFourProbeEnabled, setIntegrationTime, setMeasureRange, setOutputLimit, setOutputState, setSource, setSource, setSourceRange, setSourceValue, setTerminals, setVoltage, setVoltageRange, turnOff, turnOn, useAutoCurrentRange, useAutoMeasureRange, useAutoSourceRange, useAutoVoltageRange, youDidIt
-
Methods inherited from class jisa.visa.VISADevice
addAutoRemove, checkLimit, checkLimit, clearBuffers, close, getAddress, getConnection, getIDN, manuallyClearReadBuffer, query, queryDouble, queryInt, read, read, readBytes, readDouble, readInt, setIOLimit, setReadBufferSize, setReadTerminator, setReadTerminator, setRetryCount, setTimeout, setWriteTerminator, write, writeBytes
-
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
close, getAddress, getConfigurationParameters, getIDN, getLockObject, setTimeout
-
Methods inherited from interface jisa.devices.interfaces.SMU
asAmmeter, asVoltmeter, getConfigurationParameters, getCurrent, getIVPoint, getVoltage, setAveraging, setLimits, setOn, setRanges, useAutoRanges
-
Methods inherited from interface jisa.devices.interfaces.VMeter
waitForStableVoltage
-
-
-
-
Field Detail
-
C_SET_LIMIT_2450
protected static final java.lang.String C_SET_LIMIT_2450
- See Also:
- Constant Field Values
-
C_QUERY_LIMIT_2450
protected static final java.lang.String C_QUERY_LIMIT_2450
- See Also:
- Constant Field Values
-
C_QUERY_LIMIT_2450_MIN
protected static final java.lang.String C_QUERY_LIMIT_2450_MIN
- See Also:
- Constant Field Values
-
C_QUERY_LIMIT_2450_MAX
protected static final java.lang.String C_QUERY_LIMIT_2450_MAX
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
K2450
public K2450(Address address) throws java.io.IOException, DeviceException
- Throws:
java.io.IOExceptionDeviceException
-
-
Method Detail
-
getDescription
public static java.lang.String getDescription()
-
measureVoltage
protected double measureVoltage() throws java.io.IOException, DeviceException- Overrides:
measureVoltagein classKeithleySCPI- Throws:
java.io.IOExceptionDeviceException
-
measureCurrent
protected double measureCurrent() throws java.io.IOException, DeviceException- Overrides:
measureCurrentin classKeithleySCPI- Throws:
java.io.IOExceptionDeviceException
-
getSetCurrent
public double getSetCurrent() throws DeviceException, java.io.IOExceptionDescription copied from interface:IVSourceGet the default value or the value set by the setCurrent() method.- Returns:
- current setting [A]
- Throws:
DeviceExceptionjava.io.IOException
-
getSetVoltage
public double getSetVoltage() throws DeviceException, java.io.IOExceptionDescription copied from interface:IVSourceGet the default value or the value set by the setVoltage() method.- Returns:
- voltage setting [V]
- Throws:
DeviceExceptionjava.io.IOException
-
getName
public java.lang.String getName()
Description copied from interface:InstrumentReturns the name of the instrument or channel.- Specified by:
getNamein interfaceInstrument- Overrides:
getNamein classVISADevice- Returns:
- Name
-
getOutputLimit
public double getOutputLimit() throws java.io.IOExceptionDescription copied from interface:SMUReturns the limit for the measured quantity (compliance value).- Specified by:
getOutputLimitin interfaceSMU- Overrides:
getOutputLimitin classKeithleySCPI- Returns:
- The limit, in Volts or Amps
- Throws:
java.io.IOException- Upon communications error
-
setVoltageLimit
public void setVoltageLimit(double voltage) throws java.io.IOException, DeviceExceptionDescription copied from interface:SMUSets the limit for voltages output when sourcing current (compliance value).- Specified by:
setVoltageLimitin interfaceSMU- Overrides:
setVoltageLimitin classKeithleySCPI- Parameters:
voltage- The limit, in Volts- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getVoltageLimit
public double getVoltageLimit() throws java.io.IOExceptionDescription copied from interface:SMUReturns the limit on voltages output when sourcing current (compliance value).- Specified by:
getVoltageLimitin interfaceSMU- Overrides:
getVoltageLimitin classKeithleySCPI- Returns:
- The limit, in Volts
- Throws:
java.io.IOException- Upon communications error
-
setCurrentLimit
public void setCurrentLimit(double current) throws java.io.IOException, DeviceExceptionDescription copied from interface:SMUSets the limit for currents output when sourcing voltage (compliance value).- Specified by:
setCurrentLimitin interfaceSMU- Overrides:
setCurrentLimitin classKeithleySCPI- Parameters:
current- The limit, in Amps- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
getCurrentLimit
public double getCurrentLimit() throws java.io.IOExceptionDescription copied from interface:SMUReturns the limit for currents output when sourcing voltage (compliance value).- Specified by:
getCurrentLimitin interfaceSMU- Overrides:
getCurrentLimitin classKeithleySCPI- Returns:
- The limit, in Amps
- Throws:
java.io.IOException- Upon communications error
-
getTerminalType
public TType getTerminalType(Terminals terminals) throws DeviceException
Description copied from interface:SMUReturns what type of connector is used for the given terminal.- Parameters:
terminals- Which terminal- Returns:
- Terminal type (TRIAX, PHOENIX, BNC or BANANA)
- Throws:
DeviceException- Upon incompatibility with device
-
setOffMode
public void setOffMode(SMU.OffMode mode) throws java.io.IOException
Description copied from interface:SMUSets which mode the SMU channel should use when turned off.- Parameters:
mode- Mode to use- Throws:
java.io.IOException- Upon communications error
-
isLineFilterEnabled
public boolean isLineFilterEnabled()
Description copied from interface:SMUReturns whether the voltmeter is using any line-frequency filtering- Returns:
- Using line filter?
-
setLineFilterEnabled
public void setLineFilterEnabled(boolean enabled)
Description copied from interface:SMUSets whether the voltmeter should use any line-frequency filtering (if available)- Parameters:
enabled- Use line filter?
-
setMeasureRange
public void setMeasureRange(Function funcOpt, boolean measState) throws java.io.IOException, DeviceException
This command determines if the measurement range is set manually or automatically for the selected measure function.- Parameters:
funcOpt- The measure function: Current: CURRent[:DC] Resistance: RESistance Voltage: VOLTage[:DC]measState- Set the measurement range manually: 0 Set the measurement range automatically: 1- Throws:
java.io.IOException- Upon communications errorDeviceException- Upon incompatibility with device
-
isLimitTripped
public boolean isLimitTripped() throws java.io.IOException- Throws:
java.io.IOException
-
setSourceValue
public void setSourceValue(KeithleySCPI.Source type, double value) throws java.io.IOException, DeviceException
- Overrides:
setSourceValuein classKeithleySCPI- Throws:
java.io.IOExceptionDeviceException
-
fixLimits
public void fixLimits() throws java.io.IOException, DeviceException- Throws:
java.io.IOExceptionDeviceException
-
-