PDA

View Full Version : Injector Base Pulsewidth



5.7ute
March 9th, 2009, 07:36 PM
Just a quick question guys. Does the pid IBPWx include the calculated offsets & small pulse adders?:)
Cheers Mick

mr.prick
March 10th, 2009, 03:17 AM
IBPWx is the actual PW, with offsets included.
Logging IBPWx against B4005, they should match very closely.

IIRC the offsets are an added value to the Minimum and Default pulse widths.

joecar
March 10th, 2009, 06:31 AM
Yes, my understanding is that it is the final pw.

5.7ute
March 10th, 2009, 12:17 PM
Thanks Guys. Wouldnt linking B4005 to the final pulsewidth pid make it incorrect, especially around the 1.8ms area. For instance in a stock Holden tune a 1.763ms pulsewidth has a small pulse adder of 0.075988. This gives a final pulsewidth of 1.838ms which will be in a different cell.
I think we may need to link B4005 to a calc.pid to narrow down those idle issues. Especially for large injectors.

mr.prick
March 10th, 2009, 01:07 PM
When I have logged IBPW against B4005
the logged data matches closely with the rows.

I had my min PW set at 0.1ms and could not get below 1.6ms
even with the small pulse offsets negative.
This led me to believe that the injector I was using was
for some reason not allowing the pulse width below 1.6ms
and made low MAP/MANVAC areas inconsistent and a little rich.

I would like to know if GM makes they're own offsets or the injector manufacturer sets them.

5.7ute
March 10th, 2009, 02:17 PM
I dont doubt it would match closely. The problem I envision is the way it is linked.
Since IPW is (Airmass/AFR )/IFR
IBPW = IPW + {B3701} + {B4005} unless IPW is less than {B4003} then we have
IBPW = {B4004} + {B3701} + {B4005}
From this I believe we need to link the modifier tables to IPW not IBPW. Problem being the IFR table is rather lacking in resolution for a non manifold referenced fuel pressure regulator to calculate IPW with a pid.
I could also be barking at shadows:online2long:

mr.prick
March 10th, 2009, 02:46 PM
4884
Did you mean each injectors PW separately?

I have modded the cal.link for B4005 to track a calc.pid from IBPW1 and IBPW2,
to see if I could adjust the offsets with another calc.pid from the difference.
What is it normally?

5.7ute
March 10th, 2009, 03:27 PM
It is normally either IBPW1 or IBPW2 which from this thread is the final pulsewidth calculation sent to the injector.
The B4005 table is a modifier which is added to the fuelmass calculation to give us the IBPW value. So we are linking a final value to a table that has derived that value, making it incorrect in the smaller pulsewidths.
For instance we have 14.63 grams of air in the cylinder. Divide that by our AFR of 14.63:1 gives us 1 gram of fuel needed.
Divide that by our IFR to give us the IPW necessary to inject that amount of fuel. To keep the example easy lets say 10ms.
Then if necessary small pulse adjust is added, again for simplicity add 1ms, and the same for our voltage offset gives a total of 12ms.
This will link as 12ms in the tune tool when it actually used the value of 10ms to calculate the final IBPW.

5.7ute
March 10th, 2009, 08:19 PM
Thanks to a log from Hquick I have been looking into this a bit deeper. Howard uses a manifold referenced FPR so it made the pid easy to write.
One thing that I did notice is the pid GM.INJFLOW does not match his IFR table. Any ideas Ross or Paul?
Anyway, the difference between a calculated IPW from airmass per cylinder & the IBPWx pids seems to correlate roughly with the voltage offset. There is a slight difference though which may be due to other tables we cant see. I will have to look deeper.

mr.prick
March 11th, 2009, 03:19 AM
Could you post the pids.txt you are using for this, please.

5.7ute
March 11th, 2009, 11:48 AM
Here is my calc pids txt file as well as the cal ink modified for the pulse adder table.
After making a few maps it appears that the discrepencies between the calculated offset & the voltage offset is from the transient fuelling tables. If this proves to be the case another calc pid could be used to graph the transient fuelling pulsewidth that is added, making it easier to dial in these tables.
Cheers Mick

mr.prick
March 11th, 2009, 12:15 PM
Ah, you made a calc.pid for IPW, I missed that from post #6. :doh2:
I'm going to try this and see how it compares to IBPW.

5.7ute
March 11th, 2009, 12:34 PM
Ah, you made a calc.pid for IPW, I missed that from post #6. :doh2:
I'm going to try this and see how it compares to IBPW.

