Jump to content
LegacyGT.com

Turbo Dynamics, simply a PID control system


2005garnetGT

Recommended Posts

  • Replies 161
  • Created
  • Last Reply

do 272s lope at all?

 

I suspected that it had cams but with no detectable lope I reconsidered.

 

the head was rebuilt, I suspect the balance shaft belt went and took the timing belt with it, thats why it had ARP headstuds, 3 angle valve job, and a whole list of other crap

Link to comment
Share on other sites

I was just getting ready to write a response to bugblatterbeast about different strategies that I use to control boost, but apparently you don't think it's worthwhile.

 

Well, I'd certainly be very interested as I will freely admit I don't understand boost control on Subies. I'm still learning - it's very different from the DSM days where I'd just run a ball-and-spring boost controller and be done with it. :lol:

Kyle "BlackHole"
Link to comment
Share on other sites

one of the closed loop poles shifted to the RHP because of the lack of mass in the system when on the dyno (best guess right now). I now use different boost control strategies for road and dyno use......

 

 

yea... one of the disparities between road and dyno tuning is that there isn't a "real" continuous load on the vehicle (for dynojets). Once you overcome the initial inertia (transient loading).. the amount of force it takes to spin the drum is quite a bit smaller than being on the road.

Link to comment
Share on other sites

You might be able to use classic PID tuning algorithms such as "Ziegler-Nichols", "Lambda Tuning", or "Cohen-Coon" methods to quickly determine good and stable values for the proportional, integral and derivative tuning constants.

 

You would need to have an accurate representation of the car's dynamics.. however many variables that is.... and the complexity quickly rises as you add variables to the model.

 

This is coming from a control theory point of view. Not to say that you can't approximate a model which the car behaves.

Link to comment
Share on other sites

I originally started with Nichols method for dialing in the PID. Then I modified it a bit to make it more suitable for road tuning. This is what I came up with. Hopefully I've removed most of the formality of the method and converted it into something readily useable without losing the technical correctness of the method.

Bugblatterbeast’s Subaru Boost Control Tuning Guide v1.0

This document is to be used only as a guide and not as a definitive reference. It has been cobbled together from information found on various forums, first hand tuning experience and standard tuning principals found in any modern control text. As such, this document may contain errors. If you spot one, please PM me and I’ll make corrections. Also, use this guide with caution as careless tuning can easily nuke an engine. You are ultimately responsible for making sure your tune is safe.

Tuning Steps:

1) establish reasonable boost targets

2) establish open loop performance of turbocharger/engine combination

3) generate WGDC low table

4) tune turbo dynamics proportional gain table

5) tune turbo dynamics integral gain table

6) generate WGDC high table

Establishing boost targets

This portion of the tune is a pre-requisite to any road work. The desired boost vs rpm vs throttle table needs to be populated before the car is driven. Do not simply populate the entire table with your peak boost value. Various regions of the table use different strategies to get the desired result.

At low throttle openings the boost target should be set just above atmospheric pressure. Setting unachievable boost targets here will result in the control system accumulating large values in the integrator. This will cause problems with boost control during tip-in if one is cruising at light throttle (at an engine speed above the boost threshold). At moderate throttle openings, the boost target should be raised at lower RPMs (above the boost threshold) and taper down to atmospheric pressure towards redline. This is done to keep the car from being jumpy. At full throttle, the boost targets should be set slightly above achievable boost in the spool up region. As the RPMs approach the area where peak boost is expected/desired, the targets should taper to the peak boost target. As the RPMs climb, the boost target should eventually taper. The start of the taper should correspond with the point where the turbo/engine combination begins to lose VE (either the cams or the turbo will choke things off).

Do not set the part throttle boost targets too high. Boost is measured after the throttle body. Attempting to generate too much boost with a closed throttle will result in a very hot intercooler, high exhaust back pressure and possibly compressor surge.

Try to avoid over-running the turbo. Turbine pressure ratios come up quite quickly when the turbo is spun too fast in an attempt to make more power. Remember that the exhaust backpressure usually comes up faster than boost on a road car. The car may be faster with less boost if the decreased charge temperatures and backpressure allow more favourable AFRs and timing. If in doubt, log flow in addition to boost.

Establishing Open Loop Performance

The boost control system uses open loop guesses for the WGDC in addition to feedback when controlling boost. If the initial guesses for WGDC are more accurate, less feedback is needed to control boost. This is generally desirable as the overall response of the control system will be quicker and more accurate if corrections through feedback are not needed.

