15 if (absF(lambdaError) < lambdaDeadband) {
20 if (ignoreErrorMagnitude) {
21 if (lambdaError > 0) {
36 if (adjust > maxAdjust) {
38 }
else if (adjust < minAdjust) {
61 #define MAX_ADJ (0.25f)
71 return minF(MAX_ADJ, maxF(raw, 0));
82 return maxF(-MAX_ADJ, minF(raw, 0));
94 return 1 / timeConstant;
virtual float getMaxAdjustment() const =0
float getAdjustment() const
virtual float getLambdaError() const =0
virtual float getIntegratorGain() const =0
virtual float getMinAdjustment() const =0
void update(float lambdaDeadband, bool ignoreErrorMagnitude)
const stft_cell_cfg_s * m_config
float getIntegratorGain() const override
float getMaxAdjustment() const override
float getMinAdjustment() const override
SensorType m_lambdaSensor
float getLambdaError() const override
FuelComputer fuelComputer
virtual SensorResult get() const =0
constexpr float integrator_dt
scaled_channel< uint16_t, 10000, 1 > targetLambda
scaled_channel< uint16_t, 10, 1 > timeConstant