Mazda-speed.com
July 13, 2020, 10:55:18 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Mazda-speed.com is no longer open and is now a read-only site. For Mazdaspeed Miata discussions, please visit the Mazdaspeed section on Miata.net.
 
   Home   Help Login Register  
Pages: 1 2 [3]   Go Down
  Print  
Author Topic: Hydra 2.7 EBC Settings. Brainstorming, thoughts and help  (Read 36409 times)
0 Members and 1 Guest are viewing this topic.
fooger03
First Gear
*
Posts: 9


« Reply #30 on: June 01, 2015, 09:30:35 PM »

Here are the results of the latest test.  As mentioned in the post above, for low RPMs, I indexed the boost levels attainable at given RPMs - basically this prevents my "I" term from trying to hit 12.0 psi while I'm at 2200 rpm.  I also increased my "I-D" weight from 20% to 40%, this allows my I and D terms to have a greater effect on my solenoid duty cycle.

The first graph is a 6th Gear roll on from ~ 2200 RPM.  As you can see, My boost target is more closely referenced to my actual boost while I'm gaining RPMs to reach my 12psi boost threshold.

Lines, from top to bottom:
Final P-I-D Control Duty Cycle ("Normal" & "P" + 40% of "I" and "D")
"Normal" + "P" Term
Boost Target value (12 PSI Max)
Measured Boost Value
"I" + "D" terms


Second graph is the 6-4 downshift.  You can see the overshoot and associated undershoot oscillation followed by a stabilization at just below the boost target.  As you can see in the bottom line, the "I" term is continuously trying to push the measured boost up to the boost target after the stabilization.  In this case, as the engine RPMs increase more rapidly than in the 6th gear roll example, the air restriction created by the intercooler, throttle body, and associated intake tract also increase more rapidly, which causes a condition eloquently described as "boost sag" - basically the turbo might need to push 12.7psi at 3400 rpm to get 12psi to the intake manifold, but then it might have to pump 15.2psi at 7000 rpm to get the same 12psi to the intake manifold.  You can certainly see that the measured boost never achieves the target boost after the initial oscillation.  In this case, the influence of the "I" term probably needs to be increased so that measured boost oscillates about the target boost line.

Lines, from top to bottom:
Final P-I-D Control Duty Cycle ("Normal" & "P" + 40% of "I" and "D")
"Normal" + "P" Term
Boost Target value (12 PSI Max)
Measured Boost Value
"I" + "D" terms


In order to increase the influence of the "I" term, I have two options - the first is to again increase the weight % of the "I-D" term, this time to probably 60% weight.  The second option would be to increase Hydra's internal EBC "P" term.  (Which we know from previous posts is actually the "I" term).  Because I also want to gain more influence from the "D" term (arresting overshoot), the correct action is probably to increase the weight of the "I-D" term.  I'll try it at 60% and post up the outcome.

I wasn't able to run a 1-2-3 run today, because my local test track was a little bit damp.  Maybe next time.  I still have no idea how to solve the first gear Native EBC inversion.
« Last Edit: June 01, 2015, 09:48:25 PM by fooger03 » Logged
fooger03
First Gear
*
Posts: 9


« Reply #31 on: June 01, 2015, 10:20:12 PM »

With more understanding, I would like to revise my recommendations to Hydra for correcting the EBC issue.

1.  The PID term must not integrate.  Instead, successive PID calculations must only replace each previous PID calculation, the result of the PID calculation must act on the "Normal" to control boost.
2.  You must come up with a way to provide "normal" values.  In my work, I have provided "Normal" values based on testing.  I have also seen commercially available applications which seem to produce "normal" values where the User inputs the wastegate pressure and the EBC calculates how much % is needed to achieve that pressure.  A learning EBC would be the easiest user-end option, but also the hardest to program.
3.  Eliminate "Minimum EBC Duty Cycle" and "Maximum EBC Duty Cycle".  They are not necessary.
4.  Determine a way to defer the "I" term until measured boost approaches target boost.  My suggestion is to provide a table for the start value of "I" integration, where for different boost target values I can enter different "I" starting points.  An example: If my boost target is 12 psi, I want my I term to integrate at any boost value above 8psi.  The goal is to reduce/eliminate Integral wind-up.  The indexed "boost-target to RPM" table is a method of preventing overshoot, but it is rough, at best.  Effectively, it's using a chainsaw to do the work of a scalpel.
Logged
fooger03
First Gear
*
Posts: 9