First, set the car up for safe pulls. This usually involves running conservative AFRs and timing. Also, keep the boost cut value just above the desired targets.

The following steps should establish a reasonable estimate of the OL boost performance.

1) zero the proportional control table

2) zero the integral control table

3) set WGDC low to 0

4) set WGDC high to 0

5) take a pull, logging relative pressure, RPM and WGDC

6) increment WGDC high and low by 10

7) goto step 3

After the first pull, examine the relative pressure data. If you are tuning conservatively, adjust the WG actuator pre-load till the mechanical boost is between 9-12 psi. This is a precautionary measure taken to allow the stock fail-safe system to drop the boost pressure

(to the level the high det maps were adjusted for) should something go wrong. Keep in mind that the system becomes increasingly difficult to stabilize when the difference between the mechanical boost level and target boost level grows. Using a 3 port BCS helps when the difference is large.

Once boost vs WGDC levels have been established for boost values up to the boost target, linear interpolation can be used to generate WGDC values for the points the WGDC low table corresponding to the points the boost target table. During spool up, much higher WGDC level can be used to help quicken the spool.

Generating the WGDC Low Table

The previous task will provide rough values for the WGDC low table. This step establishes a finer setting for the WGDC low table. Set the WGDC high table values ~10% higher than those in the WGDC low tables. Next, set up logging for TPS, RPM, relative pressure, turbo dynamics and WGDC. Take pulls holding the throttle at various levels corresponding to the X values of the WGDC low table. Where the car is under boosting, add to WGDC low table. Where the car is over boosting subtract from the WGDC low table. The goal is to have the car under-boost slightly or just reach the boost target.

Tuning Proportional Gain

This table is called Turbo Dynamics Fine Gain in Cobb’s software. Enginuity and ECUTEK call this table Proportional Gain. This table adds WGDC in proportion the boost error. I suggest starting with half the stock values and scaling up till slight overshoot is observed in the boost response. The values should then be scaled back so the boost response is slightly slower than the no overshoot setting. The slow response will be corrected later. In some cases, the end values of the table can be scaled up for faster boost response. Care must be taken to avoid instabilities while doing this. By observing the TD numbers during the boost transient, one can determine when the last couple entries in the table are active. If the end values are artificially raised to generate a non-linear proportional response, it is important to ensure that the middle section of the table is active when the peak boost target is approached.

At this stage in the tuning the boost response may be slightly soft and there will be residual boost error (the integral term is still zero). Do not attempt to reduce the residual error by increasing the proportional gain. The system will become unstable before the error is driven to zero.

Tuning Integral Gain

The integral gain control is split into two tables. Cobb’s software labels these Coarse Gain High and Coarse Gain Low. The boost error is used to reference these tables and the values are fed to an integrator that in turn adds to the final WGDC value. Till this stage in the tune, these tables have been populated with zeros.

Again, start with half the stock value and increase slowly. Observe the residual boost tracking error. If you are running high boost, drive the residual error as close to zero as possible without overshoot during the spool-up transient. If you are running lower boost and can tolerate some spiking, faster boost response can be obtained by increasing the values. Try not to exceed 5% overshoot as the resulting undershoot shortly after is uncomfortable and hampers performance.

Generating the WGDC high table

The WGDC high table is the saturation point for the WGDC output. Above the spool up region this table should be set a bit above the normal operating WGDC. This is a safety measure. The spool up region can have values for the WGDC high table substantially above the WGDC low table. This allows better spool-up response on hot days and low gears.

Happy tuning. Thanks go out to mickeyd2005 and LBGT.

Link to comment
Share on other sites

Don't thank me just yet, I am still learning.

 

I have read a few guides (and makes sense to me) to tune Integral before Proportional. (after you have the WGDC initial or low set)

 

This is my reasoning:

 

Integral is used to hold steady state boost. If there was no proportional then the integral should slowly allow the motor to reach boost targets. The integral gains (coarse gains) should be set appropriately to acheive target boost in second gear through top gear with minimal overshoot. FWIW I am now hitting target boost in 1st gear at around 5700 rpm! (around 22 psi). Now boost response will not be very good, and spool up will suffer til you get proportional dialed in.

 

Proportional should then be adjusted to get proper boost response, and maximize spool, again with minimal overshoot.

 

I hope that made sense.

 

At any rate to adjust boost properly one NEEDS to use a logger that logs both TD values. COBB's does not right now. Enginuity's logger does. It is only by seeing what values the ECU is using in Integral and Proportional that one can manipulate it for the desired broad range boost consistency.

 

 

