View unanswered posts | View active topics It is currently Mon Oct 23, 2017 9:55 pm



Reply to topic  [ 11 posts ]  Go to page 1, 2  Next
ColdStart Control Algorithms/Compensations/Trims/Enrichments 
Author Message
Online
Moderator
User avatar

Joined: Tue Jan 15, 2008 2:31 pm
Posts: 14828
Location: Home sweet home!
This thread is to try to work out an optimal way to handle extreme weather cold starts. Peter lives in a place where it gets damn cold. Currently his only tools are generic warm up across all operating conditions based on CHT and by % AND a priming pulse of tunable length based on CHT. He says that starting is not particularly good at ultra low temps (-20C or so?). These are ideal test conditions to hone a better set of GP algorithms.

If you know how any OEM system handles this intimately (I'm looking at you, Merp!) or have experience setting up standalone ECUs in cold climates (I'm looking at you, Baldur!), please share a detailed one-post write up on the topic.

Let's try to keep this thread pretty clean. I'll try to stay out of it. People with experience in cold places are welcome. People with knowledge of OEM strategies are welcome. Tuning standalones in Australia, NZ or Hawaii doesn't count, too warm :-p

Let's help Peter get something that works excellently for him so that he can tell some smart-arse, know-it-all teenager to fuck off!

Fred.

_________________
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!


Tue Mar 05, 2013 6:47 pm
Profile WWW
QFP80 - Contributor

Joined: Tue Aug 19, 2008 4:05 pm
Posts: 42
You'll want an enrichment percentage based on coolant temperature and another enrichment or gain factor based on time since start.
These can be joined in one 2D table of coolant temp vs time since start or as two individual tables.
At very low temperatures you'll need a lot of fuel to get the engine started but there is a significant lag between the combustion chamber and valves heating up and the engine coolant, so after just a few cycles where combustion takes place, the evaporating fraction of the fuel grows fast.

What you should probably also have is a gain factor for the enrichment based on engine load since WOT operation doesn't appear to need as much enrichment as part throttle and idle.


Tue Mar 05, 2013 8:09 pm
Profile
Online
Moderator
User avatar

Joined: Tue Jan 15, 2008 2:31 pm
Posts: 14828
Location: Home sweet home!
(20:13:21) TekniQue: fredcooke: without countering time since start in, a mixture rich enough to fire after a small amount of starting, will soon become too rich and stall the engine after starting
(20:14:10) TekniQue: I should also add, batch fuelling appears to work better than sequential for starting
(20:14:39) TekniQue: in my experience
(20:15:14) TekniQue: injecting more short pulses appears to work better than one long pulse
(20:15:23) TekniQue: (per cycle)
(20:19:15) Fred: probably true, more chance to evap

_________________
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!


Tue Mar 05, 2013 8:33 pm
Profile WWW
TO220 - Visibile
User avatar

Joined: Wed Jul 11, 2012 6:43 am
Posts: 5
Subaru OEM controls use a system very similar to what Baldur has described.

Cranking: fixed injector pulsewidth pulled from a 2D table with ECT axis. This logic uses a few different tables which are similar or identical. Regarding the choice of table, the guys who exposed these tables mentioned:
Quote:
some of it is based on whether the ignition switch is on or off and whether the motor has begun to start or not at any given time in the cranking process. TGV status may also be involved
Where TGV's are tumble generator valves. I will try to find some more insights as to the conditions for each and the effects. Then, these IPW values are compensated by a 3D table with RPM and ECT axes that decreases IPW as RPM increases between 100-500 RPM, and decreasing more when ECT goes below 0*C. Finally, IPW is compensated by a 2D table with throttle angle. The throttle table reduces IPW to zero as throttle is added above 50% or so, as to prevent/fix a flooded engine.

Post Start: Open loop fueling immediately after start until O2 is up to temp, then CL. During this time lambda enrichment offsets are applied to determine the minimum enrichment from stoich (closed loop) or target AFR (open loop) This offset is determined by adding the result of three branches of logic. All branches use their own tables for everything, nothing is shared between them.

Branch 1: Open Loop: pulled live from 2D table with ECT axis. Closed Loop: pulled live from a 3D table with Engine Load & ECT axes. No active decay of the value, it is continuously pulled from the table so it only decreases according to the table.

