TT_HONDA_K_12_1

This commit is contained in:
rusefi 2020-04-19 14:23:01 -04:00
parent d74e7f5d11
commit c1a4bd857b
10 changed files with 262 additions and 10 deletions

View File

@ -1157,6 +1157,8 @@ case TT_MAZDA_MIATA_VVT_TEST:
return "TT_MAZDA_MIATA_VVT_TEST";
case TT_MAZDA_SOHC_4:
return "TT_MAZDA_SOHC_4";
case TT_HONDA_K_12_1:
return "TT_HONDA_K_12_1";
case TT_RENIX_66_2_2_2:
return "TT_RENIX_66_2_2_2";
case TT_RENIX_44_2_2:

View File

@ -337,13 +337,15 @@ typedef enum {
*/
TT_RENIX_66_2_2_2 = 45,
TT_HONDA_K_12_1 = 46,
// do not forget to edit "#define trigger_type_e_enum" line in integration/rusefi_config.txt file to propogate new value to rusefi.ini TS project
// do not forget to invoke "gen_config.bat" once you make changes to integration/rusefi_config.txt
// todo: one day a hero would integrate some of these things into Makefile in order to reduce manual magic
//
// Another point: once you add a new trigger, run get_trigger_images.bat which would run rusefi_test.exe from unit_tests
//
TT_UNUSED = 46, // this is used if we want to iterate over all trigger types
TT_UNUSED = 47, // this is used if we want to iterate over all trigger types
Force_4_bytes_size_trigger_type = ENUM_32_BITS,
} trigger_type_e;

View File

@ -333,4 +333,22 @@ void configureOnePlus16(TriggerWaveform *s, operation_mode_e operationMode) {
s->useOnlyPrimaryForSync = true;
}
// TT_HONDA_K_12_1
void configureHondaK_12_1(TriggerWaveform *s) {
s->initialize(FOUR_STROKE_CRANK_SENSOR);
s->setTriggerSynchronizationGap(3);
int count = 12;
float tooth = s->getCycleDuration() / count; // hint: tooth = 30
float width = 4; // for VR we only handle rises so width does not matter much
s->addEventAngle(20 - width, T_PRIMARY, TV_RISE);
s->addEventAngle(20, T_PRIMARY, TV_FALL);
for (int i = 1; i <= count; i++) {
s->addEventAngle(tooth * i - width, T_PRIMARY, TV_RISE);
s->addEventAngle(tooth * i, T_PRIMARY, TV_FALL);
}
}

View File

@ -22,4 +22,6 @@ void configureOnePlus16(TriggerWaveform *s, operation_mode_e operationMode);
void configureHondaCbr600(TriggerWaveform *s);
void configureHondaCbr600custom(TriggerWaveform *s);
void configureHondaK_12_1(TriggerWaveform *s);

View File