Post 6 is now incorrect as I forgot about the transient fuelling tables. It should now read.
Since IPW = Airmass/AFR /IFR
IBPWx = IPW + {B3701} + {B4005} + transient fuelling modifiers unless IPW is less than {B4003} then we have
IBPWx = {B4004} + {B3701} + {B4005} + Transient fuelling modifiers.

mr.prick
March 11th, 2009, 01:40 PM
I don't have transient fueling,
I was thinking:
gm.ibpw - calc.ipw = offset {B4005}
but my short log does not give me that.
4895

5.7ute
March 11th, 2009, 01:58 PM
Can you post your tune file?
Also the transient tables will be there. There is more than likely not a cax file for you to view or edit them. There is also the possibility of a few other unseen tables that influence IBPWx that we cant see.

hquick
March 11th, 2009, 02:16 PM
Thing I found strange is that in my stock tune....the B4002 table was populated where as most other tunes I've looked at have this set to 1.0 across the board. When I was sitting in the Burb with it idling...I used the RR to slowly change that table to all 1's. It made no difference to the AFR at all. I then slowly dropped min pulse width and the other adders to zero...still no difference. Only table which made the AFR's go from full rich to full lean was B3701 - Injector Pulse Width Voltage Adjustment. Stopped my rich decel....now goes full lean on decel. I guess I need to play with this. Now I'm in a bit of a quandry. Do I put my entire tune back to stock and just install the correct injector min pulse width and B3701 settings and then tune via B3701....or do I try and tune via both the Main VE AND B3701???
Any idea's???

mr.prick
March 11th, 2009, 02:33 PM
I had to set B4003 & B4004 to 0.1ms and set B4005 @ 1.824ms to -0.015198
I left B3701 stock.
B3701 & B4001 are the only tables that will directly influence fuel with RTACS.

B3701 needs to be adjusted opposite of BEN:
;Injector Flow Rate
B4001.ROW=GM.MANVAC
B4001.RRR=/,CALC.BEN1
I don't suggest it though.

5.7ute
March 11th, 2009, 02:42 PM
Howard, did you raise B4006 before attempting to enrichen/lean out the AFR with the B4005 small pulse adjust table?

hquick
March 11th, 2009, 02:51 PM
To be honest mick....I can't remember....but I don't think so.

5.7ute
March 11th, 2009, 03:06 PM
To be honest mick....I can't remember....but I don't think so.

That should explain why B4005 had no influence on the fuelling calc. The description for B4006 reads
If the commanded injector on time is less than this value the PCM assumes this to be a 'small pulse', in which case the values from table {B4005} "Small Pulse Adjust" will also be added onto the final pulse width.

SOMhaveit
March 12th, 2009, 09:00 AM
I would like to know if GM makes they're own offsets or the injector manufacturer sets them.

I believe they derive their own pulse widths. They use different values for the same injector in different applications. For example, I have a 2002 F-Body 5.7 that uses the same injector as the 2002 Z06, but comparing them, the Z06 IPW is about 1.5% larger than the Camaro, the Camaro minimum injector pulse width is 1.2% larger than the Z06, Injector Pulse Width @ 14 volts and 50kpa is 16% larger in the Camaro, Default minimum Pulse Width is 2.44% larger in the Camaro, and the small pulse adjust in the Z06 is from 0 to 100% larger than the Camaro.

Same injector, same CID, different heads, cam, MAF, exhaust. Despite what some experts propound, there is not a definite known constant for any injectors, or at least, GM doesn't see it that way.

This is the reason so many of us chase our tails tuning, particularly when changing injectors. There are clearly a number of ways to make the AFR coincide with the values sought under particular conditions and even GM is doing it by changing injector values and modifiers.

I'd love it if an expert would post up the data to prove that GM is doing it wrong, or that I'm wrong and there's one set of values for an injector that is correct for all applications. The perverbial lid to fit all cans.

mr.prick
March 12th, 2009, 10:02 AM
I believe the Ybody alternator is rated @ 110amps & the Fbody is 105amps.
This might explain the differences.

I have heard that ford injectors have a set offsets vs. batt. volts,
and the consensus is to set IFR and be done,
but why would offsets be different when IFR is the same?

SOMhaveit
March 12th, 2009, 11:21 AM
I don't think amperage should matter. Battery charge determines alternator amperage output doesn't it?

They don't even use the same IFR in the Camaro and Corvette with the same injector. I believe they tweak whatever they need to to get it where they want it.