« Reply #32 on: June 03, 2015, 04:11:23 PM »

This is kind of a note for myself, but I'll include background information for others.

When I decided to limit the "weight" of the I-D terms to 20%, the original intent was to reduce integral windup.  Weighting it at 20% was intended to effectively limit integral windup at 20% - as that would be the most that the I-D terms could influence solenoid duty cycle.  After seeing promising results (indicated by little or no windup) by increasing the "weight" to 40% and indexing the RPM-Based boost targets, I believe it may no longer be necessary to reduce the "weight" of the I-D Terms. I anticipate seeing minimal "windup" by increasing the weight to 100%, and if I do see some windup, I can certainly decrease the I term.  The more important thing here is that by increasing the "weight" to 100%, I gain more input from my D term.

For my next iteration, I'll eliminate the weighting and simply add the P and I-D charts together such that their full combined sums will produce the solenoid duty cycle. As an example, if my P term provides an output of 30% DC and my I-D term provides an output of 12%, my solenoid will see a final duty cycle of 42%.

I'll post up results of my next trial set when I get there.
Logged
fooger03
First Gear
*
Posts: 9


« Reply #33 on: June 07, 2015, 10:59:57 PM »

Had something funny happen when I was trying to turn off hydra's native EBC so that I could get my normals and P value adjusted for a more predictable response.

I set the native "P" value (real I value) to zero, expecting that this would effectively turn off this control.  After a run that didn't go as expected, I went in and investigated and found that the native component was jumping from 0% to 80-90% back and forth, causing uncontrollable oscillations.  My expectation was that with "native P" set to 0, the D wouldn't really have any effect at all because it wouldn't have any value to counter.

Confused, I set the "D" term to zero and tried another run.  On this run, I only achieved wastegate boost, and upon investigation the Hydra was throwing up a boost target of something like 1.2psi.

There some voodoo going on here that I don't quite understand, but in the meantime I'm going to tune my P and normals with my original method (just the single 3D PWM Graph instead of the second combined PWM graph).  Once I'm confident that I can use the P without terribly overshooting, I'll add the I-D control back in and try and tune my I with the D term left to Zero.

After seeing this result, it occurred to me that the high D term could be the cause of the first gear "inversion", causing my I-D term to start at 100% instead of 0%.  Maybe it will shake out if I can tune my P and I values without throwing a Huge D value at it.
Logged
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #34 on: June 10, 2015, 03:47:08 AM »

just conjecture, but with the boost targets so close to actual wastegate pressure do you think that it makes it harder to tune? What if the target was 13psi? Would that be easier?
Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
fooger03
First Gear
*
Posts: 9


« Reply #35 on: June 10, 2015, 11:03:18 AM »

my wastegate is somewhere around 5psi - i think that hitting the 12 psi mark is difficult because it's more than twice my wastegate pressure. Still doing some tweaking of normals/p/i/d terms, and I at least imagine I am getting closer.  The only undesireable trait that I have (and still trying to eliminate) is the initial overshoot on the 6-4 downshift (and as such, is likely present on every other high rpm gear shift, up or down).  Today will be the first day that I get back into the D term, as I've had it off for several days while trying to play around with my P term.  I'll see how much of a difference it makes to the product.
Logged
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #36 on: November 08, 2015, 01:58:52 AM »

Going back to try some more testing. Anyone want to work together?
Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #37 on: November 08, 2015, 04:23:38 AM »

3rd gear pull P:150 I:0 D:0 using FM's new valve



I worked hard to make the Boost target line match how quick the car is capable building boost (I should put the minimum to 100% and see... more testing later) Im curious if anyone else has gotten it to build quicker. I may have a boost leak somewhere.

I do get over shoot when I drop a gear and floor it.

(Manual MBC below)
Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #38 on: November 08, 2015, 07:44:02 AM »

More reading.....  Shocked
Im going to try and setup it their way. Why not. The bolded items are different from what I expected.. It seems The EBC isn't designed to control levels less than the wastegate pressure.. So the minimum for us should be about 8psi... and that should start controlling it only a few hundred RPM less than that pressure is reached in sixth gear.

From Hydra,

