Index: PIControllers.h =================================================================== diff -u -rf352febbad947e7ae4afbd9a5eaa87e434648f37 -r5d71138b70dda45a66fda6f3841392f1be55fe61 --- PIControllers.h (.../PIControllers.h) (revision f352febbad947e7ae4afbd9a5eaa87e434648f37) +++ PIControllers.h (.../PIControllers.h) (revision 5d71138b70dda45a66fda6f3841392f1be55fe61) @@ -64,6 +64,7 @@ CONTROLLER_SIGNAL_ERROR_SUM_AFTER_WINDUP, ///< Error sum after anti-windup CONTROLLER_SIGNAL_PROPORTIONAL_OUTPUT, ///< P portion of controller output signal CONTROLLER_SIGNAL_INTEGRAL_OUTPUT, ///< I portion of controller output signal + CONTROLLER_SIGNAL_FEEDFORWARD_OUTPUT, ///< Feed forward portion of controller output signal CONTROLLER_SIGNAL_CONTROL, ///< Controller output signal NUM_OF_CONTROLLER_SIGNAL ///< Number of PI controller signals } PI_CONTROLLER_SIGNALS_ID; @@ -82,8 +83,9 @@ // ********** public function prototypes ********** void initializePIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal, - F32 kP, F32 kI, F32 controlMin, F32 controlMax ); -void resetPIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal ); + F32 kP, F32 kI, F32 controlMin, F32 controlMax, + BOOL isFeedForwardEnabled, F32 feedFowardSignal, F32 controlInterval ); +void resetPIController( PI_CONTROLLER_ID_T controllerID, F32 initialControlSignal, F32 feedFowardSignal ); F32 runPIController( PI_CONTROLLER_ID_T controllerID, F32 referenceSignal, F32 measuredSignal ); F32 getPIControllerSignals( PI_CONTROLLER_ID_T controllerID, PI_CONTROLLER_SIGNALS_ID signalID ); void setPIControllerStepLimit( PI_CONTROLLER_ID_T controllerID, F32 stepLimit );