Author Topic: Acceleration enrichment query  (Read 41682 times)

Offline Tony C

  • Hero Member
  • *****
  • Posts: 650
  • BHP: 8
    • Capriracing
Re: Acceleration enrichment query
« Reply #15 on: August 16, 2007, 08:52:02 pm »
have dropped my first bin to 2 also now, and she seems to be ok with this, (cheers Dave)

as a rule of thumb for a setting up setting, what would an ideal accel duration be? mines at 2.9ms

accelbins now are:
0 - 2
1 - 6
2 - 20
3 - 40

accel amount:
0 - 1.2
1 - 1.5
2 - 1.8
3 - 2.2
accel duration 2.9ms

is any one got anything similar??? or can any one see somewhere that could need tweeking etc,
ta again for a good forum Rob.

Vems Ecu, Twin Plenum efi and N2o
13.314 @ 104.39 mph (10/06/07 3.9 v8)
Sponsored by: www.caprisport.com & www.interpart.biz
Web site: http://www.capriracing.co.uk

Vems Firmware: V1.1.74

Offline dnb

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 837
  • BHP: 19
Re: Acceleration enrichment query
« Reply #16 on: August 17, 2007, 12:48:35 am »
Almost the same as my set-up!  The only way to tweak is to do detailed analysis of the log files.

I think I can write some perl to do this, but I haven't had chance yet.   

Offline Tony C

  • Hero Member
  • *****
  • Posts: 650
  • BHP: 8
    • Capriracing
Re: Acceleration enrichment query
« Reply #17 on: August 17, 2007, 04:27:48 pm »
cool im glad im getting the hang of the settings and seat of the pants feel when tuning  :D

keep me posted on the perl Dave,

Vems Ecu, Twin Plenum efi and N2o
13.314 @ 104.39 mph (10/06/07 3.9 v8)
Sponsored by: www.caprisport.com & www.interpart.biz
Web site: http://www.capriracing.co.uk

Vems Firmware: V1.1.74

Offline antonch

  • Jr. Member
  • **
  • Posts: 67
  • BHP: 4
Re: Acceleration enrichment query
« Reply #18 on: August 18, 2007, 01:22:29 am »
Wouldn't it make more sense to normalize these numbers (in ms) against the value req_fuel? So the settings wouldn't vary as much from engine to engine.

Offline cliffb75

  • Global Moderator
  • Full Member
  • *****
  • Posts: 167
  • BHP: 10
Re: Acceleration enrichment query
« Reply #19 on: August 18, 2007, 09:53:22 pm »
Wouldn't it make more sense to normalize these numbers (in ms) against the value req_fuel? So the settings wouldn't vary as much from engine to engine.

Nice idea, but unfortunately it doesn't work quite like that.

The req fuel value is basically an injector characteristic value. However accel enrichment is required due to intake design factors - distance from injector to valve, port shape, air velocity plus some others. Therefore if you had two engines that were identical except for different sized injectors, then your idea would work. However, if you have two different engines, but that use the same size injectors (i.e. the same req fuel) then it won't, since the amount of additional fuel required to form and maintain the wall film will be different.


Offline antonch

  • Jr. Member
  • **
  • Posts: 67
  • BHP: 4
Re: Acceleration enrichment query
« Reply #20 on: August 20, 2007, 08:42:12 am »
Wouldn't it make more sense to normalize these numbers (in ms) against the value req_fuel? So the settings wouldn't vary as much from engine to engine.

Nice idea, but unfortunately it doesn't work quite like that.

The req fuel value is basically an injector characteristic value. However accel enrichment is required due to intake design factors - distance from injector to valve, port shape, air velocity plus some others. Therefore if you had two engines that were identical except for different sized injectors, then your idea would work. However, if you have two different engines, but that use the same size injectors (i.e. the same req fuel) then it won't, since the amount of additional fuel required to form and maintain the wall film will be different.