There are other things that can be added, but not by me, at least not yet. There are little tricks and ideas that hopefully in time can be explained and better yet shown by example to help us all.

 

:)

Link to comment
Share on other sites

I think you are referring to a modified version of the Zeigler Nichols (the one where you let the system go unstable... I might be thinking of the wrong one, it has been 10 years since I've looked at the control texts) method for tuning PID systems. It is a valid method too but one needs to use it with caution. You will get results faster using your method but a base map is needed as instabilities are easily introduced when integral gain is tuned before proportional.

 

The inability to log TD integral is the reason I recommend tuning proportional first. When proportional is dialed in to the cusp of instability and backed out, it is usually set about right. Once the P term is dialed in the I term is pretty easy to adjust by feel and through indirect logging. With access to the TD integral logs I'd probably change the sequence. I'm guessing (haven't run the simulations yet) that you could probably stabilize the system with just the I term if you wanted ;)

Link to comment
Share on other sites

I originally started with Nichols method for dialing in the PID. Then I modified it a bit to make it more suitable for road tuning. This is what I came up with. Hopefully I've removed most of the formality of the method and converted it into something readily useable without losing the technical correctness of the method.

 

Bugblatterbeast’s Subaru Boost Control Tuning Guide v1.0

 

 

This document is to be used only as a guide and not as a definitive reference. It has been cobbled together from information found on various forums, first hand tuning experience and standard tuning principals found in any modern control text. As such, this document may contain errors. If you spot one, please PM me and I’ll make corrections. Also, use this guide with caution as careless tuning can easily nuke an engine. You are ultimately responsible for making sure your tune is safe.

 

Tuning Steps:

 

1) establish reasonable boost targets

2) establish open loop performance of turbocharger/engine combination

3) generate WGDC low table

4) tune turbo dynamics proportional gain table

5) tune turbo dynamics integral gain table

6) generate WGDC high table

 

 

 

Establishing boost targets

 

This portion of the tune is a pre-requisite to any road work. The desired boost vs rpm vs throttle table needs to be populated before the car is driven. Do not simply populate the entire table with your peak boost value. Various regions of the table use different strategies to get the desired result.

 

At low throttle openings the boost target should be set just above atmospheric pressure. Setting unachievable boost targets here will result in the control system accumulating large values in the integrator. This will cause problems with boost control during tip-in if one is cruising at light throttle (at an engine speed above the boost threshold). At moderate throttle openings, the boost target should be raised at lower RPMs (above the boost threshold) and taper down to atmospheric pressure towards redline. This is done to keep the car from being jumpy. At full throttle, the boost targets should be set slightly above achievable boost in the spool up region. As the RPMs approach the area where peak boost is expected/desired, the targets should taper to the peak boost target. As the RPMs climb, the boost target should eventually taper. The start of the taper should correspond with the point where the turbo/engine combination begins to lose VE (either the cams or the turbo will choke things off).

 

Do not set the part throttle boost targets too high. Boost is measured after the throttle body. Attempting to generate too much boost with a closed throttle will result in a very hot intercooler, high exhaust back pressure and possibly compressor surge.

 

Try to avoid over-running the turbo. Turbine pressure ratios come up quite quickly when the turbo is spun too fast in an attempt to make more power. Remember that the exhaust backpressure usually comes up faster than boost on a road car. The car may be faster with less boost if the decreased charge temperatures and backpressure allow more favourable AFRs and timing. If in doubt, log flow in addition to boost.

 

 

Establishing Open Loop Performance

 

The boost control system uses open loop guesses for the WGDC in addition to feedback when controlling boost. If the initial guesses for WGDC are more accurate, less feedback is needed to control boost. This is generally desirable as the overall response of the control system will be quicker and more accurate if corrections through feedback are not needed.

 

First, set the car up for safe pulls. This usually involves running conservative AFRs and timing. Also, keep the boost cut value just above the desired targets.

 

The following steps should establish a reasonable estimate of the OL boost performance.

 

1) zero the proportional control table

2) zero the integral control table

3) set WGDC low to 0

4) set WGDC high to 0

5) take a pull, logging relative pressure, RPM and WGDC

6) increment WGDC high and low by 10

7) goto step 3

 

After the first pull, examine the relative pressure data. If you are tuning conservatively, adjust the WG actuator pre-load till the mechanical boost is between 9-12 psi. This is a precautionary measure taken to allow the stock fail-safe system to drop the boost pressure

