Data structure holding parameters required for adaptive or manual loop gain manipulation during runtime. More...
#include <power_control/drivers/npnz16b.h>
Data Fields | |
volatile uint16_t | AgcScaler |
Bit-shift scaler of Adaptive Gain Modulation factor. More... | |
volatile fractional | AgcFactor |
Q15 value of Adaptive Gain Modulation factor. More... | |
volatile fractional | AgcMedian |
Q15 value of Adaptive Gain Modulation nominal operating point. More... | |
volatile uint16_t | ptrAgcObserverFunction |
Function Pointer to Observer function updating the AGC modulation factor. This function pointer is stored in the data field as common unsigned integer value and needs to be casted as such. Example: my_loop.GainControl.ptrAgcObserverFunction = (uint16_t)(&my_AGCFactorUpdate);. More... | |
Data Fields inherited from NPNZ16b_s | |
volatile struct NPNZ_STATUS_s | status |
Control Loop Status and Control flags. More... | |
volatile struct NPNZ_PORTS_s | Ports |
Controller input and output ports. More... | |
volatile struct NPNZ_FILTER_PARAMS_s | Filter |
Filter parameters such as pointer to history and coefficient arrays and number scaling. More... | |
volatile struct NPNZ_GAIN_CONTROL_s | GainControl |
Parameter section for advanced control options. More... | |
volatile struct NPNZ_LIMITS_s | Limits |
Input and output clamping values. More... | |
volatile struct NPNZ_ADC_TRGCTRL_s | ADCTriggerControl |
Automatic ADC trigger placement options for ADC Trigger A and B. More... | |
volatile struct NPNZ_DATA_PROVIDERS_s | DataProviders |
Automated data sources pushing recent data points to user-defined variables. More... | |
volatile struct NPNZ_EXTENSION_HOOKS_s | ExtensionHooks |
User extension function triggers using function pointers with parameters. More... | |
volatile struct NPNZ_USER_DATA_BUFFER_s | Advanced |
Parameter section for advanced user control options. More... | |
Data structure holding parameters required for adaptive or manual loop gain manipulation during runtime.
Adaptive Gain Control Modulation Parameters.
The NPNZ_GAIN_CONTROL_t data object holds all parameters required to perform real-time gain modulation of the z-domain feedback loop. The loop gain is modulated by multiplying the result of the NPNZ controller B-term with an additional scaling factor. This scaling factor is represented by a fast floating point number, consisting of a factional factor <AgcFactor> between -1 and 1 and an integer bit-shift scaler <AgcScaler>.
This feature is optional and needs to be enabled, configured and managed manually in user code.
volatile fractional AgcFactor |
volatile fractional AgcMedian |
volatile uint16_t AgcScaler |
volatile uint16_t ptrAgcObserverFunction |
Function Pointer to Observer function updating the AGC modulation factor. This function pointer is stored in the data field as common unsigned integer value and needs to be casted as such. Example: my_loop.GainControl.ptrAgcObserverFunction = (uint16_t)(&my_AGCFactorUpdate);.