Right but if we look at todays accel. enrichment model its just dVoltage dtime, which is pretty weak in my opinion. As an example, it doesn't take wall wetting or air speed into the account. A tau-X model takes into account all the factors that you have mentioned. In fact, it is so great it can also deal with cold enrichment.

So a normalized number is a step up. At least you are removing the injector characteristic out of the equation.

I really do wish that VEMS would improve its accel enrichment model....

Offline rob@vems.co.uk

  • Hero Member
  • *****
  • Posts: 3115
  • BHP: 49
    • VEMS Forum
Re: Acceleration enrichment query
« Reply #21 on: August 20, 2007, 09:22:16 am »
The enrichment model is being worked on, 1.1.26 has a number of improvements regarding enrichment decay and retriggering.
There are many methods of calculating enrichment X-Tau has quite a large map which will be in reality difficult for people like us to set up and use properly, we have our eyes on quite a simple to use method which is used in a number of aftermarket ECUs.

Rob

Offline Jorgen

  • Global Moderator
  • Jr. Member
  • *****
  • Posts: 59
  • BHP: 500
Re: Acceleration enrichment query
« Reply #22 on: August 20, 2007, 11:57:36 pm »
Wouldn't it make more sense to normalize these numbers (in ms) against the value req_fuel? So the settings wouldn't vary as much from engine to engine.

Nice idea, but unfortunately it doesn't work quite like that.

The req fuel value is basically an injector characteristic value. However accel enrichment is required due to intake design factors - distance from injector to valve, port shape, air velocity plus some others. Therefore if you had two engines that were identical except for different sized injectors, then your idea would work. However, if you have two different engines, but that use the same size injectors (i.e. the same req fuel) then it won't, since the amount of additional fuel required to form and maintain the wall film will be different.

The req fuel is still a good reference, we work with engines that are improved over time and many engines see injector changes in the middle of it's life and we as tuners also tend to reuse base maps from one engine on an other similar engine.

I have used a system that use something similar to a req_fuel based acc enrich. Even with default settings it has been very good on all engines I have used it for. There can always be improvements but the engines I have tried it on has been very different and they have worked very well.

We know that many users will not do the acc enrich setup properly and a req_fuel based setup is much more likely to work ok on their engine.

I'm also thinking about generic scalers to handle the acc enrich demand over rpm and load. Something that is used in addition to the 3d rpm and load tables for decay and amount. I like flat tables and anything that can be flattened by using hidden scalers and compensations is good. Most likely with the option to turn the hidden optimizations on and off.

Cliff, can you offer any imput on the general acc enrich demand over rpm and load? I have seen that the acc enrich has to be more or less removed whenever you are on boost and that high rpm also decrease the demand.

The lambda at the load site we are comming from also affects the amount needed. That should be considered in the new implementation.

Jörgen

Offline dnb

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 837
  • BHP: 19
Re: Acceleration enrichment query
« Reply #23 on: August 22, 2007, 03:18:05 pm »
I thought some parts of these graphs might be useful to study acceleration enrichment.  Here's a few graphs from the dyno run.  The contents should explain themselves quite well.  MAP rises very quickly compared to TPS - should I consider MAP based enrichment?  There's plenty more data if you want it.  (Note that I am now fairly sure there are no settings for accel enrich for my engine which cover everything with the current implementation.)

Also note the lack of power but silly torque from the car - the results feel right, as it's useless beyond 3500 RPM ;)  Most of this is down to lousy standard TVR induction, and the fix for this is in hand.




Offline cliffb75

  • Global Moderator
  • Full Member
  • *****
  • Posts: 167
  • BHP: 10
Re: Acceleration enrichment query
« Reply #24 on: August 23, 2007, 10:32:01 pm »
Wouldn't it make more sense to normalize these numbers (in ms) against the value req_fuel? So the settings wouldn't vary as much from engine to engine.

Nice idea, but unfortunately it doesn't work quite like that.

The req fuel value is basically an injector characteristic value. However accel enrichment is required due to intake design factors - distance from injector to valve, port shape, air velocity plus some others. Therefore if you had two engines that were identical except for different sized injectors, then your idea would work. However, if you have two different engines, but that use the same size injectors (i.e. the same req fuel) then it won't, since the amount of additional fuel required to form and maintain the wall film will be different.

The req fuel is still a good reference, we work with engines that are improved over time and many engines see injector changes in the middle of it's life and we as tuners also tend to reuse base maps from one engine on an other similar engine.

I have used a system that use something similar to a req_fuel based acc enrich. Even with default settings it has been very good on all engines I have used it for. There can always be improvements but the engines I have tried it on has been very different and they have worked very well.

We know that many users will not do the acc enrich setup properly and a req_fuel based setup is much more likely to work ok on their engine.

I'm also thinking about generic scalers to handle the acc enrich demand over rpm and load. Something that is used in addition to the 3d rpm and load tables for decay and amount. I like flat tables and anything that can be flattened by using hidden scalers and compensations is good. Most likely with the option to turn the hidden optimizations on and off.

Cliff, can you offer any imput on the general acc enrich demand over rpm and load? I have seen that the acc enrich has to be more or less removed whenever you are on boost and that high rpm also decrease the demand.

The lambda at the load site we are comming from also affects the amount needed. That should be considered in the new implementation.

Jörgen

Right, lets get to the basics of it then. Transient fuelling (and this is both accel and decel) is required for 2 reasons.

First is the ECU. In order to calculate the required injection pulsewidth, the ECU needs to take a measurement of the load some time before the injector is required to open. When the engine is steady state, this all works nicely. However, under transient conditions, the time between this measurement being taken and the actual point at which the inlet valve opens allows for the actual load to increase. At low engine speeds and loads this is significant, since the lower air flows involved mean that the air has less inertia (able to accelerate quicker) and low speed means there is a longer time between measurement at valve opening (the ECU normally calculates at an angle before TDC, therefore time increases with decreasing speed). Therefore, the amount of fuel calculated as required is actually quite a bit less than is really needed. As engine speed increases, the available time decreases, and the inertia of the air increases, so that the measurement error is reduced. In the case of turbo engines on boost, the limiting factor becomes the inertia of the turbo system itelf (i.e. turbo lag) so that again the required amount reduces.

Second is the wall film. This is a physical phenomenon, which I don't fully understand - but I do know it exists and have seen its effects  :). Basically the required wall film increases as load increases. Therefore there is a requirement to add some extra fuel for a short duration in order to build up this wall film as you increase in load. The amount required is dependant on various factors such as the location of the injector, its spray pattern, air temperature and so on.

These two requirements led to the dual stage nature of transient fuel - a quick spike to initially compensate the calculation error, and a smaller longer addition to build up the wall film. By getting both the total amount of fuel and the relative split of these parts correct we can achieve a stable lambda profile during the transient.

The size and duration of these parts are dependant on a number of factors. We've already mentioned engine speed (time between measurement and valve opening) and airflow (inertia). It may be possible to deal with these in the background since the ecu knows how long before TDC it has to perform the calculation. However, it doesn't know what the valve timing is, so some compensation may be required. You still need to predict how fast the load is changing though, either by looking at MAP or pedal angle rate of change. You can also help yourself out by setting up the system to make the fuelling calculation as late as possible (so there is less time for the load to change).

Next is the relative change in load. The wall film increases exponentially with load. therefore a small change in load at low load requires less additional fuel than a similar change in load at high load (if you see what I mean). However, a small change in load at low load produces a quicker response than at high load (air inertia again), so the measurememnt error is greater. Therefore the net fuel effect may balance out, but the split between first and second part varies, depending on the load at the point you tipped in.

