Miata Turbo Forum - Boost cars, acquire cats.

Miata Turbo Forum - Boost cars, acquire cats. (https://www.miataturbo.net/)
-   AEM (https://www.miataturbo.net/aem-59/)
-   -   boost overshoot arrester circuit (https://www.miataturbo.net/aem-59/boost-overshoot-arrester-circuit-50169/)

JasonC SBB 07-30-2010 03:51 PM

boost overshoot arrester circuit
 
1 Attachment(s)
I have an AEM, a 5 psi wastegate can, 10 psi target, and a GT2560.

The AEM boost control algorithm is great (includes a 3D, TPS vs. RPM, boost target table), but for one thing. It has no 'D' term to help prevent overshoots. Tuning it, I either get slowish spoolup and little overshooting, or fast spoolup and massive(up to 4 psi) overshoots.

So I built an overshoot arrestor circuit. Because my wares are hard and not soft (i.e. I'm not a big software weenie), I built an analog circuit. Only took me a couple of hours lol.

The circuit cuts the power to the boost solenoid when the max boost target is gonna be hit in the next 150 ms given the rate of rise of boost. The idea is to pulse the solenoid open when overshoot is imminent.

It will not open the solenoid if the rate of rise is < 50 kPa per second. I determined this number from examining datalogs, overshoots only happen when boost rises >50 kpa/sec... and BTW I see >300 at say 5000 RPM, when I do a violent floor-lift-floor.

The circuit needs to tap into the MAP sensor, and has 2 knobs:
- max boost target
- 'D' multiplier.
The latter knob simply adjusts the above-mentioned 150 ms number, from 100~300 ms.

It works pretty well after just 3 datalogged runs of tweaking. I used to get 4 psi of overshoots, I now get 0 to 0.7 psi.

Attached is the circuit's first iteration. It has been designed for the Smokorola 2.5 Bar MAP sensor. (MPX4250A)

On the left, from top to bottom, the terminals are: 12V, MAP sensor, MAP sensor ground. On the right is the output for the solenoid, the wire which normally goes to 12V. (i.e. the other wire for the solenoid goes to the ECU).

The left pot is for the D term, the right one is the max boost setpoint. The testpoint is for measuring the setpoint voltage - it has a 1:1 correspondence with the MAP sensor voltage at max boost.

I layed out this thing for SMD resistors and capacitors for compactness.

aznDragonX 07-30-2010 04:24 PM

wow.. Jason..mind me ask you for help later locally when I am ready to put in my AEM?
- Jason

JasonC SBB 08-25-2010 02:39 AM

1 Attachment(s)
While trying to improve my circuit I realized I could implement a real 'D' algorithm to add to the AEM's PI simply by processing the AEM's boost solenoid PWM output. My original circuit would reduce the overshoot but would sometimes cause undershoot, and if I tried to speed up the boost response it could still overshoot some.

So I built a circuit that implemented the 'D', and the results are attached. On the left is a typical overshoot without the D, on the right is with the 'D' circuit. Note that there is little overshoot even when I do a sudden throttle lift then floor it again, while at full boost, even at >5500 RPM.

Having a 'D' in many feedback loops is important.

fooger03 08-25-2010 07:53 AM

looks like it takes marginally longer to reach target? but nicely done on controlling the overshoot!

JasonC SBB 08-25-2010 10:54 AM

Initially it rises just as fast as before, then when it's close to target (about 250 ms before it would hit and pass the target), it "rounds off" the boost trace as it settles at the target, as the D circuit opens the wastegate in anticipation of hitting the target.

y8s 08-25-2010 11:45 AM

is the rounding for safety? usually you want to reach the setpoint fastest with minimal error, even if that error is slightly above the target (ie teeny overboost).

JasonC SBB 08-31-2010 03:07 PM

Rounding is a consequence of the 'D' to prevent overshoot.

Think about running full speed towards a spot on the ground on a slippery floor. You need to start braking and slowing down soon so you don't overshoot your target.

Yes you can sacrifice and allow a bit of overshoot if it's OK to pass your target a bit and run back, by reducing the magnitude of the 'D' term, in order to hit (pass) your target a bit sooner.


All times are GMT -4. The time now is 08:33 AM.


© 2024 MH Sub I, LLC dba Internet Brands