rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
FlexConverter Class Reference

#include <flex_sensor.h>

Inheritance diagram for FlexConverter:
Inheritance graph
[legend]
Collaboration diagram for FlexConverter:
Collaboration graph
[legend]

Public Member Functions

 FlexConverter ()
 
SensorResult convert (float frequency) const override
 
- Public Member Functions inherited from SensorConverter
 SensorConverter (const SensorConverter &)=delete
 
 SensorConverter ()=default
 
virtual void showInfo (float testRawValue) const
 

Private Attributes

Biquad m_filter
 

Detailed Description

Definition at line 10 of file flex_sensor.h.

Constructor & Destructor Documentation

◆ FlexConverter()

FlexConverter::FlexConverter ( )
inline

Definition at line 12 of file flex_sensor.h.

12 {
13 // Update rate is 50-150hz, so this actually filters at 0.5-1.5hz -3db depending on E%, which is ok
15 }
void configureLowpass(float samplingFrequency, float cutoffFrequency, float Q=0.54f)
Definition biquad.cpp:48
Biquad m_filter
Definition flex_sensor.h:34
Here is the call graph for this function:

Member Function Documentation

◆ convert()

SensorResult FlexConverter::convert ( float  frequency) const
inlineoverridevirtual

Implements SensorConverter.

Definition at line 17 of file flex_sensor.h.

17 {
18 // Sensor should only report 50-150hz, significantly outside that range indicates a problem
19 // it changes to 200hz+ to indicate methanol "contamination"
20 if (frequency < 45) {
21 return UnexpectedCode::Low;
22 }
23
24 if (frequency > 155) {
25 return UnexpectedCode::High;
26 }
27
28 float flexPct = clampF(0, frequency - 50, 100);
29
30 return m_filter.filter(flexPct);
31 }
float filter(float input)
Definition biquad.cpp:74
Here is the call graph for this function:

Field Documentation

◆ m_filter

Biquad FlexConverter::m_filter
mutableprivate

Definition at line 34 of file flex_sensor.h.

Referenced by convert(), and FlexConverter().


The documentation for this class was generated from the following file: