dx4picco wrote:
lets try to be short.
In gasoline engine you try to reach lambda 1, meaning stoichiometric ratio between air and fuel, namely 14.5-14.7 afr.
Now lets see how bmw ecu work. It uses a MAF sensor, that measure the air mass going into the engine.
It then divides the air mass by the number of cycle happening, namely rpm. This air mass (kg/h) divided by the number of cycle per time, is the Load (mg per stroke, mg of air per intake stroke).
Now, 600mg of air per intake stroke at 1500 rpm, to be at labmda 1 you need 15ms injector pulse width, which is 18.75% duty cycle on your injector.
600mg of air per intake stroke at 6000 rpm, to be at lambda 1 you need exactly as much fuel per stroke as at 1500rpm, 15ms, equivalent to 75% duty cycle of the injector.
why is the map 2D table and not 1D? because its not the only map ruling the ipw, you have accel table , deccel table, vanos correction table and all interact. Can you run same ipw in each load column? yes I do. Can you change to higher PW for higher rpm? yes you can if you decide to control your WOT enrichment with main table and not the wot one.
No offense but try to school yourself a bit more on the MS platform to avoid mistakes.
How did you exactly get the number of 15 ms pulse width for 600 mg/stroke load?