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.booleanisPIDZoningEnabled()Returns whether PID zoning is currently enabled for this loop or not.voidsetPIDZones(java.util.List<PID.Zone> zones)Sets the zones to use if PID zoning were to be enabled.voidsetPIDZoningEnabled(boolean flag)Sets whether PID zoning should be enabled for this loop or not.protected voidupdatePID(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.LoopSets the zones to use if PID zoning were to be enabled.- Specified by:
setPIDZonesin 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.LoopReturns a list of the currently configured PID zones to use for when PID zoning is enabled.- Specified by:
getPIDZonesin interfacePID.Loop- Returns:
- List of configured PID zones
-
setPIDZoningEnabled
public void setPIDZoningEnabled(boolean flag) throws DeviceException, java.io.IOExceptionDescription copied from interface:PID.LoopSets whether PID zoning should be enabled for this loop or not.- Specified by:
setPIDZoningEnabledin 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.LoopReturns whether PID zoning is currently enabled for this loop or not.- Specified by:
isPIDZoningEnabledin interfacePID.Loop- Returns:
- Is it enabled?
-
updatePID
protected void updatePID(double setPoint) throws java.io.IOException, DeviceException- Throws:
java.io.IOExceptionDeviceException
-
-