safer NB2 progress (#3041)

* safer NB2 progress

* one step back
This commit is contained in:
rusefillc 2021-07-23 16:43:24 -04:00 committed by GitHub
parent 16d98f417f
commit 23842bf143
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 14 additions and 11 deletions

View File

@ -69,7 +69,11 @@ void initializeMazdaMiataNb2Crank(TriggerWaveform *s) {
s->tdcPosition = 60 + 655;
// Nominal gap 70/110 = 0.636
s->setTriggerSynchronizationGap2(0.35f, 0.98f);
// Nominal gap 110/70 = 1.571
s->setSecondTriggerSynchronizationGap2(1.05f, 1.8f);
// todo: NB2 fronts are inverted comparing to NB1, life is not perfect :(
s->addEventAngle(180.0f - NB_CRANK_MAGIC - 4, T_PRIMARY, TV_FALL);
s->addEventAngle(180.0f - NB_CRANK_MAGIC, T_PRIMARY, TV_RISE);

View File

@ -25,7 +25,7 @@ TEST(realCrankingNB2, normalCranking) {
ASSERT_EQ(942, GET_RPM());
// TODO: why warnings?
ASSERT_EQ(2, eth.recentWarnings()->getCount());
ASSERT_EQ(3, eth.recentWarnings()->getCount());
}
TEST(realCrankingNB2, crankingMissingInjector) {
@ -42,7 +42,7 @@ TEST(realCrankingNB2, crankingMissingInjector) {
// VVT position nearly zero!
EXPECT_NEAR(engine->triggerCentral.getVVTPosition(0, 0), -7.1926f, 1e-4);
ASSERT_EQ(209, GET_RPM());
ASSERT_EQ(668, GET_RPM());
// TODO: why warnings?
ASSERT_EQ(2, eth.recentWarnings()->getCount());

View File

@ -8,9 +8,9 @@
#include "engine_test_helper.h"
static void postFourEvents(EngineTestHelper *eth, float mult) {
eth->fireFall(mult * 384);
eth->fireFall(mult * 394);
eth->fireRise(mult * 16);
eth->fireFall(mult * 304);
eth->fireFall(mult * 294);
eth->fireRise(mult * 16);
}
@ -59,9 +59,9 @@ TEST(engine, testSymmetricalCrank) {
postFourEvents(&eth, mult);
ASSERT_EQ( 0, GET_RPM()) << "RPM#0";
eth.fireFall(mult * 384);
eth.fireFall(mult * 394);
eth.fireRise(mult * 16);
eth.fireFall(mult * 304);
eth.fireFall(mult * 294);
ASSERT_FALSE(engine->triggerCentral.triggerState.getShaftSynchronized());
eth.fireRise(mult * 16);
ASSERT_TRUE(engine->triggerCentral.triggerState.getShaftSynchronized());
@ -70,18 +70,17 @@ TEST(engine, testSymmetricalCrank) {
for (int i = 0; i < 6 ; i++) {
for (int i = 0; i < 6; i++) {
postFourEvents(&eth, mult);
ASSERT_EQ( 0, GET_RPM()) << "RPM#0";
}
mult = 0.1;
postFourEvents(&eth, mult);
ASSERT_EQ( 1042, GET_RPM()) << "RPM#11";
ASSERT_EQ(2084, GET_RPM()) << "RPM#11";
postFourEvents(&eth, mult);
ASSERT_EQ( 1042, GET_RPM()) << "RPM#11";
ASSERT_EQ(2084, GET_RPM()) << "RPM#11";
postFourEvents(&eth, mult);
ASSERT_EQ( 1042, GET_RPM()) << "RPM#11";
ASSERT_EQ(2084, GET_RPM()) << "RPM#11";
}