MIMOPIDController#

class do_dpc.control_utils.pid.MIMOPIDController(pid_controllers)[source]#

Bases: object

A class to manage multiple PID controllers for a decoupled MIMO system.

This class holds multiple PIDController instances and computes the control actions for each one.

pid_controllers#

A list of PIDController instances.

Type:

List[PIDController]

Methods#

compute#

do_dpc.control_utils.pid.MIMOPIDController.compute(self, errors)#

Computes the control actions for all PID controllers.

Parameters:

errors (np.ndarray) – An array of error signals (differences between setpoints and measurements).

Returns:

An array of computed control signals.

Return type:

np.ndarray

compute_with_derivative#

do_dpc.control_utils.pid.MIMOPIDController.compute_with_derivative(self, errors, error_derivatives)#

Computes the control actions for all PID controllers using provided error derivatives.

Parameters:
  • errors (np.ndarray) – An array of error signals (differences between setpoints and measurements).

  • error_derivatives (np.ndarray) – An array of error derivatives.

Returns:

An array of computed control signals.

Return type:

np.ndarray