"Set the boost control threshold RPM to a point that is at least a few hundred RPM below the point at which your turbocharger reached the mechanical wastegate spring pressure in the highest gear you tested. You may need to come back and adjust this value later if you find that the turbocharger can actually exceed your boost target below the threshold engine speed under any conditions. The electronic boost control system will feed a 100% duty cycle to the solenoid valve whenever the engine speed is below the indicated threshold and load is above 160 mmHg (80 kPa). This should keep the wastegate completely closed to improve spool.

The next step is long and tedious, but very critical. We need to determine which boost PID update rate works best with your boost control solenoid and your mechanical boost control system. The majority of setups are going to work best somewhere in the 12-64Hz range, so start at by first testing 32Hz and 48Hz and move in the direction that seems best. To determine the best update rate, we are going to run the electronic boost control system in open loop mode. To do this, set the maximum boost solenoid duty cycle table to zero which will then cause the boost control solenoid duty cycle to be completely controlled by the setting of the minimum boost solenoid duty cycle table. The x-axis of the table will start at the boost pressure indicated by the boost target scale start setting and have a range determine by the boost target scale range setting. What this table defines is the minimum PWM duty cycle that will be delivered to the boost control solenoid depending on the target boost defined by the boost target table with all the boost trims applied. We know that the system cannot control boost below the mechanical boost control system, so any values in the x-axis below that boost should never be used and can be set to zero. For values starting at the mechanical wastegate spring pressure up to the maximum boost that we will control, it is up to us to determine the duty cycle that we need to feed to the boost control solenoid to produce that amount of boost"

So in short we are to have the boost control probably start around 4k and the range to 8-15psi.
Then we set the max Duty Cycle to zero
Then we will up the minimums to reach our desired boost target...but first!



Assume that your mechanical system produces 15 psi. You have set boost target scale start to 15 psi and boost target scale range to 10 psi. We need to start tuning the boost control system by seeing if we can get it to control boost a little above the mechanical range. In most cases, 2 psi (15 kPa) above the mechanical level is a good start. Given that, set the boost target table to 17 psi across the entire engine speed range and set the 17 psi point (and also the points above and below 17 psi to avoid interpolation issues) on the minimum boost solenoid duty cycle table to a starting duty cycle value, say 30%. Also make sure to keep the maximum boost table a few psi above the target boost level you are trying to reach to prevent fuel cut. Now do a pull in 3rd gear and datalog load, engine speed, boost control solenoid duty cycles and anything else you need to make sure that the engine is still running safely at the boost levels you are trying to reach. The datalog should show the solenoid duty cycles at 100% for engine speeds below boost control threshold RPM (assuming you had the foot down on the accelerator at those points) and then at the 30% duty cycle level above the threshold. If boost did not go above the mechanical level, change the minimum duty cycle value to 40% and try again. If the boost was much higher than the 17 psi target, lower the minimum duty cycle and try again. Repeat this experiment until you find the duty cycle value that produces 17 psi across the widest portion of the engine speed range.




Set the max boost to a few psi above where we are testing so we don't run into fuel cut. ( I set it to 15 psi)
The set our boost target level a few psi above wastegate ( I set it to 10psi)
Next guess at Minimum Duty Cycle ( I guessed 30%)
Do a third gear pull with data log.
Increase duty cycle if you didn't reach your target. Decrease if you exceeded you target.
Repeat as necessary to produce the widest range of boost at you target.


If you reach 100% duty cycle then you need to change the refresh rate. Mine is set to 48Hz.. If its too low i suppose you could adjust it(refresh rate) to get to your boost target with around 50% duty cycle.

Repeat as necessary increasing your boost target followed by your minimum duty cycles in 2 psi increments until you reach your target boost pressure....


Next section
"After the process is finished, connect the 2 psi duty cycle point with the most natural line or curve that crosses through the measured 2 psi points. There are a couple problems that you want to spot right away. The first is that the curve or line should move up and to the right without flattening out or suddenly taking a big jump. If the curve does that, or you were not able to hit some parts of the boost target range, then this is probably not a good update rate to use for boost control. If the curve or line looks good, then save a copy of it with a file name that contains the update rate.
 
So Im not sure  is the minumim duty cycle supposed to have a curve?

Next is setting up the max-min boost solenoid duty cycle engine speed trim table

