From 7f73b9b1f6bb4408d8e73fa5df079d904a878002 Mon Sep 17 00:00:00 2001 From: kifir Date: Fri, 6 Dec 2024 21:44:36 +0200 Subject: [PATCH] Rename fields to enhance `nitrous_control_state` view #6783 --- firmware/controllers/algo/advance_map.cpp | 4 +- .../algo/nitrous_control_state.txt | 16 +++---- .../controllers/algo/nitrous_controller.cpp | 47 +++++++++---------- .../nitrous_control/nitrous_test_base.cpp | 30 ++++++------ .../test_nitrous_afr_condition.cpp | 2 +- .../nitrous_control/test_nitrous_arming.cpp | 2 +- .../test_nitrous_clt_condition.cpp | 2 +- .../test_nitrous_condition.cpp | 14 +++--- .../test_nitrous_map_condition.cpp | 2 +- .../test_nitrous_rpm_condition.cpp | 2 +- .../test_nitrous_speed_condition.cpp | 2 +- .../test_nitrous_tps_condition.cpp | 2 +- 12 files changed, 61 insertions(+), 64 deletions(-) diff --git a/firmware/controllers/algo/advance_map.cpp b/firmware/controllers/algo/advance_map.cpp index a1d9e7cc4c..58ac05a65f 100644 --- a/firmware/controllers/algo/advance_map.cpp +++ b/firmware/controllers/algo/advance_map.cpp @@ -123,9 +123,7 @@ angle_t getRunningAdvance(float rpm, float engineLoad) { ) { return engineConfiguration->torqueReductionIgnitionRetard; } - if (engineConfiguration->nitrousControlEnabled - && engine->module()->isNitrousConditionSatisfied - ) { + if (engineConfiguration->nitrousControlEnabled && engine->module()->isNitrousCondition) { advanceAngle -= engineConfiguration->nitrousIgnitionRetard; } #endif /* EFI_LAUNCH_CONTROL */ diff --git a/firmware/controllers/algo/nitrous_control_state.txt b/firmware/controllers/algo/nitrous_control_state.txt index 629cb82d52..35bffe3dff 100644 --- a/firmware/controllers/algo/nitrous_control_state.txt +++ b/firmware/controllers/algo/nitrous_control_state.txt @@ -1,12 +1,12 @@ struct_no_prefix nitrous_control_state_s -bit isArmed -bit isNitrousSpeedConditionSatisfied -bit isTpsConditionSatisfied -bit isCltConditionSatisfied -bit isMapConditionSatisfied -bit isAfrConditionSatisfied -bit isNitrousRpmConditionSatisfied -bit isNitrousConditionSatisfied +bit isNitrousArmed +bit isNitrousSpeedCondition +bit isNitrousTpsCondition +bit isNitrousCltCondition +bit isNitrousMapCondition +bit isNitrousAfrCondition +bit isNitrousRpmCondition +bit isNitrousCondition end_struct \ No newline at end of file diff --git a/firmware/controllers/algo/nitrous_controller.cpp b/firmware/controllers/algo/nitrous_controller.cpp index b079f492ea..a41c02e7cd 100644 --- a/firmware/controllers/algo/nitrous_controller.cpp +++ b/firmware/controllers/algo/nitrous_controller.cpp @@ -16,19 +16,19 @@ void NitrousController::onSlowCallback() { updateMapConditionSatisfied(); updateAfrConditionSatisfied(); updateRpmConditionSatisfied(); - isNitrousConditionSatisfied = ( - isArmed && isTpsConditionSatisfied && isNitrousSpeedConditionSatisfied && isCltConditionSatisfied - && isMapConditionSatisfied && isAfrConditionSatisfied && isNitrousRpmConditionSatisfied + isNitrousCondition = ( + isNitrousArmed && isNitrousSpeedCondition && isNitrousTpsCondition && isNitrousCltCondition + && isNitrousMapCondition && isNitrousAfrCondition && isNitrousRpmCondition ); } else { - isNitrousConditionSatisfied = false; + isNitrousCondition = false; } - enginePins.nitrousRelay.setValue(isNitrousConditionSatisfied); + enginePins.nitrousRelay.setValue(isNitrousCondition); } float NitrousController::getFuelCoefficient() const { float result = 1.0f; - if (engineConfiguration->nitrousControlEnabled && isNitrousConditionSatisfied) { + if (engineConfiguration->nitrousControlEnabled && isNitrousCondition) { result += engineConfiguration->nitrousFuelAdderPercent / 100.0f; } return result; @@ -37,15 +37,15 @@ float NitrousController::getFuelCoefficient() const { void NitrousController::updateArmingState() { switch (engineConfiguration->nitrousControlArmingMethod) { case DIGITAL_SWITCH_INPUT: { - isArmed = checkTriggerPinState(); + isNitrousArmed = checkTriggerPinState(); break; } case LUA_GAUGE: { - isArmed = checkLuaGauge(); + isNitrousArmed = checkLuaGauge(); break; } default: { // Unexpected value!!! - isArmed = false; + isNitrousArmed = false; break; } } @@ -54,37 +54,36 @@ void NitrousController::updateArmingState() { void NitrousController::updateSpeedConditionSatisfied() { if (engineConfiguration->nitrousMinimumVehicleSpeed != 0) { const expected speed = Sensor::get(SensorType::VehicleSpeed); - isNitrousSpeedConditionSatisfied = - speed.Valid && (engineConfiguration->nitrousMinimumVehicleSpeed <= speed.Value); + isNitrousSpeedCondition = speed.Valid && (engineConfiguration->nitrousMinimumVehicleSpeed <= speed.Value); } else { - isNitrousSpeedConditionSatisfied = true; + isNitrousSpeedCondition = true; } } void NitrousController::updateTpsConditionSatisfied() { if (engineConfiguration->nitrousMinimumTps != 0) { const expected tps = Sensor::get(SensorType::DriverThrottleIntent); - isTpsConditionSatisfied = tps.Valid && (engineConfiguration->nitrousMinimumTps <= tps.Value); + isNitrousTpsCondition = tps.Valid && (engineConfiguration->nitrousMinimumTps <= tps.Value); } else { - isTpsConditionSatisfied = true; + isNitrousTpsCondition = true; } } void NitrousController::updateCltConditionSatisfied() { if (engineConfiguration->nitrousMinimumClt != 0) { const expected clt = Sensor::get(SensorType::Clt); - isCltConditionSatisfied = clt.Valid && (engineConfiguration->nitrousMinimumClt <= clt.Value); + isNitrousCltCondition = clt.Valid && (engineConfiguration->nitrousMinimumClt <= clt.Value); } else { - isCltConditionSatisfied = true; + isNitrousCltCondition = true; } } void NitrousController::updateMapConditionSatisfied() { if (engineConfiguration->nitrousMaximumMap != 0) { const expected map = Sensor::get(SensorType::Map); - isMapConditionSatisfied = map.Valid && (map.Value <= engineConfiguration->nitrousMaximumMap); + isNitrousMapCondition = map.Valid && (map.Value <= engineConfiguration->nitrousMaximumMap); } else { - isMapConditionSatisfied = true; + isNitrousMapCondition = true; } } @@ -93,12 +92,12 @@ void NitrousController::updateAfrConditionSatisfied() { const expected lambda1 = Sensor::get(SensorType::Lambda1); if (lambda1.Valid) { const float afr = lambda1.Value * STOICH_RATIO; - isAfrConditionSatisfied = (afr <= static_cast(engineConfiguration->nitrousMaximumAfr)); + isNitrousAfrCondition = (afr <= static_cast(engineConfiguration->nitrousMaximumAfr)); } else { - isAfrConditionSatisfied = false; + isNitrousAfrCondition = false; } } else { - isAfrConditionSatisfied = true; + isNitrousAfrCondition = true; } } @@ -115,12 +114,12 @@ void NitrousController::updateRpmConditionSatisfied() { engineConfiguration->nitrousDeactivationRpm, engineConfiguration->nitrousDeactivationRpmWindow )) { - isNitrousRpmConditionSatisfied = false; + isNitrousRpmCondition = false; } else { - isNitrousRpmConditionSatisfied = (engineConfiguration->nitrousActivationRpm <= rpm); + isNitrousRpmCondition = (engineConfiguration->nitrousActivationRpm <= rpm); } } else { - isNitrousRpmConditionSatisfied = false; + isNitrousRpmCondition = false; } } diff --git a/unit_tests/tests/nitrous_control/nitrous_test_base.cpp b/unit_tests/tests/nitrous_control/nitrous_test_base.cpp index ccb03d52b6..ad852b6657 100644 --- a/unit_tests/tests/nitrous_control/nitrous_test_base.cpp +++ b/unit_tests/tests/nitrous_control/nitrous_test_base.cpp @@ -31,43 +31,43 @@ void NitrousTestBase::armNitrousControl() { setMockState(TEST_NITROUS_CONTROL_ARMING_PIN, true); periodicSlowCallback(); - EXPECT_TRUE(getModule().isArmed); + EXPECT_TRUE(getModule().isNitrousArmed); } void NitrousTestBase::satisfySpeedCondition() { updateVehicleSpeed(TEST_MIN_VEHICLE_SPEED, &TestBase::periodicSlowCallback); - EXPECT_TRUE(getModule().isNitrousSpeedConditionSatisfied); + EXPECT_TRUE(getModule().isNitrousSpeedCondition); } void NitrousTestBase::satisfyTpsCondition() { updateApp(TEST_MIN_TPS, &TestBase::periodicSlowCallback); - EXPECT_TRUE(getModule().isTpsConditionSatisfied); + EXPECT_TRUE(getModule().isNitrousTpsCondition); } void NitrousTestBase::satisfyCltCondition() { updateClt(TEST_MIN_CLT, &TestBase::periodicSlowCallback); - EXPECT_TRUE(getModule().isCltConditionSatisfied); + EXPECT_TRUE(getModule().isNitrousCltCondition); } void NitrousTestBase::satisfyMapCondition() { updateMap(TEST_MAX_MAP, &TestBase::periodicSlowCallback); - EXPECT_TRUE(getModule().isMapConditionSatisfied); + EXPECT_TRUE(getModule().isNitrousMapCondition); } void NitrousTestBase::satisfyAfrCondition() { updateLambda1(TEST_LAMBDA1, &TestBase::periodicSlowCallback); - EXPECT_TRUE(getModule().isAfrConditionSatisfied); + EXPECT_TRUE(getModule().isNitrousAfrCondition); } void NitrousTestBase::satisfyRpmCondition() { updateRpm(TEST_ACTIVATION_RPM, &TestBase::periodicSlowCallback); - EXPECT_TRUE(getModule().isNitrousRpmConditionSatisfied); + EXPECT_TRUE(getModule().isNitrousRpmCondition); } void NitrousTestBase::activateNitrousControl() { @@ -84,43 +84,43 @@ void NitrousTestBase::unarmNitrousControl() { setMockState(TEST_NITROUS_CONTROL_ARMING_PIN, false); periodicSlowCallback(); - EXPECT_FALSE(getModule().isArmed); + EXPECT_FALSE(getModule().isNitrousArmed); } void NitrousTestBase::unsatisfySpeedCondition() { updateVehicleSpeed(TEST_MIN_VEHICLE_SPEED - EPS5D, &TestBase::periodicSlowCallback); - EXPECT_FALSE(getModule().isNitrousSpeedConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousSpeedCondition); } void NitrousTestBase::unsatisfyTpsCondition() { updateApp(TEST_MIN_TPS - EPS5D, &TestBase::periodicSlowCallback); - EXPECT_FALSE(getModule().isTpsConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousTpsCondition); } void NitrousTestBase::unsatisfyCltCondition() { updateClt(TEST_MIN_CLT - EPS5D, &TestBase::periodicSlowCallback); - EXPECT_FALSE(getModule().isCltConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousCltCondition); } void NitrousTestBase::unsatisfyMapCondition() { updateMap(TEST_MAX_MAP + EPS5D, &TestBase::periodicSlowCallback); - EXPECT_FALSE(getModule().isMapConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousMapCondition); } void NitrousTestBase::unsatisfyAfrCondition() { updateLambda1(TEST_LAMBDA1 + EPS5D, &TestBase::periodicSlowCallback); - EXPECT_FALSE(getModule().isAfrConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousAfrCondition); } void NitrousTestBase::unsatisfyRpmCondition() { updateRpm(TEST_ACTIVATION_RPM - EPS5D, &TestBase::periodicSlowCallback); - EXPECT_FALSE(getModule().isNitrousRpmConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousRpmCondition); } void NitrousTestBase::deactivateNitrousControl() { @@ -134,6 +134,6 @@ void NitrousTestBase::deactivateNitrousControl() { } void NitrousTestBase::checkNitrousCondition(const bool expected, const char* const context) { - EXPECT_EQ(getModule().isNitrousConditionSatisfied, expected) << context; + EXPECT_EQ(getModule().isNitrousCondition, expected) << context; EXPECT_EQ(enginePins.nitrousRelay.getLogicValue(), expected) << context; } diff --git a/unit_tests/tests/nitrous_control/test_nitrous_afr_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_afr_condition.cpp index 9182f2d513..f47e304d69 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_afr_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_afr_condition.cpp @@ -28,7 +28,7 @@ namespace { void NitrousAfrConditionTest::checkAfrCondition(const std::vector& testData) { for (const AfrConditionTestData& item: testData) { updateLambda1(item.lambda1, &TestBase::periodicSlowCallback); - EXPECT_EQ(getModule().isAfrConditionSatisfied, item.expectedAfrCondition) + EXPECT_EQ(getModule().isNitrousAfrCondition, item.expectedAfrCondition) << item.context; } } diff --git a/unit_tests/tests/nitrous_control/test_nitrous_arming.cpp b/unit_tests/tests/nitrous_control/test_nitrous_arming.cpp index 6a2fda28f2..e4d931641c 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_arming.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_arming.cpp @@ -28,7 +28,7 @@ namespace { void NitrousArmingTest::checkArmingAfterPeriodicFastCallback(const bool shouldBeArmed, const char* const context) { periodicSlowCallback(); - EXPECT_EQ(getModule().isArmed, shouldBeArmed) << context; + EXPECT_EQ(getModule().isNitrousArmed, shouldBeArmed) << context; } TEST_F(NitrousArmingTest, checkDefault) { diff --git a/unit_tests/tests/nitrous_control/test_nitrous_clt_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_clt_condition.cpp index a3979691ab..4fca4af6cc 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_clt_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_clt_condition.cpp @@ -25,7 +25,7 @@ namespace { void NitrousCltConditionTest::checkCltCondition(const std::vector& testData) { for (const CltConditionTestData& item: testData) { updateClt(item.clt, &TestBase::periodicSlowCallback); - EXPECT_EQ(getModule().isCltConditionSatisfied, item.expectedCltCondition) + EXPECT_EQ(getModule().isNitrousCltCondition, item.expectedCltCondition) << item.context; } } diff --git a/unit_tests/tests/nitrous_control/test_nitrous_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_condition.cpp index c7ea1c06b7..e322073e1e 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_condition.cpp @@ -17,13 +17,13 @@ namespace { setUpTestConfiguration(); - EXPECT_FALSE(getModule().isArmed); - EXPECT_FALSE(getModule().isNitrousSpeedConditionSatisfied); - EXPECT_FALSE(getModule().isTpsConditionSatisfied); - EXPECT_FALSE(getModule().isCltConditionSatisfied); - EXPECT_FALSE(getModule().isMapConditionSatisfied); - EXPECT_FALSE(getModule().isAfrConditionSatisfied); - EXPECT_FALSE(getModule().isNitrousRpmConditionSatisfied); + EXPECT_FALSE(getModule().isNitrousArmed); + EXPECT_FALSE(getModule().isNitrousSpeedCondition); + EXPECT_FALSE(getModule().isNitrousTpsCondition); + EXPECT_FALSE(getModule().isNitrousCltCondition); + EXPECT_FALSE(getModule().isNitrousMapCondition); + EXPECT_FALSE(getModule().isNitrousAfrCondition); + EXPECT_FALSE(getModule().isNitrousRpmCondition); checkNitrousCondition(false, "No conditions are satisfied"); diff --git a/unit_tests/tests/nitrous_control/test_nitrous_map_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_map_condition.cpp index 55ab28f520..e99eecb639 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_map_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_map_condition.cpp @@ -23,7 +23,7 @@ namespace { void NitrousMapConditionTest::checkMapCondition(const std::vector& testData) { for (const MapConditionTestData& item: testData) { updateMap(item.map, &TestBase::periodicSlowCallback); - EXPECT_EQ(getModule().isMapConditionSatisfied, item.expectedMapCondition) + EXPECT_EQ(getModule().isNitrousMapCondition, item.expectedMapCondition) << item.context; } } diff --git a/unit_tests/tests/nitrous_control/test_nitrous_rpm_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_rpm_condition.cpp index d3a99f48dd..2949147c3b 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_rpm_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_rpm_condition.cpp @@ -46,7 +46,7 @@ namespace { void NitrousRpmConditionTest::checkRpmCondition(const std::vector& testData) { for (const RpmConditionTestData& item: testData) { updateRpm(item.rpm, &TestBase::periodicSlowCallback); - EXPECT_EQ(getModule().isNitrousRpmConditionSatisfied, item.expectedRpmCondition) + EXPECT_EQ(getModule().isNitrousRpmCondition, item.expectedRpmCondition) << item.context; } } diff --git a/unit_tests/tests/nitrous_control/test_nitrous_speed_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_speed_condition.cpp index 354fbc6310..364e7e8119 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_speed_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_speed_condition.cpp @@ -25,7 +25,7 @@ namespace { void NitrousSpeedConditionTest::checkSpeedCondition(const std::vector& testData) { for (const SpeedConditionTestData& item: testData) { updateVehicleSpeed(item.speed, &TestBase::periodicSlowCallback); - EXPECT_EQ(getModule().isNitrousSpeedConditionSatisfied, item.expectedSpeedCondition) + EXPECT_EQ(getModule().isNitrousSpeedCondition, item.expectedSpeedCondition) << item.context; } } diff --git a/unit_tests/tests/nitrous_control/test_nitrous_tps_condition.cpp b/unit_tests/tests/nitrous_control/test_nitrous_tps_condition.cpp index fbb775c233..a42587062f 100644 --- a/unit_tests/tests/nitrous_control/test_nitrous_tps_condition.cpp +++ b/unit_tests/tests/nitrous_control/test_nitrous_tps_condition.cpp @@ -25,7 +25,7 @@ namespace { void NitrousTpsConditionTest::checkTpsCondition(const std::vector& testData) { for (const TpsConditionTestData& item: testData) { updateApp(item.tps, &TestBase::periodicSlowCallback); - EXPECT_EQ(getModule().isTpsConditionSatisfied, item.expectedTpsCondition) + EXPECT_EQ(getModule().isNitrousTpsCondition, item.expectedTpsCondition) << item.context; } }