Branch 2: Initial value pulled from one of four similar 2D tables with ECT axis. Initial value is immediately decayed using a step which is pulled from one of two 2D tables with ECT axis. (choice is determined by the initial value table used)

Branch 3: Initial value follows the same type of logic as branch 2. Initial value is decayed by a fixed multiplier (0.9) after a delay period which is pulled from one of two 2D tables with ECT axis. (choice is also determined by the initial value table used)


Wed Mar 06, 2013 7:29 am
Profile
LQFP144 - On Top Of The Game
User avatar

Joined: Wed Jul 09, 2008 3:15 pm
Posts: 360
If I'm understanding baldur correctly, what he describes is also AEM's approach to this. Or it is very similar.

I will describe the tables in chronological order (as they are referenced during start-up) as best I can.

Image

Initial Crank Pulse table - This is fuel injection pulsewidth versus coolant temp. This is over and done with once you leave the cranking phase. Pretty self explanatory.

Crank Injector Time table - This is fuel injection pulsewidth percentage (not really, but best to think of it that way) from the above-mentioned table versus throttle position. This is over and done with once you leave the cranking phase. This is basically used for most to allow for a "flood clear" mode with high throttle application, but can be used to make sure fueling is correct during WOT starts.

Warm Up Enrichment table - This is fuel injection pulsewidth percentage added to the base fuel table versus coolant temp. Self explanatory.

Start Extra vs Temp table - This is fuel injection pulsewidth percentage added to the base fuel table versus coolant temp. This works directly with the next table...

Start Extra Decay table - This is time after leaving the cranking phase versus coolant temp. This represents how long the fuel added in the above table takes to decay (gradually reach zero).



The rest is not cold start fuel related.

RPM Offset vs Start table - This is additional idle RPM versus time after leaving the cranking phase.

Ign vs Start Time table - This is ignition timing adjustment versus time after leaving the cranking phase.

_________________
BenFenner's 1994 Black SE-R
BenFenner's 2000 Black M-Coupe


Tue Mar 12, 2013 11:26 pm
Profile
Online
Moderator
User avatar

Joined: Tue Jan 15, 2008 2:31 pm
Posts: 14828
Location: Home sweet home!
Ben and Merp, how is cranking phase determined? Simple RPM cut over point? Blend from one to the other?

_________________
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!


Wed Mar 13, 2013 12:03 am
Profile WWW
LQFP144 - On Top Of The Game
User avatar

Joined: Wed Jul 09, 2008 3:15 pm
Posts: 360
With AEM, the cranking phase is determined by two, adjustable, RPM points. "Crank Minimium RPM" and "Crank Exit RPM" which usually are set to values of 50 RPM and 400 RPM respectively. If you're not even cranking at 50 RPM then you get no fuel, nothing. If you're over 400 RPM the cranking phase is over. It is a simple cut-over. No blending. (Unless you count the extra fuel that decays with time as a sort of blend...)

_________________
BenFenner's 1994 Black SE-R
BenFenner's 2000 Black M-Coupe


Wed Mar 13, 2013 12:09 am
Profile
LQFP144 - On Top Of The Game
User avatar

Joined: Wed Jul 09, 2008 3:15 pm
Posts: 360
There's one more thing I forgot. A table of tip-in enrichment percentage (draws data from the tip-in enrichment table(s)) versus coolant temp.

_________________
BenFenner's 1994 Black SE-R
BenFenner's 2000 Black M-Coupe


Last edited by BenFenner on Mon Jun 02, 2014 4:52 pm, edited 1 time in total.



Wed Mar 13, 2013 1:11 pm
Profile
QFP80 - Contributor

Joined: Thu Mar 19, 2009 3:05 am
Posts: 99
the Ign vs Start Time table is one of the best things GeMs (Makers of AEM) ever did.
Every dam ecu should have it.


Wed Mar 13, 2013 3:59 pm
Profile
Online
Moderator
User avatar

Joined: Tue Jan 15, 2008 2:31 pm
Posts: 14828
Location: Home sweet home!
Just read through this again, and there's a lot to digest, but I'm living with bad cold starts at the moment due to a lack of such behaviour from FreeEMS. On the other hand, the car has NEVER since I first bought it started as well hot as it does not. Beautiful. Expect some progress in this area soon as I have the tools (winter + TBI) to test any uncertain implementation choices. :-)

_________________
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!


Wed May 28, 2014 7:53 am
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 11 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software for PTF. ColorizeIt.