.. auto-generated by dev_tools.docs.nxdl from the NXDL source contributed_definitions/NXpid.nxdl.xml -- DO NOT EDIT .. index:: ! NXpid (base class) ! pid (base class) see: pid (base class); NXpid .. _NXpid: ===== NXpid ===== **Status**: base class, extends :ref:`NXobject` **Description**: Contains the settings of a PID controller. **Symbols**: No symbol table **Groups cited**: :ref:`NXlog`, :ref:`NXsensor` .. index:: NXsensor (base class); used in base class, NXlog (base class); used in base class **Structure**: .. _/NXpid@default-attribute: .. index:: default (file attribute) **@default**: (optional) :ref:`NX_CHAR ` .. collapse:: Declares which child group contains a path leading ... .. index:: plotting Declares which child group contains a path leading to a :ref:`NXdata` group. It is recommended (as of NIAC2014) to use this attribute to help define the path to the default dataset to be plotted. See https://www.nexusformat.org/2014_How_to_find_default_data.html for a summary of the discussion. .. _/NXpid/description-field: .. index:: description (field) **description**: (optional) :ref:`NX_CHAR ` .. collapse:: Description of how the Process Value for the PID controller is produced by sen ... Description of how the Process Value for the PID controller is produced by sensor(s) in the setup. For example, a set of sensors could be averaged over before feeding it back into the loop. .. _/NXpid/setpoint-field: .. index:: setpoint (field) **setpoint**: (optional) :ref:`NX_FLOAT ` {units=\ :ref:`NX_ANY `} .. collapse:: The Setpoint(s) used as an input for the PID controller. ... The Setpoint(s) used as an input for the PID controller. It can also be a link to an NXsensor.value field. .. _/NXpid/K_p_value-field: .. index:: K_p_value (field) **K_p_value**: (optional) :ref:`NX_NUMBER ` .. collapse:: Proportional term. The proportional term produces an output value ... Proportional term. The proportional term produces an output value that is proportional to the current error value. The proportional response can be adjusted by multiplying the error by a constant Kp, called the proportional gain constant. The Type switches controller parameters between P/I (proportional gain/integral gain) and P/T (proportional gain/time constant). The formula for the controller in the frequency domain is G(s) = P + I/s = P(1 + 1/(Ts)). The integral gain and time constant are related as follows I = P/T. .. _/NXpid/K_i_value-field: .. index:: K_i_value (field) **K_i_value**: (optional) :ref:`NX_NUMBER ` .. collapse:: The contribution from the integral term is proportional to both ... The contribution from the integral term is proportional to both the magnitude of the error and the duration of the error. The integral in a PID controller is the sum of the instantaneous error over time and gives the accumulated offset that should have been corrected previously. The accumulated error is then multiplied by the integral gain (Ki) and added to the controller output. .. _/NXpid/K_d_value-field: .. index:: K_d_value (field) **K_d_value**: (optional) :ref:`NX_NUMBER ` .. collapse:: The derivative of the process error is calculated by determining ... The derivative of the process error is calculated by determining the slope of the error over time and multiplying this rate of change by the derivative gain K_d. The magnitude of the contribution of the derivative term to the overall control action is termed the derivative gain, K_d .. _/NXpid/K_t_const-field: .. index:: K_t_const (field) **K_t_const**: (optional) :ref:`NX_NUMBER ` {units=\ :ref:`NX_TIME `} .. collapse:: The Type switches controller parameters between P/I (proportional gain/integra ... The Type switches controller parameters between P/I (proportional gain/integral gain) and P/T (proportional gain/time constant). The formula for the controller in the frequency domain is G(s) = P + I/s = P(1 + 1/(Ts)). The integral gain and time constant are related as follows I = P/T. .. _/NXpid/pv_sensor-group: **pv_sensor**: (optional) :ref:`NXsensor` .. collapse:: The sensor representing the Process Value used in the feedback loop for the PI ... The sensor representing the Process Value used in the feedback loop for the PID. In case multiple sensors were used, this NXsensor should contain the proper calculated/aggregated value. .. _/NXpid/pv_sensor/value_log-group: **value_log**: (optional) :ref:`NXlog` :ref:`⤆ ` .. _/NXpid/pv_sensor/value_log/value-field: .. index:: value (field) **value**: (optional) :ref:`NX_NUMBER ` :ref:`⤆ ` The actual timeseries data fed back to the PID loop. .. _/NXpid/setpoint_log-group: **setpoint_log**: (optional) :ref:`NXlog` Time log of the setpoint(s) used as an input for the PID controller. Hypertext Anchors ----------------- List of hypertext anchors for all groups, fields, attributes, and links defined in this class. * :ref:`/NXpid/description-field ` * :ref:`/NXpid/K_d_value-field ` * :ref:`/NXpid/K_i_value-field ` * :ref:`/NXpid/K_p_value-field ` * :ref:`/NXpid/K_t_const-field ` * :ref:`/NXpid/pv_sensor-group ` * :ref:`/NXpid/pv_sensor/value_log-group ` * :ref:`/NXpid/pv_sensor/value_log/value-field ` * :ref:`/NXpid/setpoint-field ` * :ref:`/NXpid/setpoint_log-group ` * :ref:`/NXpid@default-attribute ` **NXDL Source**: https://github.com/FAIRmat-NFDI/nexus_definitions/tree/fairmat/contributed_definitions/NXpid.nxdl.xml