Interface PidConfig


  • public interface PidConfig
    An immutable object that contains industrial PID controller settings. Used for PID tuning, simulation and conversion. The settings are accessible via the getConfigDict() method. See example output:
    {
    'derivOnPv': True,
    'pidAction': 'e=sp-pv',
    'pidForm': 'independent',
    'pidValues': {'proportional': 1.2, 'integral': 5.0, 'derivative': 0.0},
    'scaling': {'cvScaleHigh': 100.0, 'cvScaleLow': 0.0, 'pvScaleHigh': 100.0, 'pvScaleLow': 0.0},
    'timeUnit': 'ms'
    }
    • Method Detail

      • getQtyDict

        org.python.core.PyDictionary getQtyDict()
        Returns a PyDictionary of pid parameter quantities (values with time units).
      • getConfigDict

        org.python.core.PyDictionary getConfigDict()
        Returns a PyDictionary with all the properties of this object (see main description for example). Changes to the returned dictionary are not reflected in this object.
      • toTimeUnit

        PidConfig toTimeUnit​(java.lang.String timeUnitString)
        Create a new pid converted to the specified timeUnit. The following units are supported: 'ms' (milliseconds), 's' (seconds), and 'min' (minutes).
      • tuned

        PidConfig tuned​(StandardizedPidGains stdGains)
                 throws com.jlbcontrols.pidbot.common.ignscripting.pid.UnconvertiblePidGainsException
        Create a new pid controller with tuning values adjusted by the provided tuner. ALWAYS USE CAUTION WHEN TUNING PID CONTROLLERS AND VERIFY APPROPRIATE BEHAVIOR AFTER TUNING.
        Throws:
        com.jlbcontrols.pidbot.common.ignscripting.pid.UnconvertiblePidGainsException - if the tuning cannot be converted to this controllers format.
      • getStandardGains

        StandardizedPidGains getStandardGains()
        Get the underlying pid tuning values in a standard form. Use case: you need to replace this PID controller with different one. If the new controller has different pidForm, scaling, etc. You could use this tuner on the new controller to try to achieve similar behavior. ALWAYS USE CAUTION WHEN TUNING PID CONTROLLERS AND VERIFY APPROPRIATE BEHAVIOR AFTER TUNING. PID controllers may not be directly convertible, and the resulting controller may not be equivalent.