@ -15,7 +15,8 @@ void initializeRenix44_2_2(TriggerWaveform *s) {
s->initialize(FOUR_STROKE_SYMMETRICAL_CRANK_SENSOR);
// 44-2-2 is symmetrical so we only need to define one half
float tooth = 180.0 / 22; // hint: tooth = 8.181818 degrees
int count = 22;
float tooth = s->getCycleDuration() / count; // hint: tooth = 8.181818 degrees
float currentAngle = 0;
for (int i = 0;i < 20;i++) {
@ -27,6 +28,6 @@ void initializeRenix44_2_2(TriggerWaveform *s) {
s->addEventAngle(currentAngle + tooth, T_PRIMARY, TV_RISE);
// float math error accumulates at this point so we have to spell out 180
s->addEventAngle(180, T_PRIMARY, TV_FALL);
s->addEventAngle(s->getCycleDuration(), T_PRIMARY, TV_FALL);
}

View File

@ -548,6 +548,10 @@ void TriggerWaveform::initializeTriggerWaveform(Logging *logger, operation_mode_
setToothedWheelConfiguration(this, 36, 1, ambiguousOperationMode);
break;
case TT_HONDA_K_12_1:
configureHondaK_12_1(this);
break;
case TT_HONDA_4_24_1:
configureHonda_1_4_24(this, true, true, T_CHANNEL_3, T_PRIMARY, 0);
shapeWithoutTdc = true;

View File

@ -260,6 +260,8 @@ public:
*/
angle_t getAngle(int phaseIndex) const;
angle_t getCycleDuration() const;
/**
* index of synchronization event within TriggerWaveform
* See findTriggerZeroEventIndex()
@ -289,9 +291,6 @@ private:
* this is part of performance optimization
*/
operation_mode_e operationMode;
angle_t getCycleDuration() const;
};
void setToothedWheelConfiguration(TriggerWaveform *s, int total, int skipped, operation_mode_e operationMode);

View File

@ -503,7 +503,7 @@ struct trigger_config_s @brief Trigger wheel(s) configuration
custom bool32_t 4 bits, U32, @OFFSET@, [0:0], "false", "true"
#define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "trg46", "trg47", "trg48", "INVALID"
#define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "trg47", "trg48", "INVALID"
custom trigger_type_e 4 bits, U32, @OFFSET@, [0:7], @@trigger_type_e_enum@@
trigger_type_e type;set trigger_type X

View File

@ -1,6 +1,6 @@
package com.rusefi.config.generated;
// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.bat integration\rusefi_config.txt Sun Apr 19 09:40:24 EDT 2020
// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.bat integration\rusefi_config.txt Sun Apr 19 10:01:15 EDT 2020
// by class com.rusefi.output.FileJavaFieldsConsumer
import com.rusefi.config.*;
@ -1655,7 +1655,7 @@ public class Fields {
public static final Field TPS2_1ADCCHANNEL = Field.create("TPS2_1ADCCHANNEL", 515, FieldType.INT8, adc_channel_e);
public static final Field OVERRIDECRANKINGIGNITION = Field.create("OVERRIDECRANKINGIGNITION", 516, FieldType.INT);
public static final Field SENSORCHARTFREQUENCY = Field.create("SENSORCHARTFREQUENCY", 520, FieldType.INT);
public static final String[] trigger_type_e = {"custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "trg46", "trg47", "trg48", "INVALID"};
public static final String[] trigger_type_e = {"custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "1+60/2", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "2JZ", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped" , "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "trg47", "trg48", "INVALID"};
public static final Field TRIGGER_TYPE = Field.create("TRIGGER_TYPE", 524, FieldType.INT, trigger_type_e);
public static final Field TRIGGER_TODOREMOVEMEONEDAY0 = Field.create("TRIGGER_TODOREMOVEMEONEDAY0", 528, FieldType.BIT, 0);
public static final Field TRIGGER_TODOREMOVEMEONEDAY1 = Field.create("TRIGGER_TODOREMOVEMEONEDAY1", 528, FieldType.BIT, 1);

View File

@ -2465,7 +2465,7 @@ event 2 1 317.00
event 3 0 340.00
event 4 1 360.00
event 5 0 685.00
TRIGGERTYPE 44 168 TT_MIATA_NB2_VVT_CAM 0.00
TRIGGERTYPE 44 168 TT_RENIX_44_2_2 0.00
# duty 0.50 0.00
event 0 1 0.00
event 1 0 8.18
@ -2635,3 +2635,227 @@ event 164 1 699.55
event 165 0 703.64
event 166 1 707.73
event 167 0 711.82
TRIGGERTYPE 45 168 TT_RENIX_66_2_2_2 0.00
# duty 0.50 0.00
event 0 1 0.00
event 1 0 8.18
event 2 1 12.27
event 3 0 16.36
event 4 1 20.45
event 5 0 24.55
event 6 1 28.64
event 7 0 32.73
event 8 1 36.82
event 9 0 40.91
event 10 1 45.00
event 11 0 49.09
event 12 1 53.18
event 13 0 57.27
event 14 1 61.36
event 15 0 65.45
event 16 1 69.55
event 17 0 73.64
event 18 1 77.73
event 19 0 81.82
event 20 1 85.91
event 21 0 90.00
event 22 1 94.09
event 23 0 98.18
event 24 1 102.27
event 25 0 106.36
event 26 1 110.45
event 27 0 114.55
event 28 1 118.64
event 29 0 122.73
event 30 1 126.82
event 31 0 130.91
event 32 1 135.00
event 33 0 139.09
event 34 1 143.18
event 35 0 147.27
event 36 1 151.36
event 37 0 155.45
event 38 1 159.55
event 39 0 163.64
event 40 1 167.73
event 41 0 171.82
event 42 1 180.00
event 43 0 188.18
event 44 1 192.27
event 45 0 196.36
event 46 1 200.45
event 47 0 204.55
event 48 1 208.64
event 49 0 212.73
event 50 1 216.82
event 51 0 220.91
event 52 1 225.00
event 53 0 229.09
event 54 1 233.18
event 55 0 237.27
event 56 1 241.36
event 57 0 245.45
event 58 1 249.55
event 59 0 253.64
event 60 1 257.73
event 61 0 261.82
event 62 1 265.91
event 63 0 270.00
event 64 1 274.09
event 65 0 278.18
event 66 1 282.27
event 67 0 286.36
event 68 1 290.45
event 69 0 294.55
event 70 1 298.64
event 71 0 302.73
event 72 1 306.82
event 73 0 310.91
event 74 1 315.00
event 75 0 319.09
event 76 1 323.18
event 77 0 327.27
event 78 1 331.36
event 79 0 335.45
event 80 1 339.55
event 81 0 343.64
event 82 1 347.73
event 83 0 351.82
event 84 1 360.00
event 85 0 368.18
event 86 1 372.27
event 87 0 376.36
event 88 1 380.45
event 89 0 384.55
event 90 1 388.64
event 91 0 392.73
event 92 1 396.82
event 93 0 400.91
event 94 1 405.00
event 95 0 409.09
event 96 1 413.18
event 97 0 417.27
event 98 1 421.36
event 99 0 425.45
event 100 1 429.55
event 101 0 433.64
event 102 1 437.73
event 103 0 441.82
event 104 1 445.91
event 105 0 450.00
event 106 1 454.09
event 107 0 458.18
event 108 1 462.27
event 109 0 466.36
event 110 1 470.45
event 111 0 474.55
event 112 1 478.64
event 113 0 482.73
event 114 1 486.82
event 115 0 490.91
event 116 1 495.00
event 117 0 499.09
event 118 1 503.18
event 119 0 507.27
event 120 1 511.36
event 121 0 515.45
event 122 1 519.55
event 123 0 523.64
event 124 1 527.73
event 125 0 531.82
event 126 1 540.00
event 127 0 548.18
event 128 1 552.27
event 129 0 556.36
event 130 1 560.45
event 131 0 564.55
event 132 1 568.64
event 133 0 572.73
event 134 1 576.82
event 135 0 580.91
event 136 1 585.00
event 137 0 589.09
event 138 1 593.18
event 139 0 597.27
event 140 1 601.36
event 141 0 605.45
event 142 1 609.55
event 143 0 613.64
event 144 1 617.73
event 145 0 621.82
event 146 1 625.91
event 147 0 630.00
event 148 1 634.09
event 149 0 638.18
event 150 1 642.27
event 151 0 646.36
event 152 1 650.45
event 153 0 654.55
event 154 1 658.64
event 155 0 662.73
event 156 1 666.82
event 157 0 670.91
event 158 1 675.00
event 159 0 679.09
event 160 1 683.18
event 161 0 687.27
event 162 1 691.36
event 163 0 695.45
event 164 1 699.55
event 165 0 703.64
event 166 1 707.73
event 167 0 711.82
TRIGGERTYPE 46 52 TT_HONDA_K_12_1 0.00
# duty 0.86 0.00
event 0 1 0.00
event 1 0 4.00
event 2 1 30.00
event 3 0 34.00
event 4 1 60.00
event 5 0 64.00
event 6 1 90.00
event 7 0 94.00
event 8 1 120.00
event 9 0 124.00
event 10 1 150.00
event 11 0 154.00
event 12 1 180.00
event 13 0 184.00
event 14 1 210.00
event 15 0 214.00
event 16 1 240.00
event 17 0 244.00
event 18 1 270.00
event 19 0 274.00
event 20 1 300.00
event 21 0 304.00
event 22 1 320.00
event 23 0 324.00
event 24 1 330.00
event 25 0 334.00
event 26 1 360.00
event 27 0 364.00
event 28 1 390.00
event 29 0 394.00
event 30 1 420.00
event 31 0 424.00
event 32 1 450.00
event 33 0 454.00
event 34 1 480.00
event 35 0 484.00
event 36 1 510.00
event 37 0 514.00
event 38 1 540.00
event 39 0 544.00
event 40 1 570.00
event 41 0 574.00
event 42 1 600.00
event 43 0 604.00
event 44 1 630.00
event 45 0 634.00
event 46 1 660.00
event 47 0 664.00
event 48 1 680.00
event 49 0 684.00
event 50 1 690.00
event 51 0 694.00