"If you are still reading, then you found a good open loop duty cycle curve, so open that file before performing the next step. Pick a spot in the middle of your boost control range and set the boost target table to it across the engine speed range. Do a pull in 3rd gear and datalog load and engine speed. If the boost stays nearly constant after the turbocharger fully spools to redline, then you don't need to do anything. If the boost drops or creeps upward, then we can make adjustments to the max-min boost solenoid duty cycle engine speed trim table to compensate. If the boost drops towards redline, then add some trim to the engine speed range where the boost drops. If the boost creeps upward towards redline, then remove some duty cycles in that range to help bring the boost down. If you are patient and carefully datalog each experiment and note the effect that your trims are having, you should be able to end up with the same or very nearly the same level of boost across the entire range from the point the turbocharger spools until redline. "


So basically this is how hydra says to setup OPEN loop boost control... (Tuning the PID is not necessary at this stage.) Which is a way I haven't tried yet. Im posting this before I try in case someone want to jump on the bandwagon with me.



 

Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #39 on: November 09, 2015, 01:05:41 AM »

It actually works... Oh my. I had it all wrong.  Grin

setting it up on open loop with the max at zero and just using the minimum Duty cycle I figured how the map works..

The minimum duty cycle is the duty cycle needed to hit that boost level.. in my case 36% to hit 10psi. then 38% to hit 11 psi. I need to go back and find out what 8psi is. All the other ones below 8 psi don't really matter because that's below wastegate pressure.

Ill post more later.
Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #40 on: November 09, 2015, 08:55:11 AM »


From Left to right. <1-2-3 pull><6th roll on downshift to 5th floored> <6th floored>


Here are my Min boost table. Max boost table still set at zero. Currently running in open loop boost control.



So I need to have the solenoid vent air at a 41.57% duty cycle to get 10 psi of boost. Any less and I just get wastegate. For 12psi I need 43.25ish and 44.71 makes 14 or so psi. Just to reiterate this map will look at what you have for a boost target and then use these to know how much air to vent depending on the duty cycle listed. So since my boost target is 10psi the only cell that really matters is the duty cycle under 10psi. As I changed that cell down I found at 41.5 all I got was wastegate and when I changed the 10psi cell to 43.0 I got 12 psi. Thus I just copied over 43.1 over to the 12psi cell. That way if I change my boost target to 12psi the hydra will know how much duty cycle (air) to vent to achieve a certain boost target.

So as an open boost control it works. Its getting late so I have to call it a night. I was slowly working on the Min-Max RPM tirm table to keep a boost level solid until redline. Here is what it is so far. Better but it needs to be steeper to correct for the boost drop off.




Missing photos from above
3rd gear pull


Manual (hallman MBC)

« Last Edit: November 09, 2015, 09:01:33 AM by Canyonfive » Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
Canyonfive
National Champion BSP
Fifth Gear
*****
Posts: 1661



WWW
« Reply #41 on: November 13, 2015, 10:38:12 PM »



Perfect 3rd gear pull... Decent 1-4.. which I didn't take all the way because I wasn't on the dry lakebed... lol.


It looks like I need a little more max duty cycle to vent enough air to get up to the boost I want. The air temp was rising and I haven't seen what kind of range I need to cover all the temps. I little overshoot getting into 4th so more pid work is needed, but its a lot better than anything before.

My boost threshold is 3200 rpms. P 100 I 10 D 10 Range 5-15psi. Max 15psi

Hopefully I can make some values that are close enough to be used as a default that gets people close enough to finish. Anyone else want to try this?
Logged

www.miataspeed.com My YouTube Channel
My BSP build thread
Ebay IC, Custome Koni 2812's by Guy Akney, FM Intake, FM DP, Hallman Pro Rx @ 10psi, GFB VTA BOV, Carbotech Brake Pads F/R, 15 X 10 Custom Wheels, Hooiser A7's,  Memory Fab/ lotus seats , Custom from sway bar , Muffler Delete, Hydra 2.7 EMS Launch Control Flat shift E85 , 550RC's, Fuel Lab fuel filter,
redmist
First Gear
*
Posts: 9


« Reply #42 on: August 30, 2016, 07:55:32 PM »

Just finished the FM2 build with EBC. Rock solid right out of the box. Smooth up to 12 psi and stays there. Maybe FM got the bugs worked out.
Logged
Pages: 1 2 [3]   Go Up
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!

Copyright 2007-2016, Eunos Communications LLC