-
- Now that we've got our MAF scaling
dialled in, we can actually begin the process
-
of optimising our tune.
-
Before we get stuck in though, there are
a few aspects to the Cobb Accessport
-
that it's worth touching on so that you've
got a better understanding of how the
-
Accessport works as well as how the basic
Subaru ECU structure and logic works.
-
We're going to start by talking about how the
ignition control in the Subaru ECU works
-
and particularly if you are new to the Subaru
ECU, this is quite unusual, if you don't
-
understand how it works, it can be really
confusing and you can easily come
-
unstuck here.
-
Rather than just running off one base
ignition table, there are several ignition
-
tables and they interact depending on
feedback from the knock control strategy.
-
And this is part of Subaru's dynamic advance
multiplier system.
-
So let's talk about how that works.
-
Let's have a look at the software for a start
and if we go into our real time tables,
-
the main table that we're going to be doing
our ignition tuning on is found here.
-
This is the primary ignition table, TGV's
open main.
-
So let's have a look at that.
-
So this is our table here, we can see
three dimensions, nothing particularly
-
surprising here.
-
We've got our load in grams per revolution
on the horizontal axis and we've got our
-
engine RPM on the vertical axis.
-
It's important here because we are dealing
with grams per revolution, which is a
-
channel or parameter that's calculated based
off the mass airflow and engine RPM.
-
It's important to log this parameter so that
we know exactly where we are operating
-
inside of this table.
-
Now we also have a graphical representation
of this table of course down here at the
-
bottom and just like any ignition table,
we should expect in a properly tuned table,
-
for this to look relatively smooth.
-
However you may notice, particularly in the
higher load areas of the table where we're
-
likely to be running under wide open throttle,
full boost, that there is very low ignition
-
timing, particularly through the peak torque
area we've got negative ignition timing
-
values, the ignition starting after top dead
centre.
-
Now the reason for this is that this
table works in conjunction with a couple
-
of other tables which can add timing based
on the knock control strategy.
-
So let's have a look at those.
-
In order to get to those we're going to
need to come down in our menu structure
-
to the ignition tables, let's open up the
ignition tables here.
-
And what we're looking for here is advance
dynamic.
-
So if we open up the advance dynamic,
there are two options of adding timing here.
-
There's the dynamic advance adder tables.
-
Now in stock form, with the base calibration
from Cobb, these are actually zeroed out
-
just to make things a little bit easier to
understand so we know where abouts
-
our timing is coming from.
-
Instead the Cobb calibration will work on
these tables here which are our dynamic
-
advance base tables.
-
So let's have a look at the dynamic advance
base TGVs open table.
-
So we've got exactly the same table
structure here as our base ignition table,
-
our primary ignition table.
-
We've got the same load axis, the same
RPM axis and the numbers in this table
-
essentially can be added over on top
of those primary ignition timing table
-
values.
-
So if for example we take a value here,
6400 RPM, 2.46 grams per revolution,
-
you can see that this table has the ability
to add 5.27 degrees of ignition timing.
-
So to see what that means, let's go back
to our primary ignition table.
-
We'll find the same point here at 6400 RPM
and 2.46 grams per revolution.
-
You can see that we've got 3.5.
-
So what this means is that if the ECU is
adding all of our dynamic advance base
-
table over on top of our primary table,
we'd actually end up with a final ignition
-
advance being delivered of about 8.8
degrees at that point.
-
So the next obvious question is how does
the ECU decide how much of our dynamic
-
advance base table to add on top of our
primary ignition timing?
-
And this comes down to another parameter
inside of the ECU called the dynamic
-
advance multiplier D.A.M. or DAM
depending on how you want to pronounce it.
-
Now the dynamic advance multiplier is
a number between zero and 1.0 that's
-
based on the feedback from the knock control
system.
-
Essentially depends on how much activity the
knock sensor is seeing.
-
And if there is no knock occurring, that
number is going to increment up to 1.0
-
And if it's at 1.0, it's a simple multiplier
so it means that all of our dynamic
-
advance base table is added in.
-
If we come back to our dynamic advance base
table here, the unit or the cell that we were
-
looking at before, that would mean 5.27
degrees multiplied by 1.0 and of course is
-
5.27 degrees.
-
All of that table value is going to be added
on top of our primary ignition table.
-
Now if on the other hand some knock
activity is occurring, let's say for example
-
the ignition timing is overadvanced causing
knock or the fuel that the car is running on
-
is a lower octane that's leading to knock then
what's going to happen is that over time
-
that dynamic advance multiplier is going to
decrement down from 1.0.
-
Let's say it gets to a point where the
dynamic advance multiplier is sitting
-
at 0.5, again this is a multiplier for our
dynamic advance base table so if we
-
take our multiplier, our DAM value at
0.5, and we use that same value of
-
5.27 degrees, of course we're going to be
adding half of that, 0.5 multiplied by 5.27,
-
we're looking at about 2.6, 2.7 degrees
added in.
-
So this is how the ignition system works.
-
And it's important to understand that,
and it's also important to understand as
-
we'll see as we go through this part of the
worked example, what parameters we need
-
to log so that we can really understand how
the ignition system is working and what
-
that dynamic advance multiplier is sitting
at.
-
Now since we've just been talking about
the dynamic advance multiplier,
-
it's also worth just having a look at the
parameter for the dynamic advance
-
multiplier starting points.
-
So that's down here, let's click on that
and we can see that in the Cobb base map,
-
that's set to 1.0.
-
So in a stock calibration we'll actually find
that that's set to 0.7.
-
Meaning that when we first start the car,
the dynamic advance multiplier is not
-
going to be adding all of the available
ignition timing in, meaning that we're
-
actually going to start with a slightly
detuned engine over the first few minutes
-
of running, provided no knock is occurring,
that dynamic advance multiplier is going
-
to increment back up to 1.0, adding in
some additional timing.
-
So by setting this to a starting point of 1.0
we're actually starting with a slightly more
-
aggressive tune immediately after startup.
-
Now the activity from the knock control
system is going to constantly be changing
-
that dynamic advance multiplier so it's a
really good parameter to have a look at
-
in our logging to give you a quick snapshot
of what's happening, whether the engine
-
is suffering from knock.
-
And essentially any time we're seeing the
dynamic advance multiplier sitting anywhere
-
but 1.0, this should be a bit of a red flag that
perhaps the ignition timing is a little bit
-
aggressive.
-
Now working in conjunction with the ignition
control system of course is the knock control
-
strategy and again we need to understand
how that works and which parameters we
-
need to be looking at.
-
Now there are two parameters here that
we need to be logging.
-
If we look at our gauge list here,
we've got those two listed over here.
-
We've got our feedback knock correction
and our fine knock learning.
-
And essentially the feedback knock correction
is an immediate response to a knock event.
-
So if we're doing a ramp run on the dyno or
we're running in steady state and the engine
-
starts to suffer from knock, we're going to
immediately see that feedback knock
-
correction value drop into the negatives.
-
Meaning that the ECU is retarding timing in
response to a knock event.
-
So we obviously want to be logging that
and take note of where abouts that's
-
occurring, that's an indication that we're
potentially running a little bit too much
-
timing in that particular area of our
primary ignition timing table.
-
Now this also works in conjunction though
with the fine knock learning parameter
-
and as its name implies this is a knock
learning strategy where if knock is occurring,
-
there is a table inside of the ECU where the
learned knock value or knock retard
-
required to prevent detonation is stored.
-
What this means is that the next time the
ECU runs through the same area of the map,
-
the ignition timing will automatically be
retarded as a preemptive measure to stop
-
knock from occurring.
-
Now over time, if no knock is occurring then
the numbers in the fine knock learning table
-
will be reduced back to zero, basically
adding timing back in.
-
So this is a fluid strategy where the timing
is constantly changing in response to knock
-
in order to try and prevent knock occurring.
-
Now in the Cobb Accesstuner software, we do
have the ability to see what's going on in
-
our fine knock learning table, we can see that
here under our real time tables.
-
If we open up the fine knock learning
table, we can see we've got a relatively
-
small three dimensional table there,
we've got load in grams per revolution
-
versus engine RPM.
-
You can see at the moment this table
is all zeroed out which is what we hope
-
to see.
-
This means there is no fine knock learning
going on while we've been running the car.
-
The reason it's important to take note of
this table is that if you are performing
-
ramp runs and you're a little bit aggressive
with the ignition timing causing some knock,
-
we can end up with that knock retard coming
through into the fine knock learning table.
-
If you're not aware of this it can cause a
little bit of run to run variation because
-
the engine may not be receiving as much
ignition timing as you're expecting.
-
Another aspect that's worth touching on
before we get into the tuning is the
-
boost control strategy in the Subaru ECU.
-
And we're going to do some basic boost
tuning through this particular worked
-
example.
-
As I've already mentioned here, because
we have got a three port solenoid fitted,
-
the existing boost control duty cycle tables
are going to need some manipulation
-
to get our boost onto our target.
-
But let's have a look at how that all works.
-
First of all if we go to our boost targets
under our real time tuning table,
-
we can see the existing boost targets,
these are displayed in bar however you can
-
display them in imperial units if you
prefer.
-
We've got our load axis as requested torque
here and this is an important aspect to note
-
here because we do want to be logging our
requested torque parameter so that we
-
know exactly where abouts in the table
the ECU is referencing.
-
It happens that for this particular calibration
under wide open throttle operation,
-
we're constantly referencing the 350
newton metre row here, or column here.
-
We've obviously also got our RPM axis
there on our vertical axis.
-
So it's important to make sure that these
boost targets obviously are realistic
-
and safe as our first starting point.
-
We've also got our boost limits here so we
can make sure that the boost limit is set
-
to something that's going to be safe.
-
Now in order to get us onto our boost
targets we've got two tables here,
-
our wastegate duty cycles high and low.
-
We'll just talk about how these interact.
-
Let's bring up our high duty cycle table.
-
We've got the same axis as our boost
control table with requested torque
-
on the horizontal axis, RPM on the vertical
axis.
-
And this is simply the maximum duty
cycle that can be delivered to the
-
wastegate solenoid.
-
So regardless of the proportional and
integral gains, as part of the closed loop
-
control strategy, nothing can ever exceed
the numbers in this particular table.
-
So for our solenoid we need to start by
essentially doubling the numbers in
-
this table.
-
We'll get onto that a little bit later though.
-
Now we've also got a second table here,
replicates that first table,
-
this is our wastegate duty cycle low table.
-
And the idea with this table is that it
should be set somewhere around about
-
8% duty cycle lower than our high duty
cycle table.
-
How this works is that if we perform a
ramp run and we come up onto boost,
-
the ECU will use the high duty cycle
table as an open loop duty cycle
-
table or a feed forward table for
the starting position before it begins
-
closed loop control.
-
However if we were only working off that
high duty cycle table, on a transient or
-
a gear shift we're very likely to see an
overboost.
-
So in this situation the Subaru ECU on a
gearshift will revert to the low duty cycle
-
table, once the engine is stable again
and back at full throttle,
-
it will then instigate closed loop control
to get back onto the targets.
-
This helps prevent that overboost.
-
And the suggestion here is to keep about an
8% duty cycle difference between high and low.
-
Now this also works in conjunction with
the proportional and integral gains system.
-
We're going to see how that works as we
go through the tuning.
-
And another aspect that's important to note
here, if we cycle down to our boost control
-
tables which we'll see in our menu structure
here, let's open that up.
-
And if we look at our wastegate duty cycle
here or wastegate duty and open that up,
-
we're also going to have the ability to
adjust our wastegate solenoid frequency.
-
You'll see that in the stock calibration
for the factory Subaru boost control solenoid
-
this is set to 10 hertz.
-
Now this is quite low for a lot of the three
port solenoids that we use in the aftermarket.
-
Typically I'd be running somewhere between
about 20 and 30 hertz for the typical MAC
-
three port solenoid.
-
Now a little trick with the Subaru ECU is
it appears the maximum duty cycle,
-
it's able to use here is 15 hertz.
-
So we're going to set that to 15 hertz and
if you do try and set this high,
-
you're going to run into problems where
you're going to end up with very poor
-
or no boost control.
-
So make sure that you're aware of that and
keep your boost control frequency at 15 hertz
-
maximum.
-
The next topic to talk about here is Cobb's
MAF simple mode.
-
And this is a little bit complex to explain
in really simple terms but the Subaru
-
ECU while it primarily uses the mass airflow
sensor as its load input, deciding on fuel
-
and ignition based on the MAF signal,
under transient conditions, sharp throttle
-
inputs or gear changes, the MAF sensor
can lag a little bit.
-
So the stock Subaru ECU logic actually
uses a volumetric efficiency or speed
-
density subsystem that it can revert to
on these throttle transients.
-
Now in stock form, Cobb believe that there
can be as many as 200 different parameters
-
that can affect the final calculation during
these transients.
-
They've highlighted the two key ones and
if we cycle down to sensor calibrations,
-
we can see we've got MAF corrected
volumetric efficiency input,
-
TGVs open and closed, let's have a look
at one of those tables and this is
-
essentially a volumetric efficiency table
where we've got manifold absolute pressure
-
on the load axis this time.
-
Now the problem for us as tuners is that
there's no easy way for us to make the Subaru
-
ECU run continuously on the volumetric
efficiency tables so that we can calibrate
-
these accurately.
-
So this makes it really tricky for us to tune
these tables and get good results.
-
So as an alternative Cobb have instigated
their MAF simple mode which basically
-
eliminates the volumetric efficiency
subsystem and runs continuously off
-
the mass airflow sensor.
-
And in simple terms, it does work really
well.
-
So it's a good idea to understand that that
option is available.
-
We'll close down our sensor calibrations
and we will find the MAF simple mode
-
functionality under our Cobb custom features
and we can see that under the MAF simple
-
structure here.
-
Now we don't really need to make too many
adjustments to this, what we do want to do
-
though is activate it here so if we click
on our MAF simple mode activation
-
threshold, we can see that at the moment
this is set to 1.5 grams per revolution.
-
In the base calibration you're likely to find
that this is set to 3.2 grams per revolution
-
which is a little high for it to really do any
good.
-
So Cobb's recommendation is to set this
activation point between about 1.5 and 1.7
-
grams per revolution.
-
We do need to be wary, if you set this too
low, you're likely to run into drivability
-
problems.
-
It seems that the ECU does work best if we
set this around about that 1.5 to 1.7
-
grams per revolution mark.
-
So that's going to give you a really
simple way of eliminating that subsystem
-
which can be problematic for us to tune
in the aftermarket.
-
Another aspect I want to touch on here is
some of the compensations available inside
-
of the Subaru ECU.
-
In particular we'll focus here on our ignition
trim for intake air temperature.
-
So let's have a look at that, we're going
to find that under our ignition tables
-
and then if we move down to compensation
and then finally to intake temp.
-
Now there are two tables here that interact
so we'll start here with our ignition timing
-
compensation.
-
Now this is a simple two dimensional table
based on our intake air temperature.
-
Now it is possible here to choose either
the intake air temperature sensor
-
pre turbocharger or in the inlet manifold
based on your own personal preferences here.
-
And we can see we've got our trim here
and you can see that does look like it might
-
be a little bit excessive, particularly at
70 and 80°C, we've got -6.5 and -7.5
-
degrees of ignition retard.
-
It's important to understand that this does
work in conjunction with our activation
-
table below.
-
And essentially this is a three dimensional
table with our load in grams per revolution
-
on the horizontal axis and RPM on our
vertical axis of course.
-
Now the way this table works is that it
gives the ability to control the magnitude
-
or weighting of how much of that trim will
be applied.
-
So we can see that in particular down in
the idle areas we've got -100% so
-
essentially there's going to be no trim
applied down in those idle areas.
-
However under high load here and high
RPM, we're applying about 50% of that
-
trim so instead of the full magnitude of
the trim from our table here,
-
we can see that we're only applying
half of that so for example if we were
-
at 70°C with a trim of 0%, we would see
all of that applied, so 6.5 degrees of trim
-
minus 50%, we would only see half of that,
so 3.25 degrees applied.
-
So you are able to manipulate that as you
see fit based on the intake air temperatures
-
you're seeing and how sensitive to knock
your particular engine is.
-
Next we can take a look at the injection
timing control.
-
Now being that this 2015 WRX does run
a direct injected engine, the engine timing
-
tends to be a little bit more sensitive than
on a port injected engine,
-
but it's still worth having a look at how
this is controlled.
-
So we can find this under our fuel
tables and then if we cycle down to
-
injectors and finally injector timing.
-
The table that we're going to primarily
be using here is our fuel injector,
-
start of injection, homogenous main
beta table.
-
We can see here we've got our three
dimensional table of our injection
-
timing values.
-
Now this is a stock table, doesn't actually
really benefit from modification where
-
we're running on pump gas here.
-
But it is important to just point out where
you'll find that if you do want to make
-
some adjustments to this and see the
effect of those changes.
-
Because it is a real time tuning table
you can make these adjustments while
-
the engine is running and see the effects
instantly.
-
Now that we've had a tour of the software,
we've talked about the interaction of some
-
of the more important tables, let's get
started and lay down a base run here
-
on our Dynajet dyno so we can see what
our starting point is before we start making
-
adjustments to any of those tables.
-
Alright we've got our baseline run laid down
and we've actually got a slightly lower
-
figure there than we were working with after
our MAF scaling at 248.9 horsepower
-
at the wheels.
-
Now I am not too worried about that at
this point, we're going to be making some
-
pretty dramatic changes from here anyway
and we are also on the dyno on a different
-
day than when we finished our MAF scaling so
we're likely to have some day to day
-
variations creep in there.
-
Let's see how we progress as we begin
optimising that tune.
-
Before we make any changes though,
let's jump into our MegaLogViewer HD
-
software and we'll have a look at what's
going on in the software, what happened
-
during that ramp run.
-
So for a start, let's have a quick look at
our MAF scaling just to confirm that that's
-
still on point.
-
So we can see that as I click through,
we are within about 1% or 2% positive
-
and negative of our zero so we know
our trims are pretty good there,
-
we know that our MAF scaling is still good
from when we finished that up exactly
-
as we'd expect.
-
What we want to do now is we'll get rid
of that particular graph, just so we've got
-
a little bit less going on because we
shouldn't need to worry about our MAF
-
scaling from here on in.
-
What we're going to do is start by looking
at our boost control.
-
So we've got some parameters set up here
that we're going to be looking at,
-
we've got our wastegate duty cycle,
we've got our manifold relative pressure
-
and then we've got a parameter called
turbo dynamics boost error extended.
-
Essentially this is just showing us how far
away we are from our boost target.
-
So our yellow line there in this plot is our
boost pressure that we're actually
-
achieving in the manifold.
-
So we can see that our peak there,
sitting around about 0.95 so remembering
-
that our boost targets were sitting at about
1.43, 1.45, we're a little way off that and
-
that is shown by our turbo dynamics boost
error showing at the moment 0.522.
-
So we're a little bit lower, the reason for
this is our red line here that we can see
-
in our plot is our wastegate duty cycle and
we can see that that is basically flatlined
-
at 32% so remember this comes from our
wastegate max duty cycle.
-
So the first thing we're going to do is
head back into our Accesstuner software
-
and we're going to double our wastegate
duty cycle tables.
-
Before we do that though, one other aspect
that we always want to be looking at here
-
is our knock control.
-
So on this set of graphs here, we've got
our ignition timing, we've got our feedback
-
knock correction and our fine knock
learning as well as our dynamic advance
-
multiplier.
-
So really what we want to always see is
both our feedback knock correction and our
-
final knock learning sitting at zero,
exactly what we've got, as well as our
-
dynamic advance multiplier sitting at
1.0 so we know that currently we've got
-
no knock, exactly where we'd expect to be.
-
So let's head back to our Accesstuner
software and what we'll do is we'll start
-
with a really simply modification here,
doubling our wastegate duty cycle.
-
We can do that quickly by holding down
the shift key and the ctrl key, right arrow
-
will highlight an entire row, down arrow
will highlight an entire column,
-
we'll press the M key for multiply and
we're simply going to double that table.
-
Now what I'm going to do is press ctrl C,
that will copy that table to the clipboard,
-
we can now head across to our low duty cycle
table, ctrl V will copy that onto our low duty
-
cycle but remember we need a spread here,
we want to reduce this so what I'm going
-
to do is hold down the shift and minus
key and we're going to reduce that so we've
-
got about a eight degree spread from our
high table to our low table.
-
So that's a very basic change there.
-
Obviously when we are making changes like
this, we do want to monitor our boost
-
and make sure that it's not becoming
excessive.
-
So with that simple change done there,
let's do another run and see the effect
-
of that result.
-
So we can see with that one simple change
to our boost control we've definitely got a
-
healthier result there on the dyno with a
jump up to 288 horsepower,
-
321 pound foot of torque.
-
Let's have a look at our logging through and
we'll see how all of that panned out.
-
Now of course the first thing we always
want to check is our knock strategy and we
-
can see in this group of graphs here,
we've still got our dynamic advance multiplier
-
sitting at one, we've got no knock feedback,
no knock correction, no knock learning,
-
so that's good.
-
We've got no knock occurring so we know that
the engine is safe.
-
Let's have a look at our boost control though
and see how that panned out.
-
So if we head down and we have a look at
our yellow plot for our manifold pressure,
-
we can see that our peak number now
looks about here, 1.53 bar so we're
-
actually a little bit above our target
there, 1.43 bar.
-
And we can see what our boost control
system is doing.
-
So looking at our group with our turbo
dynamics integral and our turbo dynamics
-
proportional, what we're looking for here
is what the proportional gain is doing.
-
So we can see that at the start of our
ramp run here as the turbo is coming up
-
onto boost our proportional gain is
essentially maxed out at positive 10%.
-
So the problem with this is we get what's
referred to as integral wind up
-
which can result in overboost as the turbo
comes up on boost.
-
We can see that that's exactly what's
happened here.
-
At this point here where we've hit
1.53 bar, we've still got a positive
-
integral there of about 5.5%.
-
So what this generally means is that we're
targeting a boost pressure down at low RPM,
-
that the engine can't really quite achieve.
-
So we're seeing 3000 to maybe 3500 RPM
our boost targets are a little bit optimistic.
-
Once we're actually up on boost though,
we can see that our control is not too bad,
-
our integral gain here is moving around a
little bit, we want to try and get our
-
integral gain through the ramp run to be
within sort of 1-2% of zero ideally,
-
giving it a little bit of head room to add
or subtract to our boost control system.
-
We can see that particularly at higher RPM,
the integral gain is pulling quite a lot of
-
duty cycle out so we want to address that
here.
-
So we're going to make two changes here,
first of all what we're going to do is below
-
around about 3500 RPM, we're going to
reduce our boost targets to something
-
a little bit more realistic.
-
And then above around about 6000 RPM,
we're going to start reducing our wastegate
-
duty cycle so let's head across and do that
now.
-
So first of all let's head up to our boost
target table.
-
And we know that we are running at a target
here of 350 newton metres of requested torque,
-
let's just quickly head back and we'll see
where we can find that value.
-
So I've got our requested torque added into
our top set of graphs in white and we can see,
-
or you can't actually see it doing anything
because we're at full throttle right through
-
this ramp run, but we can see that that
value there is sitting constantly wherever
-
I click at 350 newton metres.
-
So that's our requested torque so we'll
head back across to our Accesstuner.
-
So what we want to do is below around
about 3600 RPM, we're going to reduce
-
our boost target.
-
So I'm actually going to extend that down
a little bit down to 300 newton metres
-
and we'll take it down to in this case
2000 RPM.
-
So what we can do now is just reduce our
boost targets a little bit, make them just
-
a little bit more realistic.
-
We do always want to make sure that our
boost targets are relatively smooth so that
-
the ECU can track them.
-
So what we're going to do here is highlight
the cells that I've just adjusted here
-
and we can press V for vertical interpolation
and this will just smooth those values across.
-
Alright so that's our first change there,
we've reduced our boost targets,
-
hopefully that's going to be a little bit more
realistic.
-
Now we'll head across to our wastegate
duty cycle high table here and just
-
heading back to have another look at
our data here.
-
It's around about 6000 RPM and above that
we want to make that change to our duty
-
cycle so let's head to that zone there.
-
So again we'll just extend the change that
we're making down here all the way to
-
300 newton metres and I'm highlighting
6400 RPM and above and what we'll do is
-
just shift and minus a couple of times just
to remove a little bit of duty cycle there,
-
I'm also going to make a further change
at 6800 RPM.
-
Once we've done that we can simply copy
and paste that table back across to our
-
low duty cycle rather than making the
same change, I just find this a little
-
bit easier.
-
And then again we're going to just reduce that
to make sure that we've got around about
-
that 6% spread.
-
So now that we're ready for another run,
let's check that out and see what our
-
results are.
-
Alright looking at our results from that
particular run we can see we've picked up
-
a little bit of peak power there,
we're up to 293.9 horsepower.
-
We've got 322 pound foot of torque
at the wheels.
-
More interesting though is our data so
let's have a look at that.
-
And we can see if we look at our boost,
we've still got this spike here in our boost
-
and that's coming up to a peak of 1.54 bar.
-
However we have got better control there.
-
What we want to do is again have a look at
our integral gains.
-
So we can see that we're still probably
requesting a little bit much boost and in
-
the early part of that ramp run we've got the
integral basically tapped out at positive 10%.
-
Now that's causing that overboost here because
where we see that overboost we're still,
-
we've got a positive integral there of about
7.5%.
-
So we've got a little bit more work to do
there in terms of our duty cycle as well
-
as our boost aims, just getting those in line
with what the engine can actually produce.
-
Now this is a common problem with boost
control where tuners try and achieve a boost
-
set point that's simply unachievable.
-
This causes havoc with the closed loop
control strategy, trying to drive the turbo
-
harder to achieve a boost that it simply
can't get to and once the turbo gets to
-
a point where it can produce boost,
it then creates this overboost which is
-
exactly what we're seeing.
-
However you'll also recall that we reduced
our wastegate duty cycles at higher RPM
-
and that's worked pretty well, we can see at
high RPM now we've got a integral of -2.5,
-
which is pretty close to where I'd want it
to be.
-
So this is an iterative process just like our
MAF scaling so you can simply go through
-
this process, adjusting your boost targets
and adjusting your wastegate duty cycle until
-
you've got something where your integral
is under control and you've got nice smooth
-
control.
-
So let's jump ahead and we'll perform another
ramp run with our final boost control strategy
-
dialled in and see what that looks like.
-
With our third run up on the dyno screen
now, we can see that we've picked up
-
a little bit of peak torque up to 330 pound
foot of torque.
-
We've actually lost very slightly in terms of
peak power but that's more to do with a
-
very slight spike that we were having in
our boost in our previous runs.
-
So by actually smoothing out that boost
control and getting it where it should be,
-
we've actually sacrificed a little bit of peak
power that is genuinely just across a very
-
very small RPM range.
-
We're not too worried about that right now
because we've still got some timing to add
-
into this.
-
More importantly though, let's jump into
our log file and we'll have a look at what's
-
going on.
-
So what we can see here is our peak boost
here, we're sitting at about 1.5 bar so
-
slightly above our target and we can see
that from that point on, about 4000 RPM
-
and to the right there, all the way through
to the rev limit, we can see that our red
-
trace here for our turbo dymanics integral
is moving around reasonably close to our
-
zero point.
-
We've got positive integral in that from that
point onwards.
-
But as I've mentioned we're trying to get that
so it's relatively close to zero,
-
we don't want it maxed out and that's what
it's doing.
-
Now what we've actually ended up doing
here is artificially limiting the maxixmum
-
duty cycle as we're coming up onto boost.
-
And this can be beneficial in some ways to
just prevent overboost.
-
So what we're doing is just limiting that
maximum duty cycle in the max duty
-
cycle table up to a point where we've
reached peak boost and then we're
-
bringing that max duty cycle to a point
where the integral and proportional
-
gains can take over.
-
So at this point I'm comfortable with the
amount of boost that we're running,
-
I'm comfortable with our boost control,
so what we're going to do now is move on
-
and we're going to try adding some timing.
-
So let's have a look at how we can go
about doing that.
-
Before we head back to our Accesstuner
software, it's a good idea to take note
-
of what maximum load we are actually
seeing, so in other words where abouts
-
we're actually operating within that ignition
table.
-
So we've got our calculated load channel in
red up here in our top set of graphs.
-
And what we can see is that our peak values
here are sitting around about 3.1, 3.2
-
grams per revolution.
-
At higher RPM as we get up towards our
rev limiter, we're dropping back down to
-
about 2.3 grams per revolution.
-
So let's head across and have a look at
our ignition table.
-
Now the first thing we can see here,
straight away is we've got a bit of an
-
issue in that the maximum load site in
this ignition table at the moment from
-
the base file is 2.84 grams per revolution.
-
So straight away even with the base file
and the boost pressure targets that we're
-
achieving we're exceeding that limit.
-
Now that's not necessarily to say that it's
a problem however what will happen is that
-
our ignition timing is going to essentially
remain stagnant from 2.84 grams per
-
revolution and above.
-
Not necessarily what we want and it's
generally considered best practice to
-
at least make sure that we're spanning out
our load cells so that we're always operating
-
within the map.
-
So what we're going to need to do here is
rejig our break points for our load axis
-
so that we're spanning that out for the
full range.
-
So I'm going to go out to 3.3 grams per
revolution out here in our far right cell.
-
Now because we have got a limited number
of break points in this particular table,
-
we do want to be a little mindful of the
difference or gap between these sites.
-
So what we don't want to do for example is
just take our last cell here at 2.84 grams
-
per revolution and change that to 3.3.
-
That's going to give us a really big jump
between 2.59 and 3.3.
-
So what I'm going to do here is sort of split
the difference, we're going to start by
-
copying our 2.59 gram per revolution
column here, we're going to copy those
-
values there, or ctrl C and we're going to
move those across to the left.
-
So that's now moved them across to the
2.46 gram per revolution break point site.
-
So of course I'm going to now change that
to 2.59.
-
Now what this means is I know that my
values there are going to be acccurate
-
when I get to 2.59 grams per revolution.
-
We're going to now repeat that process,
we'll ctrl C for our 2.84 gram per revolution
-
column, copy that across and again we'll
change our break point here to 2.84.
-
Lastly what we're going to do is change our
final break point here to 3.3.
-
Now we've got the same numbers here that
we were previously running.
-
So we already know that we were seeing
no knock with those numbers so at the
-
moment I'm going to leave them as they are.
-
You can get a little bit more fussy with these
break points if you want and start
-
interpolating between these, we've got
2.59, 2.84 and then quite a large jump up
-
there to 3.3.
-
So what we could do there is choose to
split the difference, if we highlight those
-
and use the horizontal interpolate, that's
going to give us a nice even set of
-
break points.
-
So this should give us essentially the same
ignition timing that we were seeing
-
previously.
-
What I'm going to do to start with for our
next run is we're just going to highlight
-
essentially the entire area that we're
operating in under wide open throttle
-
and we're going to go from 2000 RPM,
2.07 grams per revolution and above
-
and what I'm going to do is simply add
two degrees to all of those sites.
-
So this is just going to give us a good
starting point, we're going to see what the
-
effect of that two degree change to our
timing is.
-
So let's get another run underway and
we'll see what our results are.
-
Alright so we've got our run up there on the
dyno and we can see that we've got a nice
-
little gain there, we've picked up to 303
horsepower at the wheels, 346 pound foot
-
of torque at the wheels.
-
So that's a good gain for just two degrees
of ignition advance.
-
However to get the full picture of what's
going on, let's jump in and we'll have a look
-
at our log file.
-
So first of all, we obviously want to be
mindful of any level of knock that's
-
occurring so the first thing we want to
check is our feedback knock correction
-
and our fine knock learning, along with our
dynamic advance multiplier.
-
Good news there, no activity from our
knock control system which means that
-
we've got no detonation occurring so our
tune is still nice and safe.
-
It's a good point to mention here that during
the ramp runs we obviously want to be
-
mindful any time we're advancing the timing
of knock.
-
So it's a good idea while we are ramping the
car up, if you're not audibly listening for
-
detonation using audio knock detection,
check out your gauges while you're ramping
-
the car up and keep an eye on your knock
control feedback,
-
just making sure that if any knock is
occurring, you can abort that run,
-
get out of the throttle and address that
particular issue.
-
Now one thing we have seen here though is
now that we've changed our timing a little
-
bit, we've actually got a slight overboost
here that's occurring at about 4300 RPM.
-
So this is just going to require a little bit of
fettling to our closed loop boost control
-
tables and this is an iterative process because
as we progress through the tune,
-
we may find that the ignition timing,
because it effects the amount of energy
-
in terms of exhaust gas heat delivered to
the turbocharger, it can affect our boost
-
control strategy as well so this can be a
back and forth process between changing our
-
timing and coming back and affecting our
boost control strategy as well.
-
So that spike there to 1.57 bar, is probably
the main reason why we've seen that
-
increase in our peak torque.
-
Not to worry though, what we'll do is
go back to our boost control tables
-
and I'm simply going to make a change
to our maximum duty cycle at that point
-
so that we can ride that maximum duty
cycle table and bring down that peak spike.
-
However what we're going to do now is
make a further change to our ignition table.
-
So because we've got a gain in power and
torque everywhere with that change that
-
we've made, we'll head back to our
Accesstuner software, head back to our
-
primary ignition table and what we're going
to do is make a further change.
-
So I'm going to smooth this change that
I'm making down further into the load.
-
So we'll go down to 1.8 grams per
revolution now and we're going to make
-
that change from 2400 RPM and up.
-
So at this point again because we've got
no knock, we're going to try another two
-
degrees, it may prove that this is a little
bit optimistic but we'll see what the
-
effect of that change is.
-
When we're making these sort of block
changes, we do want to be a little bit
-
mindful of making sure that we keep a
smooth trace or smooth shape to the
-
curve and in particular here we can see
that at 1.55 grams per revolution,
-
we've now got a little bit of a step in our
ignition timing.
-
We move from 6.5 degrees to 1.5 and
then back up to two.
-
Likewise we move from eight degrees to
three degrees and then back up to 3.5.
-
Now we can address this quite easily
just by selecting the cells that we're
-
interested in there and we can use the
horizontal interpolate there just making
-
sure that we've got a nice smooth shape
to the curve.
-
Obviously when we are doing this,
we want to be a little mindful of how
-
far we extend our timing changes beyond
the area that we're actually operating in.
-
In the perfect world what we'd actually do
is creep up on this, starting at low boost,
-
optimising our timing at that particular
load area and then we'd increase the
-
boost and work just solely in the area that
we're operating in.
-
So for our demonstration today I'm cheating
this a little bit and just speeding up
-
the process.
-
Let's get another run underway and we'll
check out the results of that additional
-
timing.
-
With our last run complete there we can
see we've picked up another good
-
improvement in our power, we're up to
313 horsepower at the wheels.
-
Maximum torque there of 355 pound
foot at the wheels.
-
Now we can see we've got a good gain
everywhere over our last run and I've just
-
removed a few of the other runs just to
make it a little bit clearer where we're
-
going there on the dyno.
-
Let's jump into our data and we'll have a
look at our datalog.
-
Now straight away what we can see here
though is we are now seeing a little
-
bit of knock creep in.
-
And in particular we've got around about
1.5 degrees of feedback knock correction
-
and that's occurring at around about 4200 RPM
and around about 3.2 grams per revolution.
-
So we're right on the limit there obviously
of knock.
-
That is only some fairly light knock so I'm
not going to necessarily want to remove
-
all of that timing that we just added in
because we did see a good gain there.
-
So what we can do is make a specific change
to just that area of that map.
-
So taking into account 3.2 grams per
revolution, 4200 RPM, let's head back
-
and we'll have a look at our ignition table.
-
So we are spanned out not to 3.3 so this
is why it's important now, we can make
-
quite specific changes to just the area that
we are having problems with.
-
So what I'll do is we don't obviously have
a break point at 4200 so what I'm going to
-
do is remove some timing at 4000 and
4400 and just to safeguard the engine
-
as well I'm going to bring this change back
a little bit down in the load,
-
down to 2.59 grams per revolution as
well.
-
So what we'll do there is we'll just start
by taking 1.5 degrees out.
-
And I'm just going to smooth that change
as well.
-
So at 3200 RPM I'm going to remove one
degree and then again at 4800 RPM,
-
I'm going to remove one degree.
-
So this just gives a nice smooth shape
to the curve.
-
Now despite that little bit of knock that
we had there at 4200 RPM,
-
at higher RPM once the knock retard had gone
away we can see that we didn't have any
-
knock occurring and we've got rid of that
knock retard by around about 5600 RPM.
-
You can see the jagged shape there as
the knock retard basically increments back
-
up to zero.
-
So what we can do there, I know we're
probably pretty close to the limit,
-
is we can try adding a little bit of timing,
both below and above that point.
-
So let's look at 5600 RPM and we're at
2.6 grams per revolution and we do
-
drop down to 2.3 so let's have a look at that
area there.
-
So from 5000, I'm going to make it from
6000 RPM there just to get us a little
-
further away from that area of peak
cylinder pressure.
-
And we're going to make this change down
to 2.07 grams per revolution and above
-
so I'm just going to add this time,
one more degree so I'm just going to be
-
a little bit more gentle with the amount of
timing that I'm adding in.
-
Let's have a look at our low RPM range,
and our knock didn't occur until 4000 RPM,
-
we know we've removed a little bit of
timing below that.
-
So from about 3400 RPM and below we've
got no knock occurring and we're operating
-
between 1.69 grams per revolution and 3.1
so let's have a look at that area of our curve.
-
So what we'll do is we'll choose to add a
little bit of timing here, from 2400,
-
let's add that from, let's go from 1.8 grams
per revolution there and we'll make it
-
up to 3200 RPM.
-
So again I'm just going to add one degree
there, just a small change to our timing.
-
So let's get another run underway and see
the effect of that small change and hopefully
-
we've got rid of that knock in the mid range.
-
Alright with our last run complete there,
we can see that our peak power's actually
-
reading very slightly lower, 312.66 but
essentially it's there or thereabouts
-
compared to our last run.
-
What we can actually see though if we
compare the two runs is we have picked
-
up or smoothed our power very slightly
above that peak power level.
-
And we've seen another small boost variation
which has affected our peak torque so that's
-
why we're down to 334 pound foot compared
to our last run at 355.
-
So essentially the small gain that we've made
in timing there at low RPM and high RPM,
-
has shown us a very small improvement,
although in the lower RPM that's been
-
masked by the boost moving around.
-
So this again is why it's so important to make
iterative changes to your timing,
-
your fuelling, as well as your boost,
making sure that when you're comparing
-
two runs that you are actually comparing
apples with apples and that the boost
-
in particular was the same from one run
to the next.
-
Let's have a look at our logged data
though and we'll see how our knock
-
worked out.
-
So straight away we can see that our knock
samples now, our knock logging
-
is nice and clean, we've got no activity there
through that run.
-
So at this point we're probably pretty close
to where we're going to want our timing.
-
We could do another run there, creep in
another degree through the rev range
-
and just see how that affects everything,
although given the very very small change
-
that we've just seen there from that last
run and the fact that we know that we're
-
right on the brink of detonation or knock
right through that mid range around
-
peak torque, I'd say there's little to be
gained and we also end up risking having
-
a much more on edge tune.
-
So personally I would prefer to err on
the side of caution here and leave the
-
timing where it is.
-
There's one last aspect we want to look at
here with our tune optimisation and that
-
is our air/fuel ratio.
-
So far through our tune we've simply left
our air/fuel ratio targets exactly where
-
they were from the Cobb base file and as
I've already noted, this is quite rich,
-
particularly in the top end, however it's
been found that this particular FA20 DIT
-
engine does like to run a little bit richer
than what we'd conventionally see.
-
However for the sake of experimentation,
let's test and see how the engine
-
responds if we lean that air/fuel ratio out
a little bit.
-
So let's head back to our Accesstuner software
and what we'll do is we'll go to our closed
-
loop fuelling target base table and we know
that we are running up around this area
-
of our table.
-
And in this instance I'm not going to
change our break points for our load axis.
-
The reason for this is there's no need for me
to change our air/fuel ratio targets as we
-
move to higher load than 2.84 so we can
make all of our changes in this area
-
of the table.
-
Now what I'm going to do is just make this
change all the way down to 2.08 grams
-
per revolution.
-
The reason for this is that we are running
down to that area at higher RPM.
-
So what I'm going to do is just try for
our first test, leaning out our air/fuel
-
ratio targets.
-
What I'll actually do here is make that
change from 2000 RPM and above.
-
What we'll do is lean out our lambda target
there by 0.02.
-
Let's do another run and see the effect of that
change.
-
Now while we are doing this, because we've
leaned out the air/fuel ratio we don't
-
have the benefit of some additional fuelling
for combustion cooling there.
-
We would want to be very mindful of
knock during this next run.
-
Let's get our run underway and see the
effect of that change.
-
So with our run complete there we can see
that essentially our power hasn't been
-
affected at all.
-
We're sitting at 311.5 so we've actually
lost a touch of power but obviously we've
-
got some run to run variation in there.
-
Likewise our torque, we've picked up a little
bit to 338 but again that's within our
-
expectations of run to run variation.
-
Let's have a look at our datalogging though
for a full picture of what was going on.
-
So what I've done here is I've added in our
measured air/fuel ratio and our closed loop
-
target and while we can't compare these
directly now to our previous runs,
-
we know that we have leaned out that
target by 0.02 lambda so we can
-
see through the low RPM area we're
sitting with a target of 0.80 lambda,
-
at higher RPM that's sitting at 0.75 where
we were at 0.74 thereabouts.
-
So we haven't really seen any major
difference in our power.
-
What we are interested in of course is
our knock and we can see from our
-
group of data there on our knock control,
that we haven't actually ended up with any
-
knock feedback so still no detonation
occurring with that leaner mixture.
-
However in this instance I would tend to err
again on the side of caution.
-
I'd probably leave my lambda targets a little
bit rich.
-
We haven't seen any dramatic improvement
in power as I've leaned that lambda target out
-
and it's a benefit here with this particular
engine, particularly when we are pushing
-
that turbo very hard, out on the street I'd
prefer to have the benefit of that additional
-
fuel to help cool that combustion charge and
protect us.
-
We're obviously only doing short ramp runs
here on the dyno and what we may see
-
out on the road is the benefit of that richer
air/fuel ratio is going to actually help
-
protect our engine when we're running the
car through the gears and we're under
-
sustained high load at high RPM and high
speed.
-
Now we've got our new calibration flashed
into the ECU, it's also saved onto our laptop
-
as well as to our Accessport, so our job of
tuning is complete.
-
Normally at this point we would move onto
step six of our six step process which is to
-
confirm our calibration out on the road or
the racetrack.
-
Unfortunately due to our restrictions here,
relying on Cobb's facility and their own cars,
-
we're not able to do that.
-
However the process is exactly as you've seen
in the body of our course, you're simply
-
going to take the car out onto the road.
-
Using our datalogging we're going to confirm
first of all under cruise conditions that our
-
closed loop trims are under control,
meaning that our mass airflow sensor
-
calibration is still sound.
-
We're also going to be checking to make sure
that we're not seeing any knock under cruise
-
or transient conditions.
-
Once we're comfortable with that,
we can also test under some wide open
-
throttle pulls through the gears, again
datalogging to confirm that our boost
-
is under control, our air/fuel ratio and our
closed loop trims are under control and
-
most importantly making sure that we're
not seeing any knock activity.
-
If we are seeing any knock activity in
particular, we can use our datalog to
-
then highlight exactly where in the
calibration that's occurring so we can
-
pinpoint that area and remove timing just
from the areas where it's necessary.
-
So this brings us to the end of our worked
example and if you do have any questions on
-
this worked example, please ask them in the
forum and I'll be happy to answer them there.