For that you can see that the worst case is a tip in from idle to WOT. In this case, the initial engine speed is low (long time between measurement and valve opening), the airflow is low (low inertia, so load builds rapidly with time) and the wall film is small, with a final requirement to be large. Therefore the first place to try and play with transient fuelling is by doing 'throttle blips' from idle.

The VEMS system, like others, triggers the required additional fuel based on what throttle opening you start at, and how quickly you open it. However, it then uses fairly crude strategy to calculate the additional fuel to add, which doesn't really fit the physica effects.

Modern OEM systems perform a more complex load prediction based on various engine factors, and also use a simple wall film model to calculate the required additional fuel. With those two bits of info the amount of fuel and the split between first and second parts is calculated.

It is worth remembering that things in a modern system are always calculated in real quantities (mg of fuel, kg/h or air etc) and then the required injection time is calculated from this through the injector characteristic model (which may include compensations for fuel pressure, fuel temperature, flow, port conditions etc etc).

So what should we do for tranisent fueling strategy? In a system such as this, we probably don't need all that level of detail - we are not so concerned with catalyst breakthrough or CAFE tax. We just want good transient reponse without any stumbles caused by excessive rich or lean mixtures, so we can cope with being a little bit rich or not having the perfect split ratio.

I hope this is a good starting point. I need to leave it to someone else to actually suggest a strategy that will cover these requirements. (as I've said before, I need to be a bit careful about IP) I hope it makes sense, but let me know if I need to explain anything a bit further  :)

Offline antonch

  • Jr. Member
  • **
  • Posts: 67
  • BHP: 4
Re: Acceleration enrichment query
« Reply #25 on: August 24, 2007, 01:38:06 am »


I have to respectfully disagree with a few points that you pointed out.

I am not really sure why you are talking about air inertia as that only applies during modeling of engine resonance.

A MAP sensor has a response time on the order of milliseconds. As you mention earlier most of AE problems are at low engine speeds. We can measure the system as fast as its happening.

The reason why AE is not really needed at higher engine speed is because at higher engine speeds airflow increases in turbulence. Higher turbulance decreases the boundary layer between the air flow and the wet patch. This results in higher "evaporation" rates. Note that evaporation rates depend on wetted area and not the thickness.

A good AE model is need not just for local emissions testing. It nice to have a system that can accurately predict the required fuel based on coolant temp, air intake temp, etc. So instead of just plugging random numbers in that work sometimes, you have a robust system that is able to work well in different environments. CARBs can work well but take them to a new environment and they show their weaknesses. The ability of a modern EFI system to adapt to environmental changes is where its at.

Offline cliffb75

  • Global Moderator
  • Full Member
  • *****
  • Posts: 167
  • BHP: 10
Re: Acceleration enrichment query
« Reply #26 on: August 24, 2007, 01:02:32 pm »


I have to respectfully disagree with a few points that you pointed out.

I am not really sure why you are talking about air inertia as that only applies during modeling of engine resonance.

A MAP sensor has a response time on the order of milliseconds. As you mention earlier most of AE problems are at low engine speeds. We can measure the system as fast as its happening.

The reason why AE is not really needed at higher engine speed is because at higher engine speeds airflow increases in turbulence. Higher turbulance decreases the boundary layer between the air flow and the wet patch. This results in higher "evaporation" rates. Note that evaporation rates depend on wetted area and not the thickness.

A good AE model is need not just for local emissions testing. It nice to have a system that can accurately predict the required fuel based on coolant temp, air intake temp, etc. So instead of just plugging random numbers in that work sometimes, you have a robust system that is able to work well in different environments. CARBs can work well but take them to a new environment and they show their weaknesses. The ability of a modern EFI system to adapt to environmental changes is where its at.

Perhaps air inertia is not a brilliant analogy, since in reality the air has to keep stopping and starting every time the valve opens and closes. But in a conceptual sense it works for me to think that lower loads there is less air and hence less inertia, therefore the rate of change can be faster, which means the potential for a larger error for a given time period.

I take your point about the sensor - but that isn't the issue. The problem is that we have to make a calculation for the injected pulsewidth before the injection occurs. Rob can probably correct me on the actual numbers, but for example, say the ECU is set up to trigger at 60 degrees BTDC. So at that point the ECU measures the MAP, looks up the appropriate VE site, and multiplies it by req_fuel to calculate the injection pulsewidth. This needs to be done fairly early in order to cover large pulsewidths at high load. If we use a fixed injection start strategy then we can calculate later, but if we use a fixed end angle then we obviously need some headroom.

Because we do all this based on an angle, there is obviously a larger time between calculation of pulsewidth and valve opening at low speeds than at high speeds. Therefore at low speeds, and low loads, there is the possibility for the load to continue increasing after the point at which the calculation for the injection pulsewidth was made. You are right that we could (and do) continue to measure the load, but the amount of fuel to be injected has alredy been decided by the time the valve opens, because the injection has probably already occurred by that point.

Thanks for the explanation of boundry layer effects. I'd not heard that explanation before, but it makes sense. But is that the reason why AE isn't needed at high speed, or is it the reason that a larger quantity of wall film is required at high loads, or more probably high airflows. If you've got any more information on this I'd be interested to know about it  :)