(to the level the high det maps were adjusted for) should something go wrong. Keep in mind that the system becomes increasingly difficult to stabilize when the difference between the mechanical boost level and target boost level grows. Using a 3 port BCS helps when the difference is large.

 

Once boost vs WGDC levels have been established for boost values up to the boost target, linear interpolation can be used to generate WGDC values for the points the WGDC low table corresponding to the points the boost target table. During spool up, much higher WGDC level can be used to help quicken the spool.

 

Generating the WGDC Low Table

 

The previous task will provide rough values for the WGDC low table. This step establishes a finer setting for the WGDC low table. Set the WGDC high table values ~10% higher than those in the WGDC low tables. Next, set up logging for TPS, RPM, relative pressure, turbo dynamics and WGDC. Take pulls holding the throttle at various levels corresponding to the X values of the WGDC low table. Where the car is under boosting, add to WGDC low table. Where the car is over boosting subtract from the WGDC low table. The goal is to have the car under-boost slightly or just reach the boost target.

 

 

Tuning Proportional Gain

 

This table is called Turbo Dynamics Fine Gain in Cobb’s software. Enginuity and ECUTEK call this table Proportional Gain. This table adds WGDC in proportion the boost error. I suggest starting with half the stock values and scaling up till slight overshoot is observed in the boost response. The values should then be scaled back so the boost response is slightly slower than the no overshoot setting. The slow response will be corrected later. In some cases, the end values of the table can be scaled up for faster boost response. Care must be taken to avoid instabilities while doing this. By observing the TD numbers during the boost transient, one can determine when the last couple entries in the table are active. If the end values are artificially raised to generate a non-linear proportional response, it is important to ensure that the middle section of the table is active when the peak boost target is approached.

 

At this stage in the tuning the boost response may be slightly soft and there will be residual boost error (the integral term is still zero). Do not attempt to reduce the residual error by increasing the proportional gain. The system will become unstable before the error is driven to zero.

 

Tuning Integral Gain

 

The integral gain control is split into two tables. Cobb’s software labels these Coarse Gain High and Coarse Gain Low. The boost error is used to reference these tables and the values are fed to an integrator that in turn adds to the final WGDC value. Till this stage in the tune, these tables have been populated with zeros.

 

Again, start with half the stock value and increase slowly. Observe the residual boost tracking error. If you are running high boost, drive the residual error as close to zero as possible without overshoot during the spool-up transient. If you are running lower boost and can tolerate some spiking, faster boost response can be obtained by increasing the values. Try not to exceed 5% overshoot as the resulting undershoot shortly after is uncomfortable and hampers performance.

 

Generating the WGDC high table

 

The WGDC high table is the saturation point for the WGDC output. Above the spool up region this table should be set a bit above the normal operating WGDC. This is a safety measure. The spool up region can have values for the WGDC high table substantially above the WGDC low table. This allows better spool-up response on hot days and low gears.

 

 

Happy tuning. Thanks go out to mickeyd2005 and LBGT.

 

bbb, I can't thank you enough for this. You too, mickeyd2005 and LBGT. If we had a separate forum for tuning this would be a stickey at the top. Correllating ST terms with enginuity and PID is what I've been searching for unsuccessfully.

 

I was told in the past there wasn't enough interest for a separate forum on tuning..... perhaps there is now?

Link to comment
Share on other sites

