Class K236

    • Method Detail

      • getDescription

        public static java.lang.String getDescription()
      • write

        public void write​(java.lang.String data,
                          java.lang.Object... params)
                   throws java.io.IOException
        Description copied from class: VISADevice
        Write the given string to the device
        Overrides:
        write in class VISADevice
        Parameters:
        data - The string to write
        params - Any formatting arguments
        Throws:
        java.io.IOException - Upon communications error
      • read

        public java.lang.String read()
                              throws java.io.IOException
        Description copied from class: VISADevice
        Read a string from the device
        Overrides:
        read in class VISADevice
        Returns:
        The string returned by the device
        Throws:
        java.io.IOException - Upon communications error
      • setSourceValue

        public void setSourceValue​(double level)
                            throws java.io.IOException,
                                   DeviceException
        Description copied from interface: SMU
        Sets the value for whichever parameter is currently being sourced
        Specified by:
        setSourceValue in interface SMU
        Parameters:
        level - The level to set
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • manuallyClearReadBuffer

        public void manuallyClearReadBuffer()
                                     throws java.io.IOException
        Description copied from class: VISADevice
        Continuously reads from the read buffer until there's nothing left to read. (Clears the read buffer for the more stubborn of instruments). Do not use on GPIB instruments programmed to respond to TALK requests (it will never terminate).
        Overrides:
        manuallyClearReadBuffer in class VISADevice
        Throws:
        java.io.IOException - Upon communications error
      • getIDN

        public java.lang.String getIDN()
                                throws java.io.IOException
        Description copied from class: VISADevice
        Sends the standard identifications query to the device (*IDN?)
        Specified by:
        getIDN in interface Instrument
        Overrides:
        getIDN in class VISADevice
        Returns:
        The resposne of the device
        Throws:
        java.io.IOException - Upon communications error
      • getSourceValue

        public double getSourceValue()
                              throws java.io.IOException,
                                     DeviceException
        Description copied from interface: SMU
        Returns the value of whichever parameter is set as source currently
        Specified by:
        getSourceValue in interface SMU
        Returns:
        Value of source
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • getMeasureValue

        public double getMeasureValue()
                               throws java.io.IOException,
                                      DeviceException
        Description copied from interface: SMU
        Returns the value of whichever parameter is set as measure currently
        Specified by:
        getMeasureValue in interface SMU
        Returns:
        Value of measure
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • setFourProbeEnabled

        public void setFourProbeEnabled​(boolean fourProbes)
                                 throws 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 interface SMU
        Parameters:
        fourProbes - Should it use all four probes?
        Throws:
        java.io.IOException - Upon communications error
      • isFourProbeEnabled

        public boolean isFourProbeEnabled()
                                   throws java.io.IOException
        Description copied from interface: SMU
        Returns whether the device is currently configured to use all four probes.
        Specified by:
        isFourProbeEnabled in interface SMU
        Returns:
        Are all probes to be used?
        Throws:
        java.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 interface IMeter
        Specified by:
        setAverageCount in interface SMU
        Specified by:
        setAverageCount in interface VMeter
        Parameters:
        count - Number of measurements
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getAverageCount

        public int getAverageCount()
        Description copied from interface: SMU
        Returns the number of measurements used for averaging by the SMU.
        Specified by:
        getAverageCount in interface IMeter
        Specified by:
        getAverageCount in interface SMU
        Specified by:
        getAverageCount in interface VMeter
        Returns:
        Number of measurements
      • setSourceRange

        public void setSourceRange​(double value)
                            throws 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 interface SMU
        Parameters:
        value - Range value, in Volts or Amps
        Throws:
        java.io.IOException - Upon communications error
      • getSourceRange

        public double getSourceRange()
        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 interface SMU
        Returns:
        Range value, in Volts or Amps
      • useAutoSourceRange

        public void useAutoSourceRange()
                                throws java.io.IOException
        Description copied from interface: SMU
        Sets the SMU to automatically determine the source range to use.
        Specified by:
        useAutoSourceRange in interface SMU
        Throws:
        java.io.IOException - Upon communications error
      • isAutoRangingSource

        public boolean isAutoRangingSource()
        Description copied from interface: SMU
        Returns whether the SMU is set to automatically determine the source range to use.
        Specified by:
        isAutoRangingSource in interface SMU
        Returns:
        Automatic?
      • setMeasureRange

        public void setMeasureRange​(double value)
                             throws 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 interface SMU
        Parameters:
        value - Range value, in Volts or Amps
        Throws:
        java.io.IOException - Upon communications error
      • getMeasureRange

        public double getMeasureRange()
        Description copied from interface: SMU
        Returns the range of allowed values for the quantity being measured by the SMU.
        Specified by:
        getMeasureRange in interface SMU
        Returns:
        Range value, in Volts or Amps
      • useAutoMeasureRange

        public void useAutoMeasureRange()
                                 throws 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 interface SMU
        Throws:
        java.io.IOException - Upon communications error
      • isAutoRangingMeasure

        public boolean isAutoRangingMeasure()
        Description copied from interface: SMU
        Returns whether the SMU is currently determining its measure range automatically.
        Specified by:
        isAutoRangingMeasure in interface SMU
        Returns:
        Is it automatic?
      • 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 interface SMU
        Specified by:
        setVoltageRange in interface VMeter
        Parameters:
        value - Range value, in Volts
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getVoltageRange

        public double getVoltageRange()
        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 interface SMU
        Specified by:
        getVoltageRange in interface VMeter
        Returns:
        Range value, in Volts
      • 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 interface SMU
        Specified by:
        useAutoVoltageRange in interface VMeter
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • isAutoRangingVoltage

        public boolean isAutoRangingVoltage()
        Description copied from interface: SMU
        Returns whether the SMU is automatically determining the range to use for voltages.
        Specified by:
        isAutoRangingVoltage in interface SMU
        Specified by:
        isAutoRangingVoltage in interface VMeter
        Returns:
        Is it automatic?
      • 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 interface IMeter
        Specified by:
        setCurrentRange in interface SMU
        Parameters:
        value - Range value, in Amps
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getCurrentRange

        public double getCurrentRange()
        Description copied from interface: SMU
        Returns the range of allowed values for currents being sourced or measured by the SMU.
        Specified by:
        getCurrentRange in interface IMeter
        Specified by:
        getCurrentRange in interface SMU
        Returns:
        Range value, inAmps
      • 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 interface IMeter
        Specified by:
        useAutoCurrentRange in interface SMU
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • isAutoRangingCurrent

        public boolean isAutoRangingCurrent()
        Description copied from interface: SMU
        Returns whether the SMU is currently determining its current range automatically.
        Specified by:
        isAutoRangingCurrent in interface IMeter
        Specified by:
        isAutoRangingCurrent in interface SMU
        Returns:
        Is it automatic?
      • 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 interface SMU
        Parameters:
        value - The limit to use, in Volts or Amps
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getOutputLimit

        public double getOutputLimit()
                              throws java.io.IOException
        Description copied from interface: SMU
        Returns the limit for the measured quantity (compliance value).
        Specified by:
        getOutputLimit in interface SMU
        Returns:
        The limit, in Volts or Amps
        Throws:
        java.io.IOException - Upon communications error
      • setVoltageLimit

        public void setVoltageLimit​(double voltage)
                             throws java.io.IOException
        Description copied from interface: SMU
        Sets the limit for voltages output when sourcing current (compliance value).
        Specified by:
        setVoltageLimit in interface SMU
        Parameters:
        voltage - The limit, in Volts
        Throws:
        java.io.IOException - Upon communications error
      • getVoltageLimit

        public double getVoltageLimit()
                               throws java.io.IOException
        Description copied from interface: SMU
        Returns the limit on voltages output when sourcing current (compliance value).
        Specified by:
        getVoltageLimit in interface SMU
        Returns:
        The limit, in Volts
        Throws:
        java.io.IOException - Upon communications error
      • setCurrentLimit

        public void setCurrentLimit​(double current)
                             throws java.io.IOException
        Description copied from interface: SMU
        Sets the limit for currents output when sourcing voltage (compliance value).
        Specified by:
        setCurrentLimit in interface SMU
        Parameters:
        current - The limit, in Amps
        Throws:
        java.io.IOException - Upon communications error
      • getCurrentLimit

        public double getCurrentLimit()
                               throws java.io.IOException
        Description copied from interface: SMU
        Returns the limit for currents output when sourcing voltage (compliance value).
        Specified by:
        getCurrentLimit in interface SMU
        Returns:
        The limit, in Amps
        Throws:
        java.io.IOException - Upon communications error
      • 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 interface IVSource
        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 interface IVSource
        Returns:
        voltage setting [V]
        Throws:
        DeviceException
        java.io.IOException
      • setIntegrationTime

        public void setIntegrationTime​(double time)
                                throws 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 interface IMeter
        Specified by:
        setIntegrationTime in interface SMU
        Specified by:
        setIntegrationTime in interface VMeter
        Parameters:
        time - Integration time, in seconds
        Throws:
        java.io.IOException - Upon communications error
      • getIntegrationTime

        public double getIntegrationTime()
                                  throws java.io.IOException
        Description copied from interface: SMU
        Returns the integration time used for each individual measurement.
        Specified by:
        getIntegrationTime in interface IMeter
        Specified by:
        getIntegrationTime in interface SMU
        Specified by:
        getIntegrationTime in interface VMeter
        Returns:
        Integration time, in seconds
        Throws:
        java.io.IOException - Upon communications error
      • getTerminalType

        public TType getTerminalType​(Terminals terminals)
        Description copied from interface: SMU
        Returns what type of connector is used for the given terminal.
        Specified by:
        getTerminalType in interface SMU
        Specified by:
        getTerminalType in interface VMeter
        Parameters:
        terminals - Which terminal
        Returns:
        Terminal type (TRIAX, PHOENIX, BNC or BANANA)
      • setTerminals

        public void setTerminals​(Terminals terminals)
        Description copied from interface: SMU
        Sets which set of terminals should be used on the SMU.
        Specified by:
        setTerminals in interface SMU
        Specified by:
        setTerminals in interface VMeter
        Parameters:
        terminals - Which type of terminals to use
      • getTerminals

        public Terminals getTerminals()
        Description copied from interface: SMU
        Returns the type of the set of terminals currently being used on the SMU.
        Specified by:
        getTerminals in interface SMU
        Specified by:
        getTerminals in interface VMeter
        Returns:
        The type of terminals being used
      • setOffMode

        public void setOffMode​(SMU.OffMode mode)
        Description copied from interface: SMU
        Sets which mode the SMU channel should use when turned off.
        Specified by:
        setOffMode in interface SMU
        Parameters:
        mode - Mode to use
      • 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 interface IMeter
        Specified by:
        setLineFilterEnabled in interface SMU
        Specified by:
        setLineFilterEnabled in interface VMeter
        Parameters:
        enabled - Use line filter?
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getOffMode

        public SMU.OffMode getOffMode()
        Description copied from interface: SMU
        Returns the mode used by the SMU channel when turned off.
        Specified by:
        getOffMode in interface SMU
        Returns:
        Mode being used
      • getName

        public java.lang.String getName()
        Description copied from interface: Instrument
        Returns the name of the instrument or channel.
        Specified by:
        getName in interface Instrument
        Overrides:
        getName in class VISADevice
        Returns:
        Name
      • getVoltage

        public double getVoltage()
                          throws java.io.IOException,
                                 DeviceException
        Description copied from interface: SMU
        Returns the voltage either being applied or measured by the SMU.
        Specified by:
        getVoltage in interface SMU
        Specified by:
        getVoltage in interface VMeter
        Specified by:
        getVoltage in interface VSource
        Returns:
        Voltage value
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • getCurrent

        public double getCurrent()
                          throws java.io.IOException,
                                 DeviceException
        Description copied from interface: SMU
        Returns the current either being injected or measured by the SMU.
        Specified by:
        getCurrent in interface IMeter
        Specified by:
        getCurrent in interface ISource
        Specified by:
        getCurrent in interface SMU
        Returns:
        Current value
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • setVoltage

        public void setVoltage​(double voltage)
                        throws java.io.IOException,
                               DeviceException
        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 interface SMU
        Specified by:
        setVoltage in interface VSource
        Parameters:
        voltage - Value to set
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • setCurrent

        public void setCurrent​(double current)
                        throws java.io.IOException,
                               DeviceException
        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 interface ISource
        Specified by:
        setCurrent in interface SMU
        Parameters:
        current - Value to set
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • isOn

        public boolean isOn()
                     throws java.io.IOException
        Description copied from interface: SMU
        Checks whether the output of the SMU is currently enabled
        Specified by:
        isOn in interface IMeter
        Specified by:
        isOn in interface ISource
        Specified by:
        isOn in interface SMU
        Specified by:
        isOn in interface Switch
        Specified by:
        isOn in interface VMeter
        Specified by:
        isOn in interface VSource
        Returns:
        Is the output on?
        Throws:
        java.io.IOException - Upon communications error
      • setSource

        public void setSource​(Source source)
                       throws java.io.IOException
        Description copied from interface: SMU
        Sets the source mode of the SMU (VOLTAGE or CURRENT)
        Specified by:
        setSource in interface SMU
        Parameters:
        source - Source mode to set
        Throws:
        java.io.IOException - Upon communications error
      • getSource

        public Source getSource()
                         throws java.io.IOException
        Description copied from interface: SMU
        Returns the current source mode of the SMU (VOLTAGE OR CURRENT)
        Specified by:
        getSource in interface SMU
        Returns:
        Source mode
        Throws:
        java.io.IOException - Upon communications error
      • getFunction

        public K236.Function getFunction()
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • setSourceFunction

        public void setSourceFunction​(K236.Source s,
                                      K236.Function f)
                               throws java.io.IOException
        Throws:
        java.io.IOException