Package jisa.devices.interfaces
Class PID.ZonedLoop
- java.lang.Object
-
- jisa.devices.interfaces.PID.ZonedLoop
-
- All Implemented Interfaces:
Instrument
,PID.Loop
- Direct Known Subclasses:
TC.ZonedLoop
- Enclosing interface:
- PID
public abstract static class PID.ZonedLoop extends java.lang.Object implements PID.Loop
Partial implementation of PID.Loop with pre-defined, software-based PID zoning
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jisa.devices.interfaces.Instrument
Instrument.AutoQuantity<S>, Instrument.OptionalQuantity<S>, Instrument.Parameter<S>, Instrument.Setter<S>, Instrument.TableQuantity
-
-
Constructor Summary
Constructors Constructor Description ZonedLoop()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<PID.Zone>
getPIDZones()
Returns a list of the currently configured PID zones to use for when PID zoning is enabled.boolean
isPIDZoningEnabled()
Returns whether PID zoning is currently enabled for this loop or not.void
setPIDZones(java.util.List<PID.Zone> zones)
Sets the zones to use if PID zoning were to be enabled.void
setPIDZoningEnabled(boolean flag)
Sets whether PID zoning should be enabled for this loop or not.protected void
updatePID(double setPoint)
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jisa.devices.interfaces.Instrument
getAddress, getConfigurationParameters, getIDN, getLockObject, setTimeout
-
Methods inherited from interface jisa.devices.interfaces.PID.Loop
close, getAvailableInputs, getAvailableOutputs, getConfigurationParameters, getDValue, getInput, getIValue, getManualValue, getName, getOutput, getPValue, getRampRate, getSetPoint, isPIDEnabled, isRampEnabled, setDValue, setInput, setIValue, setManualValue, setOutput, setPIDEnabled, setPIDValues, setPIDZones, setPValue, setRampEnabled, setRampRate, setSetPoint, waitForStableValue
-
-
-
-
Method Detail
-
setPIDZones
public void setPIDZones(java.util.List<PID.Zone> zones) throws java.io.IOException, DeviceException
Description copied from interface:PID.Loop
Sets the zones to use if PID zoning were to be enabled.- Specified by:
setPIDZones
in interfacePID.Loop
- Parameters:
zones
- List of PID.Zone objects representing the PID zone table to use- Throws:
java.io.IOException
- Upon communications errorDeviceException
- Upon compatibility error
-
getPIDZones
public java.util.List<PID.Zone> getPIDZones()
Description copied from interface:PID.Loop
Returns a list of the currently configured PID zones to use for when PID zoning is enabled.- Specified by:
getPIDZones
in interfacePID.Loop
- Returns:
- List of configured PID zones
-
setPIDZoningEnabled
public void setPIDZoningEnabled(boolean flag) throws DeviceException, java.io.IOException
Description copied from interface:PID.Loop
Sets whether PID zoning should be enabled for this loop or not.- Specified by:
setPIDZoningEnabled
in interfacePID.Loop
- Parameters:
flag
- Should it be enabled?- Throws:
DeviceException
- Upon compatibility errorjava.io.IOException
- Upon communications error
-
isPIDZoningEnabled
public boolean isPIDZoningEnabled()
Description copied from interface:PID.Loop
Returns whether PID zoning is currently enabled for this loop or not.- Specified by:
isPIDZoningEnabled
in interfacePID.Loop
- Returns:
- Is it enabled?
-
updatePID
protected void updatePID(double setPoint) throws java.io.IOException, DeviceException
- Throws:
java.io.IOException
DeviceException
-
-