I think you are referring to a modified version of the Zeigler Nichols (the one where you let the system go unstable... I might be thinking of the wrong one, it has been 10 years since I've looked at the control texts) method for tuning PID systems. It is a valid method too but one needs to use it with caution. You will get results faster using your method but a base map is needed as instabilities are easily introduced when integral gain is tuned before proportional.

 

The inability to log TD integral is the reason I recommend tuning proportional first. When proportional is dialed in to the cusp of instability and backed out, it is usually set about right. Once the P term is dialed in the I term is pretty easy to adjust by feel and through indirect logging. With access to the TD integral logs I'd probably change the sequence. I'm guessing (haven't run the simulations yet) that you could probably stabilize the system with just the I term if you wanted ;)

 

 

That is the thing. DON'T use COBB ST to log for boost control. It just isn't complete.

 

COBB's software also will not log above about 37 psi absolute.

Link to comment
Share on other sites

That is the thing. DON'T use COBB ST to log for boost control. It just isn't complete.

 

COBB's software also will not log above about 37 psi absolute.

 

 

I'll have to look into that. Getting a log of the integral value would make tuning so much easier.

 

Maybe we should contact Cobb and suggest the addition of the logging option for the next release of ST. I'm sure they are open to suggestions.

Link to comment
Share on other sites

The TD integral is the most important component of boost control. The proportional can be fairly far off and still have little impact. It takes a very small change to the integral to make a difference.

 

I noticed that most people tune their boost using one gear (usually 3rd gear) and they control boost using the max wgdc table. That may be very easy to do, but it is not a good idea. It will restrict boost in the lower gears. The max wgdc table DOES NOT protect against overboosting in the higher gears because the engine will overboost before being clipped by the max wgdc table. I did notice that if you use a CONSTANT 10% between max wgdc and initial wgdc table that it will protect against overboosting. It was always a mystery to me how this worked, but once you log TD integral you will understand. Also, capping the WGDC by using max wgdc table takes TD out of the picture. You could put random numbers into the TD tables and it would still work because the WGDC would be clipped.

 

Also, try to not overboost. If negative boost error is sustained, it will wind down the integral and prevent hitting target boost later.

 

In a boost vs rpm plot of each gear, I divide the graph into two regions. One region is rpm > peak boost and the other is rpm < peak boost. In the high rpm region, the turbodynamics will behave similar to mos theoretical PID models. In the low rpm region, PID won't work normally because too much time is spent spooling the turbo. Different strategies have to be used.

 

Here is an example of a boost response with all 5 gears. The tune is not complete but it shows how it works and how it doesn't.

 

http://i141.photobucket.com/albums/r69/mickeyd2005/boost.jpg

 

5th gear - I purposefully capped boost in this gear. I had to lower boost between 2400 and 3000 rpm because my AEM intake was resonating. I notice this resonance in Legend's SPT intake in 4th gear but it shows up at a higher boost level on the AEM. Larger turbos won't have this problem. I'm going to buy a new stock filter and put my stock air box plus resonator back on and see if that helps.

4th gear - This turned out fairly nice. Boost comes up to a plateau and stays there. Very little oscillations. You need to flatten the stock TD integral slope at about 0.1 psi boost error to smooth out the oscillations in 4th gear.

3rd gear - I'm very conservative so I undershot this. You can see that I missed target boost by about 1/2 psi.

2nd gear - Same problem. I didn't wind up TD integral enough so that when TD proportional cut out, I lost too much WGDC. Notice the dip in boost at 3600 rpm. Overall, 2nd gear boost is still much better than conventional stage 2 tunes.

1st gear - There is actually a time delay in TD in 1st gear. Don't know what the triggers are. However, it doesn't really matter because we're probably traction limited here. Note that I would have hit target boost if I had started the WOT log at 1500 rpm instead of 2400 rpm.

4th gear transient - In this datalog, I started at a higher rpm and hit WOT. This is similar to driving on the freeway and accelerating to pass someone. Notice that boost climbs straight up and hits target boost and then flattens out. This is the kind of response to look for.

 

The target boost is 17.11 psi and the fuel cut is set to 17.99 psi. Haven't hit fuel cut yet.

 

Here are some of the different strategies that I can think of -

 

Traditional - easy, lower performance in lower gears and transient.

MBC - easy, if you have a flat boost curve like on a 20G or larger turbo, this is an option. The downside is that you have to manually adjust boost at higher altitudes.

WGDC init + TD integral max - easy but time consuming. If you have real time tuning capability, this might be the ticket for you. I had trouble with using this on a large turbo though because I didn't set up the times properly. I also tuned BigHonu and Legend's boost this way but since it was done by email, I guessed at the transition points based upon several logs. Not the best but fairly good.

TD integral lockup - tricky but can be done.

WGDC compensation by gear - easy to tune, but somone has to modify the rom.

Hybrid method - I'm working on this.

Link to comment
Share on other sites

I knew you would be posting up soon enough.;)

 

 

All we need now is some practical experience, most people like me can understand something much better from seeing it in action and example then just talking about it.

 

I hope this starts a new chapter in boost control, cause the technology has been at our fingertips the whole time, just need the knowledge.

 

Thanks MickeyD!:)

Link to comment
Share on other sites

I knew you would be posting up soon enough.;)

 

 

All we need now is some practical experience, most people like me can understand something much better from seeing it in action and example then just talking about it.

 

I hope this starts a new chapter in boost control, cause the technology has been at our fingertips the whole time, just need the knowledge.

 

Thanks MickeyD!:)

 

BIG second on that.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.




×
×
  • Create New...

Important Information

Terms of Use