From 5d6d1fa2b612da6911c0c96521a79c61335b1aae Mon Sep 17 00:00:00 2001 From: DenisMitchell <46486778+DenisMitchell@users.noreply.github.com> Date: Fri, 10 Jan 2025 00:42:18 -0500 Subject: [PATCH] Flesh out RPM-Limit and Boost-Cut pages (#292) * Update RPM-Limit.md First draft at fleshing out this page. * Create ElectronicThrottleLimiting.png * Update RPM-Limit.md * Add images, add warning and danger notices for spark cut Adding Docusaurus warning and danger notes for spark cut. I think it's appropriate to warn users of the risks posed. Reference soft limit settings: Soft Limiting https://github.com/FOME-Tech/fome-fw/blob/51a23364e20d2584bb30194b8c13b622014b898f/firmware/controllers/actuators/electronic_throttle.cpp#L311 * Fix EoL I hope. * Correct RPM limit format, flesh out Boost Cut page Corrected format of RPM-Limit to match other pages in the wiki. Fleshed out Boost-Cut. Reference for hard-coded 20kPa hysteresis for boost cut: https://github.com/FOME-Tech/fome-fw/blob/51a23364e20d2584bb30194b8c13b622014b898f/firmware/controllers/limp_manager.cpp#L102 --- docs/05-Limits-And-Protections/Boost-Cut.md | 12 ++++++ .../Boost-Cut/BoostCutPressure.png | Bin 0 -> 16439 bytes docs/05-Limits-And-Protections/RPM-Limit.md | 36 ++++++++++++++++-- .../RPM-Limit/ElectronicThrottleLimiting.png | Bin 0 -> 6031 bytes .../RPM-Limit/revLimitHardCuts.png | Bin 0 -> 12538 bytes 5 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 docs/05-Limits-And-Protections/Boost-Cut/BoostCutPressure.png create mode 100644 docs/05-Limits-And-Protections/RPM-Limit/ElectronicThrottleLimiting.png create mode 100644 docs/05-Limits-And-Protections/RPM-Limit/revLimitHardCuts.png diff --git a/docs/05-Limits-And-Protections/Boost-Cut.md b/docs/05-Limits-And-Protections/Boost-Cut.md index bc0d505..bd4c8cd 100644 --- a/docs/05-Limits-And-Protections/Boost-Cut.md +++ b/docs/05-Limits-And-Protections/Boost-Cut.md @@ -1 +1,13 @@ # Boost pressure limit + +Boost pressure limit can be found under __Base Engine > Limits and fallbacks__. + +![image](Boost-Cut/BoostCutPressure.png) + +## Boost cut pressure + +This setting defines the upper limit of pressure the engine will operate within. If the engine's MAP reading exceeds the value configured in __Boost cut pressure__, FOME will cut fuel injection until the MAP reading falls 20kPa below the configured value. The 20kPa hysteresis value is hard-coded. + +This value is absolute pressure, so if an engine is running 7 PSIG of boost pressure (~148kPa absolute), this value would need to be set above 150kPa. It is a good idea to allow enough of a margin to prevent unnecessary boost cut on small excursions above the target boost pressure. + +Set this value to 0 to disable the boost cut limit. diff --git a/docs/05-Limits-And-Protections/Boost-Cut/BoostCutPressure.png b/docs/05-Limits-And-Protections/Boost-Cut/BoostCutPressure.png new file mode 100644 index 0000000000000000000000000000000000000000..e5ebaff7145d18473339da8e035ce0ac37ac2a9a GIT binary patch literal 16439 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 bL}ta95ce*yy%qMd{|i}3C5b9Alc4_r)aBxu literal 0 HcmV?d00001 diff --git a/docs/05-Limits-And-Protections/RPM-Limit.md b/docs/05-Limits-And-Protections/RPM-Limit.md index 77c84d3..0d5cbb3 100644 --- a/docs/05-Limits-And-Protections/RPM-Limit.md +++ b/docs/05-Limits-And-Protections/RPM-Limit.md @@ -1,13 +1,43 @@ # Rev limiters +Rev limiters can be found under _Base Engine > Limits and fallbacks_. + ## Hard cuts +![image](RPM-Limit/revLimitHardCuts.png) + +Hard cuts apply when an engine reaches the _RPM hard limit_. In most cases, it is recommended to use fuel cut instead of spark cut. + ### Fuel cut +If _Cut fuel on RPM limit_ is set to __yes__, FOME will stop injecting fuel once the engine reaches the _RPM hard limit_. The engine speed must drop below the _RPM hard limit_ by the number of RPM specified in _Hard limit hysteresis_ before fuel injection is resumed. + ### Spark cut -### Both cut +If _Cut spark on RPM limit_ is set to __yes__, FOME will stop firing the ignition coil(s) once the engine reaches the _RPM hard limit_. The engine speed must drop below the _RPM hard limit_ by the number of RPM specified in _Hard limit hysteresis_ before ignition is resumed. + +:::danger + +If _Cut fuel on RPM limit_ is set to __no__ then fuel will continue to be injected during the spark cut. This can cause a build-up of unburned fuel in the exhaust system which may ignite when ignition resumes and can cause damage to the engine and exhaust system. + +::: + +:::warning + +Cutting spark can lead to engine valvetrain damage due to the immediate reduction in torque. It is recommended to use fuel cut instead of spark cut in most cases. + +::: + +### Both cut + +Both fuel cut and spark cut can be used together. This reduces the risk of unburned fuel in the exhaust when using spark cut, but the risk of valvetrain damage still applies. + +## Soft limiting + +### Electronic Throttle Limiting + +![image](RPM-Limit/ElectronicThrottleLimiting.png) -## Soft limiting +Engines equipped with an Electronic Throttle Body (ETB) can utilize Electronic Throttle Limiting. This will smoothly close the throttle starting at the _Soft limiter start_ engine speed and fully close it once the engine speed has increased by the number of RPM defined in _Soft limiter range_. -### ETB soft limit \ No newline at end of file +For example, if _Soft limiter start_ is 6000 RPM and _Soft limiter range_ is 200 RPM, the maximum ETB position possible at 6100 RPM is 50%, and at 6200 RPM the electronic throttle will be fully closed even if the accelerator pedal is commanding a larger opening. diff --git a/docs/05-Limits-And-Protections/RPM-Limit/ElectronicThrottleLimiting.png b/docs/05-Limits-And-Protections/RPM-Limit/ElectronicThrottleLimiting.png new file mode 100644 index 0000000000000000000000000000000000000000..5f870f7c2ac807f15c9a4a3f05f8c0c5d4fdb571 GIT binary patch literal 6031 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 literal 0 HcmV?d00001 diff --git a/docs/05-Limits-And-Protections/RPM-Limit/revLimitHardCuts.png b/docs/05-Limits-And-Protections/RPM-Limit/revLimitHardCuts.png new file mode 100644 index 0000000000000000000000000000000000000000..f3e277e19e9d2697614a0a501592d672f52171d0 GIT binary patch literal 12538 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 HtN(uk>DAyG literal 0 HcmV?d00001