| 00:00 |
For the next step of our process we're finally at the point where we can get the car onto the dyno and start performing some tuning and of course we're going to start here with our steady state fuel tuning.
|
| 00:10 |
Now, as I've done with other parts of this worked example, we're going to vary the technique that I'm going to demonstrate here compared to what you've seen in our other worked examples as well as what I recommend in the body of the course.
|
| 00:22 |
This is because I'm going to be trying to replicate what I see is the most common use case for the Holley Terminator which is to leverage the closed loop fuel control as well as their learning functionality.
|
| 00:35 |
So, that's how we're going to be approaching that.
|
| 00:37 |
Before we actually get started we need to of course understand how the closed loop and learn functionality's working.
|
| 00:45 |
So, let's jump back into our tuning software and I've got here at idle we can see that we are currently sitting with a closed loop control of 0% trim and of course we are sitting right on our target of 13.8, so this is really where we left off from our idle tuning.
|
| 01:00 |
Now, despite this, if we actually cycle through to our learn tuning data monitor, we can see that at the moment we are in our closed loop status and our learning status are both green, so it is in closed loop and it is currently learning.
|
| 01:12 |
And we can see that while we do have a closed loop trim of zero, our actual current learn trim is minus 10%.
|
| 01:18 |
So, this means that in the background the ECU is actually pulling 10% out.
|
| 01:23 |
Now, you can think of the learn value as essentially a long term fuel trim that's stored in non volatile memory, meaning that when we key off the engine, the ECU, it doesn't lose the values that it has learned.
|
| 01:36 |
Now, on top of this we can then apply these learn values into our base VE table to help automatically correct the VE table.
|
| 01:44 |
This does however need to be treated with a lot of care because if you just blindly do this, you're essentially going to make a mess of your VE table and probably build in some really unrealistic shapes to it that are going to cause some problems with drivability, so it's a powerful tool, but it needs to be treated carefully and we'll be explaining as we go how to do this.
|
| 02:06 |
Let's quickly have a look at our learn table, so we can see what this looks like at the moment, we can click there.
|
| 02:11 |
And of course at the moment we have only been sitting in idle, so we've got only a small section of this table filled in, you can see that minus 10% being pulled out.
|
| 02:20 |
Now, interestingly it doesn't just tune the individual cell that we are currently accessing, you can see that it actually fills in quite a large block of the table around it and I think this is really where Holley get away with such or require such tight break points here, that helps with this fuel learning.
|
| 02:38 |
It's OK though because with the fuel learning we don't necessarily have to manually tune each cell, although if you want, of course you could do that.
|
| 02:46 |
Right, let's just have a quick look at our closed loop parameters, so we'll come to our system parameters here and we can find our closed loop and learn parameters right, here.
|
| 02:56 |
Starting with our closed loop, we can see we've got our closed loop enabled and we also have the ability to control the RPM and throttle position in order to enter closed loop as well as the TPS to enter open loop if you want.
|
| 03:09 |
So, you've got quite good control over when the ECU will actually operate in closed loop mode.
|
| 03:14 |
You can also enable a temperature below which the closed loop will not function.
|
| 03:19 |
In our case we are essentially running closed loop all the time and down here we've got our table of basically the compensation limits or basically how much authority the closed loop system is going to have.
|
| 03:33 |
The default values here, you can see plus and minus 50% so it's actually quite a massive amount of control that the closed loop system has.
|
| 03:40 |
Now, while this is OK to start with, particularly while we're just getting our VE table dialled in, and it also does give us the benefit of being able to start with a VE table that might be quite a long way away from accurate, of course, once we've actually got this tuned, we would want to come in here and adjust these trim limits.
|
| 03:57 |
I'd typically run maybe plus or minus about 5% at high load, wide open throttle, high RPM.
|
| 04:03 |
In the cruise areas maybe plus or minus 10% and usually I'll allow maybe plus or minus 15% in the idle areas where we are going to be potentially more affected by heat.
|
| 04:14 |
Alright, so that's our closed loop, remember this is essentially a short term fuel trim, these numbers aren't stored, it is an instantaneous response to an error in our air fuel ratio.
|
| 04:23 |
Next we'll come over to our learn parameters and kind of replicates what we've just seen here.
|
| 04:28 |
We've got our learn enabled and then we can also have an RPM at a throttle position above which we need to be in order for learn to become active.
|
| 04:38 |
We've also got this base fuel learn gain which is essentially how aggressively the learn will be chasing our target or how aggressively the short term fuel trim will be transferred into the learn table.
|
| 04:51 |
Again just like with our closed loop, we can control the authority that this has, again plus or minus 50% so essentially in its entirety plus or minus 100% trim so, a huge amount of authority there and again how you deal with this after you've actually tuned it is up to the individual.
|
| 05:10 |
I would typically, once I'm comfortable with the tune, I would actually typically, disable learning.
|
| 05:15 |
If you're going to keep it, I would definitely pull this authority way back, probably similar to what I spoke about in the closed loop.
|
| 05:22 |
So, that's what we're dealing with here.
|
| 05:23 |
We'll close down our system parameters here and we'll come back to our base fuel table and before we move on, we need to really address the changes that we made just to the idle block of this VE table.
|
| 05:36 |
Now, we can view this graphically by hitting the fuel graph button here and straight away we can see that this is obviously going to not be a realistic shape, we've got this big section which we've dropped down and a step on either side, so what I'm going to do is come back to base fuel, in fact before we do that, I will also show you how you can view both the fuel table and the fuel graph at the same time.
|
| 06:00 |
If we come down to our graph and we hit this with the right mouse button, that will open our dual pane mode and we can see we've got both side by side.
|
| 06:09 |
Now, quite helpful to use this mode or alternatively at least come back and view the graph frequently because otherwise you can end up building in some sort of weirdness to the shape of the VE table that's not going to be realistic and you can miss some errors that you've baked in, maybe you hit the wrong key and you've got the wrong number in there.
|
| 06:31 |
Between the heat map, the colouring and the graph, this makes it really easy to find mistakes, so let's say here we've entered accidentally a number of 50%, so, straight away if I click away from that, we can see the heat map colouring shows us that, it brings our attention to it and also we can see we've got this big hole that we've just created in the graph as well.
|
| 06:49 |
I will also point out, Ctrl Z will undo that last change which is quite handy.
|
| 06:55 |
So, we'll just click on our dual pane and get rid of that for the time being.
|
| 06:58 |
So, what I'm going to do here is just simply highlight the table that we've got at the moment and we're just going to basically bring these numbers down here using the Ctrl and down arrow key.
|
| 07:11 |
Now, Ctrl and down arrow remember removes 1%, Ctrl up arrow adds 1%.
|
| 07:14 |
I haven't mentioned yet that Ctrl and left arrow will actually remove 5%.
|
| 07:19 |
So, if you need to make quicker changes, that's a good way of doing that.
|
| 07:22 |
And Ctrl and right arrow of course will add 5%.
|
| 07:25 |
So, that's dealt with the higher load area above where we had made changes.
|
| 07:30 |
Have a quick look at that graphically, not quite right, but again I'll show you another way we can deal with that shortly.
|
| 07:35 |
We'll go back to our base fuel.
|
| 07:37 |
Now, what I'm going to do here is just make a few changes here.
|
| 07:42 |
What we'll do is we'll pull a little bit of fuel out of the entirety of that map and then what I'm going to do is just highlight the 2017 RPM column, we'll come out to let's say 4000 RPM and I'm going to use the R key, which is fill row, so that'll just interpolate across.
|
| 08:00 |
Let's have a look at that graphically again now.
|
| 08:02 |
OK, so we've ended up baking in a bit of an error up here.
|
| 08:06 |
That's OK though, we can quickly address this.
|
| 08:08 |
Remember at the moment I'm not after perfection, I'm just trying to keep a smooth shape to this table.
|
| 08:13 |
So, what we can do here is come to the section that we have got correct here, 49 kPa and we'll just scroll up a little bit here and this time I'll press the C key which is a fill column and let's have a look at fuel graph.
|
| 08:33 |
OK, that's looking good enough for us to get started now.
|
| 08:37 |
So, now we're actually going to get into doing some tuning.
|
| 08:39 |
So, what we're going to do here is basically get the car into third gear.
|
| 08:43 |
I've made some changes to the transmission shift parameters just to make sure that it will lock in third gear and it's not going to try and kick down on us.
|
| 08:51 |
And we're going to basically follow the approach in the course that is recommended, starting at low RPM, low throttle position, low load and we're just going to be watching here our closed loop compensation and our current learn value and basically we're just going to be waiting until the closed loop trim has been transferred across to our current learn, so in other words our closed loop trim gets back to zero, we know that then the learn table has been filled in and then we're going to move further up into the load.
|
| 09:19 |
We'll do this until we get to wide open throttle and then we'll come back and increase our RPM.
|
| 09:24 |
In order to do this I find it easiest to just view the learn table and that way we can see when these numbers are static or have reached equilibrium and we can also see exactly where we are accessing in this table.
|
| 09:38 |
Now, given this an automatic car, with some torque converter slip, we're not going to be able to do a really good job of probably reaching the low RPM, sort of 13, 14, 1500 RPM wide open throttle, there'll probably be a bit of slip in the converter there, but we'll do the best that we can to fill in as much of this table.
|
| 09:55 |
So, let's get our fan going and we can get ourselves up and running.
|
| 09:58 |
Alright, so we're up and running now and just allowing the closed loop trim to be transferred across, we can see a closed loop sitting at 2%, our learn at 3% so still a little bit of work to do there.
|
| 10:08 |
Slowly, but surely that's moving in the right direction.
|
| 10:10 |
Also important to just mention a couple of other aspects here.
|
| 10:13 |
We do want to make sure that before we really take too much notice of this, that we've allowed any heat soak to sort of dissipate, particularly if we've had the car sitting stationary for a long period of time.
|
| 10:24 |
We want to just run the car for a few minutes and just get some airflow through the car, so that everything is sort of under normal operating conditions.
|
| 10:33 |
As I'm talking here I'm just increasing my throttle position a little bit, so we've come up a little bit in the load.
|
| 10:38 |
The other aspect is just how we drive the car here.
|
| 10:41 |
Of course, what we want to do is make sure that we are being nice and smooth with our throttle input, so that we're not influencing the results with tip in or excel enrichment.
|
| 10:51 |
Alright, so just coming up here a little bit higher in the load, up to about 60, 63 kPa and we can see that our current learn's sitting at about 5% positive.
|
| 11:00 |
Our closed loop's sitting right on our target there of zero.
|
| 11:04 |
And we also just want to be monitoring our air fuel ratio at the same time, we've got that on the same data monitor here.
|
| 11:10 |
Just make sure that we are following our target.
|
| 11:13 |
Of course, the closed loop and the learn should alert us to this as well, but always just an idea to keep an eye on that as well, make sure that nothing is sort of drifting away from where we want to be.
|
| 11:23 |
Alright, so we're still constantly sitting around about that 4-5% trim here.
|
| 11:28 |
Just wait for that closed loop to transfer across there.
|
| 11:30 |
And also here, while obviously I'm not using NOC, audio NOC detection equipment here, I know this engine really well and I know with the grade of fuel that we're running on it, that NOC really isn't an issue.
|
| 11:43 |
We have also got some pretty conservative timing there.
|
| 11:46 |
But naturally I would recommend that you always use NOC detection equipment when you are tuning.
|
| 11:53 |
Alright, so what we'll do now is we'll just bring our throttle back down.
|
| 11:57 |
Again just being nice and smooth with our throttle, so that we don't end up influencing our results here.
|
| 12:03 |
Let's come back down to this point here and just make sure that everything is still pretty much where it should be, where it was, yep looking all pretty good.
|
| 12:12 |
Just close the throttle down further and get down into this area down around at 30 kPa.
|
| 12:17 |
What I always look at is the numbers that I've got where I'm currently operating versus the surrounding cells.
|
| 12:24 |
And if there's a big change, maybe we've got plus 10 in one area and minus 5 directly adjacent, that would be a bit of a red flag that something's probably not right there and I'll just go back and readdress those particular cells.
|
| 12:36 |
Alright, so we've come up to about 2000 RPM now and just again let our closed loop transfer across.
|
| 12:41 |
So, we can see here we've got exactly what I was talking about and I'll tell you how we can deal with this shortly.
|
| 12:47 |
So, we've got a minus 4 right beside a positive number, well that's actually minus 2.8 and positive 1.6 between 1400 and 1600 RPM.
|
| 12:57 |
But again this is because of the block change or how the changes are made to a block of cells as opposed to just the cell the ECU is operating in.
|
| 13:07 |
So, let's just bring our throttle up here a little bit.
|
| 13:13 |
We'll try and stay around about 2200, 2500 RPM here.
|
| 13:21 |
Positive 2% trim, so our base table, despite the fact that we obviously have messed around with it a little bit, it looks in this area like it actually wasn't too bad, 3% trim at this point.
|
| 13:35 |
And we're back out to about 5%.
|
| 13:38 |
So, you can see with this learning system it is actually reasonably quick and easy to go ahead and tune a fuel table that on face value does seem like it's got way more resolution than it needs.
|
| 13:50 |
Now, another little trick we can do here is rather than going back down to closed throttle or as low in the throttle as we can get and then increasing the RPM, we can choose to increase our RPM while we're at wide open throttle and then simply go with the opposite direction, we'll reduce our throttle while we're allowing the closed loop, the learn table to populate.
|
| 14:14 |
So, there's no need to necessarily go from closed throttle to wide open throttle, this system operates, so quickly that we can just take advantage of it to speed up the process.
|
| 14:24 |
Now, I'm gonna go out to 4000 RPM here, usually recommend about 2 thirds of the engine rev limit, so that should be absolutely plenty.
|
| 14:33 |
Again we're just getting back down here as low as we can in the throttle.
|
| 14:40 |
Again just allowing our closed loop learn values to stabilise.
|
| 14:45 |
I'll come up in the RPM again, this time to 3500.
|
| 14:57 |
OK, and we'll just increase our throttle again, holding that 3500 RPM as closely as we can.
|
| 15:04 |
Trims are all looking pretty good here, pretty close to zero anyway.
|
| 15:19 |
And we'll just keep coming up as that learn value is transferred across.
|
| 15:32 |
So, definitely a little bit lean as we go higher in the load, but in that cruise area there or light throttle around 3000 RPM, we're actually pretty good.
|
| 15:42 |
But yeah we're needing sort of 3-5% it would appear at wide open throttle.
|
| 15:48 |
Alright, and we'll just come up to 4000 RPM here.
|
| 15:53 |
Obviously, we need to be a little bit mindful of our coolant temperature as we start coming up in the load and the RPM as well.
|
| 16:02 |
So, just gently and slowly backing out of the throttle, making sure that our closed loop is sitting around that zero.
|
| 16:32 |
OK, just about as low in the throttle as we're going to get.
|
| 16:38 |
Alright, we'll back off, come to a stop and see what we can learn about the results we've got here.
|
| 16:46 |
So, what we can see is yep there's definitely some errors there although actually not too far out of the ballpark.
|
| 16:53 |
We could just now press the transfer learning to base button which is what a lot of people are going to do and call our job done.
|
| 17:03 |
However, this is actually going to create quite a few problems with our base VE table.
|
| 17:09 |
And this is why just broadly trusting these numbers is not going to be enough, we actually need to manipulate these and be a little bit sensible and a little bit cautious about how we utilise this data.
|
| 17:21 |
Let's have a quick look at it graphically for a start.
|
| 17:24 |
And we can see straight away we've got numbers all over the place and a very very up and down looking table.
|
| 17:30 |
And if we just transfer these to our base VE table, of course the results are not going to be great, we're going to end up basically doing this to the VE table and that's not what we want.
|
| 17:42 |
So, coming back to the table values, there's a couple of problems.
|
| 17:46 |
First of all, because of the way this works, we sort of end up populating the table in one area where we're actually running in it and then when we move to another area, we sort of end up extrapolating those numbers back into the area where it was previously populated.
|
| 18:00 |
So, particularly when we're getting started and our VE table needs a bit of work, this can kind of be counterproductive.
|
| 18:07 |
The other aspect is we've got no data in this area here, we've also got no data in this area here.
|
| 18:14 |
And we do want to extrapolate these results out.
|
| 18:18 |
So, what we're going to do is, or the other aspect I should mention here is let's say we are operating in this area here.
|
| 18:25 |
What happens is again the learning sort of extrapolates itself out, so it'll probably fill out this section here and what it does is it sort of, as it gets further away from the area we're operating in, it reduces the power of that trim.
|
| 18:40 |
So, by that I mean we've got values of sort of 2 -3% in here, down here we've just extrapolated out to, we've got a value of 0.3, that's not probably realistic, that's probably not what we actually needed down there.
|
| 18:53 |
Likewise it's done the same here where we didn't actually get out to 4400 RPM, it's kind of extrapolated out what we ended up with.
|
| 19:00 |
So, what I'm going to do for a start here, coming out from 25 kPa out to 4100, 4200 RPM, Control C, and I'm going to copy and paste that down using Control V to the 0 kPa row and what I'm going to do now is highlight between those.
|
| 19:18 |
And I'm going to use the C for fill column, so that is just going to essentially extrapolate those numbers out.
|
| 19:26 |
Likewise I'm going to do the same up in this area here and just be a little bit sort of sensible about what numbers we actually need.
|
| 19:32 |
So, you can see that we were idling in here and remember we're pulling about 7-8% fuel out.
|
| 19:37 |
So, it's done exactly what I was talking about here, looks like at 53 kPa we're back to being just about perfect, but the reality is we almost certainly are not.
|
| 19:46 |
So, what I'm going to do here is basically just set the entire, let's go minus 7% here, the entire 500 RPM column above where we were idling at minus 7% and then what I'm going to do is grab that and again we'll just extrapolate that out.
|
| 20:06 |
Just going to do this a little bit more cautiously here.
|
| 20:09 |
So, we'll use, we'll come out to this point here and we'll this time use the R key for fill rows and again that's just going to interpolate those values out and then we can do the same here.
|
| 20:21 |
Now, we do have this area here which I'm a little suspicious of where we've sort of gone from negatives to positives.
|
| 20:29 |
That's possibly not entirely realistic, but this is an iterative approach when we are doing this, so we're going to have a couple of cracks at this and we'll be able to see if we're right or we're wrong.
|
| 20:40 |
You can also see there's some numbers in here that are probably a little bit higher than the surrounding ones which might be a little unrealistic, but again I'll show you how we can deal with that in a short bit shortly.
|
| 20:50 |
So, again just to extrapolate out, we'll take that 4200 RPM column, control C, we'll come out to 7000 RPM, control V and again we're just going to use our fill row button there, R key to extrapolate that out.
|
| 21:07 |
So, now if we look at it graphically, it's not going to be very pretty, but we've got something a little bit more realistic and we've got more data.
|
| 21:14 |
These ones in here, a little bit suspicious though, we'll go back to view table here and that is this section here.
|
| 21:22 |
So, again what we can do is just grab these values here, move across to the right, a couple and we'll use the fill row and have a look at that graphically.
|
| 21:35 |
Another point I should have made here is that when you have a section of the table highlighted and we go to graph, we'll only be viewing that particular section.
|
| 21:44 |
So, we'll go back and now back to our graph again.
|
| 21:47 |
OK, we've got rid of that, obviously there's still a bit of work to do here.
|
| 21:50 |
That's OK, let's go back to our table value.
|
| 21:53 |
Now, the other thing that I would suggest here is don't apply the entire correction in one go.
|
| 21:59 |
You'll quite often find, particularly the further away you get from zero trim, the further away you get essentially you're going to end up with over compensation and you can sort of yo yo back and forth across your target.
|
| 22:12 |
So, what we'll do is Ctrl A to highlight the entire table and then to reduce the power of this trim, what I'm going to do here is go O for our offset function and we're going to multiply that by let's say 0.75 because most of our numbers are pretty close.
|
| 22:28 |
If you were seeing trims of plus or minus 20%, I'd probably halve the initial suggestion and that's probably going to get you a better result.
|
| 22:37 |
The other aspect we can do here, if we look at it graphically, we can choose to smooth that out a little bit.
|
| 22:43 |
So, that's just going to take some of the peaks and troughs out.
|
| 22:46 |
Right, go back to view table, now we're going to transfer that back to our base and we'll click yes, that zeroes the table out.
|
| 22:53 |
Now, if we come back to our fuel table and we look at this graphically, we can see that we've made some changes, but we've still got a sensible shape to this, hasn't brought in any huge peaks and troughs.
|
| 23:04 |
OK, so that's our first iteration of changes mate, so we've seen how the learning table works, how we can populate it, how we can then hand manipulate it, extrapolating the trends that we see out into the areas that we haven't got data, how we can then manipulate the numbers further if we don't want to make the entire change in one go and how we can smooth that and apply it to our table.
|
| 23:27 |
What we're going to do now is go back online, hitting the USB link.
|
| 23:30 |
Of course, it's going to say that it doesn't match what's in the ECU because the fuelling is different, of course we've just made those changes.
|
| 23:37 |
So, we're going to send that to the ECU.
|
| 23:40 |
Click OK.
|
| 23:41 |
Now, I'm going to speed this up a little bit, so I'll just gather some more data now to basically a repeat of that process and we'll see in our learn values what the data's looking like now.
|
| 23:51 |
Alright, so we've got data from the results of our first round of modifications using our learning and straight away you can see how close this is and how quick that was to get us on target.
|
| 24:03 |
Particularly in the high load wide open throttle area, we're now sort of between zero and a maximum of 2% trim.
|
| 24:09 |
We do still have a little bit of work to do and idle we can see that we're really really close to the mark, but just off idle, this area here we're sort of looking at 2-3% positive.
|
| 24:19 |
I mean I'm still going to be pretty happy with this as a first round of modifications.
|
| 24:24 |
We've also got another area here where we've got values in the sort of 2-3% vicinity.
|
| 24:30 |
But yeah again just how quick and easy that is to complete.
|
| 24:35 |
Normally, I would say that you're going to need between two and three iterations of this and particularly once you start getting down closer to zero values, you should start getting a shape to the learn table that is a little bit closer to the mark, a little bit more sensible, we can have a look at that graphically.
|
| 24:52 |
Obviously, we've still got some peaks and troughs in here, but again this is just one round of modifications.
|
| 24:58 |
We can actually see these values in here that are all populated with zeros and you might think that I whizzed past those and didn't actually access them, no that just meant that there was no need to trim the values in this area.
|
| 25:11 |
Now, as I've said, normally this is going to require two or three iterations in order to get everything dialled in really nicely.
|
| 25:18 |
I'm not going to repeat this process, but if you do need to, it is simply a rinse and repeat of what you've seen me do within this module.
|
| 25:26 |
So, at this point we should have our steady state fueling dialled in and we can move on to the next step of our process.
|