rusefi-1/unit_tests/test_sensors.cpp

67 lines
1.7 KiB
C++
Raw Normal View History

2014-08-29 07:52:33 -07:00
/**
* @file test_sensors.c
*
* @date Dec 7, 2013
* @author Andrey Belomutskiy, (c) 2012-2013
*/
#include "main.h"
#include "thermistors.h"
#include "allsensors.h"
2015-01-04 18:03:36 -08:00
#include "hip9011_lookup.h"
2014-08-29 07:52:33 -07:00
static ThermistorConf tc;
static void testMapDecoding(void) {
air_pressure_sensor_config_s s;
s.sensorType = MT_DENSO183;
assertEqualsM("denso 0 volts", -6.64, decodePressure(0, &s));
assertEquals(31.244, decodePressure(1, &s));
s.sensorType = MT_MPX4250;
assertEqualsM("MPX_4250 0 volts", 8, decodePressure(0, &s));
assertEquals(58.4, decodePressure(1, &s));
}
void testTpsRateOfChange(void) {
print("************************************************** testTpsRateOfChange\r\n");
saveTpsState(0, 0);
saveTpsState(CH_FREQUENCY, 50);
assertEquals(50, getTpsRateOfChange());
saveTpsState(2 * CH_FREQUENCY, 50);
assertEquals(0, getTpsRateOfChange());
saveTpsState(3 * CH_FREQUENCY, 75);
assertEquals(25, getTpsRateOfChange());
2015-01-04 18:03:36 -08:00
}
2014-08-29 07:52:33 -07:00
2015-01-04 18:03:36 -08:00
static void testHip9011lookup(void) {
print("************************************************** testHip9011lookup\r\n");
2014-08-29 07:52:33 -07:00
2015-01-04 18:03:36 -08:00
assertEqualsM2("", 47746.5195, getRpmByAngleWindowAndTimeUs(40, 360), 0.1);
assertEqualsM2("", 3183.1013, getRpmByAngleWindowAndTimeUs(600, 360), 0.1);
assertEqualsM2("", 22918.3301, getRpmByAngleWindowAndTimeUs(600, 50), 0.1);
2014-08-29 07:52:33 -07:00
}
void testSensors(void) {
print("************************************************** testSensors\r\n");
testMapDecoding();
testTpsRateOfChange();
2015-01-04 18:03:36 -08:00
testHip9011lookup();
2014-08-29 07:52:33 -07:00
setThermistorConfiguration(&tc, 32, 9500, 75, 2100, 120, 1000);
prepareThermistorCurve(&tc);
assertEquals(-0.003, tc.s_h_a);
assertEquals(0.001, tc.s_h_b);
assertEquals(0.0, tc.s_h_c);
float t = convertResistanceToKelvinTemperature(2100, &tc);
assertEquals(75 + KELV, t);
}
2015-01-04 18:03:36 -08:00