I think your last statement shows that you think more like me that we should be given the ability to calibrate the system if we choose, which means a more complex strategy. But the VEMS team approach seems to be more of a 'minimum calibrateable' approach, on the basis that if the box isn't there, someone can't put the wrong numbers in it. Therefore we need to find a balance somewhere in the middle, and the first part of that is to be realistic about what we actually need for the kind of engines this system will be fitted to, and for the kind of end users that we will see. In reality, if we put a fully featured system out there most tuners would simply ignore 80% of the boxes as it would be simply too expensive for them to map it. Some of them would use them and get good results, and some would put semi-random numbers in them and end up blaming the ECU for the poor transient control. So from that point of view I can see the VEMS team point of view that in some cases simpler is better - up to a point ;D

For the kind of engines these ECU's are fitted to, we really don't need the very fine level of control that OEM's need. Therefore a more generic curve shape with only 2 or 3 calibrateable parameters does make sense.

Offline dnb

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 837
  • BHP: 19
Re: Acceleration enrichment query
« Reply #27 on: August 24, 2007, 01:46:06 pm »
For the kind of engines these ECU's are fitted to...

You wouldn't be insinuating that my old Rover is agricultural woud you? ;) ;)

BTW are you still up for that dyno time?  Not done anything about it yet since the new inlet manifold is still not finished...

Offline Tony C

  • Hero Member
  • *****
  • Posts: 650
  • BHP: 8
    • Capriracing
Re: Acceleration enrichment query
« Reply #28 on: August 24, 2007, 05:07:57 pm »
if he is on about your RV8 Dave then hes on about mine too  :D :D

did some one say dyno  ;D is it open to any one??????

Vems Ecu, Twin Plenum efi and N2o
13.314 @ 104.39 mph (10/06/07 3.9 v8)
Sponsored by: www.caprisport.com & www.interpart.biz
Web site: http://www.capriracing.co.uk

Vems Firmware: V1.1.74

Offline dnb

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 837
  • BHP: 19
Re: Acceleration enrichment query
« Reply #29 on: August 24, 2007, 05:20:30 pm »
Tony - I don't see why not, other than I don't know when it'll be, and that I'm planning to do quite a bit of tinkering and testing of new bits - so I could hog the thing most of the day!

I designed these to see if I could squeeze a bit more air in the engine: 


They caused a bit of interest at the Griff Growl.

Oh, and I had the car on the rollers there - 320 ftlbs @ 3000 RPM and 260 bhp @ 5000 RPM.    Clearly there's a problem somewhere.