This is off topic, but the 2002 Z06 had the MAF screen removed and everyone insists this causes the MAF to miss airflow. Well, the 2001 screened MAF reads more airflow at every frequency. It isn't much, but it is larger. If the pundits are correct, why doesn't the descreened MAF have a curve that has higher grams/sec to make up for the missed air flow?

My point is that they simply mess with the calibrations until they get the desired result. I'm thinking there isn't any "right way" to do this stuff. If it works, it works. That old crap that if you don't do it a certain way you're just fooling the controller doesn't wash. It looks like that's exactly what GM does when they need to.

mr.prick
March 12th, 2009, 12:46 PM
I'm thinking there isn't any "right way" to do this stuff. If it works, it works

To a point I can agree with this,
but I don`t think that is how those union engineers at GM do it.

SOMhaveit
March 12th, 2009, 01:09 PM
Take a look at this: http://www.injectordynamics.com/dynamic-characterization.html

According to that, you need a whole lot more information than any of us has to get the injector fueling correct. And the guy has a good sense of humor. Can you say - Injector dead time?

Aloicious
March 12th, 2009, 01:36 PM
I had my current set of injectors tested at YAW power for the voltage offsets and deadtime, as well as flow testing, etc, from that data I attempted to extrapolate the small pulse widths and full voltage offset tables (as well as other tables like IFR, etc). seems to work pretty well, I still have a rich decel but its not too bad, especially with the use of the transient tables. it was a fairly expensive testing proceedure, and the results weren't radically different than stock, so I don't think it would really be a necessity for the average person to have theirs tested, but it did provide some good data, and I'm a firm believer that the better the data provided, the better the results.

FYI the injectors tested were Bosch 24# type III 890's.

joecar
March 12th, 2009, 03:47 PM
Take a look at this: http://www.injectordynamics.com/dynamic-characterization.html

According to that, you need a whole lot more information than any of us has to get the injector fueling correct. And the guy has a good sense of humor. Can you say - Injector dead time?Interesting article...

I had previously done some probing with a scope (...I've been busy lately... I'll have to get back to it...)...
this shows dead time (between the commanded opening and the actual opening dip):

http://forum.efilive.com/attachment.php?attachmentid=4619&d=1232678162

This injector is the stock injector on a 2001 F-body with 100K miles.

Edit: The difference in commanded pulsewidth and actual pulsewidth is called injector offset, in the graph you can see this is about 0.5ms, but this does not take into account the change in flowrate while the pintle is opening or closing.

hquick
March 12th, 2009, 03:50 PM
That's interesting Joe. I have been thinking of hooking the scope up also.

joecar
March 12th, 2009, 03:59 PM
That's interesting Joe. I have been thinking of hooking the scope up also.They're expensive, but they open up a whole new universe... they can help narrow down the exact cause of a problem without having to resort to parts swapping.

They also help to illustrate how something works... they can give some good insight.

hquick
March 12th, 2009, 04:04 PM
As a 'sparky' I have access to one at work Joe.

5.7ute
March 12th, 2009, 04:05 PM
That's interesting Joe. I have been thinking of hooking the scope up also.

Stop thinking Howard & do it.:hihi:
While your at it, find a way to reference it to the cam sensor or coil signal so we can see if TDC is the spark refernce pulse.:grin:
I'm sure I can think of something else for you to do at work.:pokey:

joecar
March 12th, 2009, 04:17 PM
...
While your at it, find a way to reference it to the cam sensor or coil signal so we can see if TDC is the spark refernce pulse.:grin:
...
Probe both the CKP and CMP signals so we can see a relationship...

I'm trying to do that on my Trans Am, but because everything is so crammed in, I have to make up some suitable extension leads so I can get the scope probes to each signal...

On late F-body:
CKP is not too bad, RHS of crankcase above starter motor.
CMP is tucked behind intake manifold, and underneath the windscreen cowl... ugh what were they thinking.

Howard, if you do that with your scope at work, take these 2 precautions:

1. as you can see, the injector produces an inductive kick going upto 100V when the PCM turns off the injector... use a 20:1 attenuator/probe to protect the scope.

2. all the channels on the scope share the same ground... so don't go connecting the ground clips for each channel to anything other than vehicle ground (just connect one, leave the others off), otherwise you'll create a groundloop and blow the scope... if you want to see the waveform across a sensor where the low side is not grounded (like CKP), connect two channels and use A minus B to see the waveform.

Edit: ( also don't connect the scope probe to ignition secondary unless you use a capacitive/isolated 10000:1 probe ).

SOMhaveit
March 13th, 2009, 07:07 AM
You guys keep us posted & maybe we'll learn something. There's a similar but slightly more extensive article at www.yawpower.com . You can download a sample spreadsheet of the dynamic testing results they provide. It would et expensive if you did 8 injectors.

What we really need to do is demand that manufacturers provide the data we need to be close on their products or stop buying them.

hquick
March 14th, 2009, 03:07 PM
Just for the hell of it...this morning I warmed the Burb up and decided to have a play with the {B4005} 'Small Pulse Adjust' table. At idle I started subtracting across the board. AFR's went lean. Stepped back to original and started adding .01 and the AFR's pulled into line. Here's a log and two tunes so you guys can see the AFR changing up and down as I was making adjustments.

mr.prick
March 14th, 2009, 03:51 PM
^^
Did you have the MAF enabled?

hquick
March 14th, 2009, 03:53 PM
No...OLSD...MAF unplugged.

mr.prick
March 14th, 2009, 04:13 PM
What was you method for adjusting, BEN?
I could not control fueling through this table with RTACS,
maybe it was because of the brand of injectors.

hquick
March 14th, 2009, 04:15 PM
I wasn't RTACS'ing. I was just using the RR to implement changes as I was watching the data. This was just an experiment for idle...to see what changes would do what.

hquick
March 14th, 2009, 06:27 PM
This is an interesting video when trying to understand injectors.

http://www.youtube.com/watch?v=NIz5c9MLCls&feature=related

SOMhaveit
March 14th, 2009, 10:51 PM
I've seen that before. I read an extensive tech article somewhere in which the very fine spray of some injectors was discussed versus a less atomized single or multiple spray.

My problem is that I know just about enough about this to be dangerous. Theoretical arguement is that when the less atomizeed spray hits the hot intake valve it atomizes and there is less fuel puddling in the intake and runner walls versus the fiine spray. I don't know which is correct for our applications under what circumstances. I do know that that video doesn't account for intake air flow, heat, reversion, and that isn't gasoline. With a bigger can and overlap, would the fine mist cause more issues than the less atomized spray at idle? IDK. Seems like the more I know the less I know.

It's for certain though, that some injectors cycle faster and that has to be accounted for.

Aloicious
March 15th, 2009, 12:47 AM
This is an interesting video when trying to understand injectors.

http://www.youtube.com/watch?v=NIz5c9MLCls&feature=related

there is something seriously wrong with injector #3 in that video.

5.7ute
March 25th, 2009, 02:38 PM
From what I have seen so far in the IBPW calculation I believe we can dial in the voltage offset adder with a known good tune on stock injectors. As long as our IFR table is correct for the injector, and we are commanding a decent pulsewidth away from the default pulsewidth & small pulse adjust tables where IFR is linear.
First we make a calc. pid called CALC.IPW
CALC.IPW = ({GM.CYLAIR_DMA}/{GM.AFR}/{GM.INJFLOW})*1000 for a maf set up or
CALC.IPW = ({GM.DYNCYLAIR_DMA}/{GM.AFR}/{GM.INJFLOW})*1000 for speed density.
If GM.INJFLOW is not supported like on our holden platform a custom pid using the lookup() function can be used.
This gives us the part of the pulsewidth that the PCM calculates for fuel minus the offsets & adders. (This pid is also used for other calculations I have been working on so I have kept it seperate from the rest of the equation.)
Then we need to make the pid to calculate the error in the offset. If the offset is too small for the injector, not enough pulsewidth is added & a lean condition will result. The necessary amount to be added is easily calculated by the equation
correction= CALC.IPW -(({GM.CYLAIR_DMA}/{WO2.AFR}/{GM.INJFLOW})*1000) .
This correction can then be added to the {B3701} table.
Note: since we are assuming that cylinder airmass is already correct, this method will not work unless the VE table/ maf curve were tuned previously with a known, accurate set of values.

joecar
March 25th, 2009, 03:31 PM
Hey Mick, good job...:cheers:

5.7ute
March 25th, 2009, 04:07 PM
Hey Mick, good job...:cheers:

Thanks Joe.
The trick will be calculating voltage offsets from a new tune, as most people change injectors at the same time as doing other upgrades. I have an idea of how we can go about it. Hopefully some time soon I will have it worked out well enough in my head to post.:bangin: