Mazda-speed.com
July 07, 2016, 07:06:31 PM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Visit our Sponsors!
The Gallery
Mazda-speed.com Forum Rules
 
   Home   Help Login Register  

Be sure to visit our sponsors!

Pages: 1 [2] 3   Go Down
  Print  
Author Topic: Hydra 2.7 EBC Settings. Brainstorming, thoughts and help  (Read 14282 times)
0 Members and 3 Guests are viewing this topic.
lassi
Fourth Gear
****
Offline Offline

Posts: 256


« Reply #15 on: April 28, 2013, 11:24:27 AM »

Well done, sir, well done.  You should update your sig and maybe do a write-up for this mod (perhaps include all applicable settings to provide a strong starting point), as I don't think many have used an EBC under standalone ecu control.  Perhaps even FM might take interest and offer it as an option in the Big Enchilada...

Everybody, exept Hydra owners, has been using their standalones EBC for years... I`m pretty amazed that they finally made it work.
(That even FM gave up on it and sold MBC`s with an ECU which one of the selling features was just that EBC is just sad...)

Interested in what type solenoid you are using? Picture or link to spec of it?
Logged

05` Lava Orange - FM downpipe/exhaust - BEGi intake & intercooler - Adaptronic select - DW600 - LC1 - Xida cs 550\350 - 3.63 r&p- BNR turbo

13` CX-5 2.2D
bossman4
Keeps getting faster
Fifth Gear
*****
Offline Offline

Posts: 584


Donut man


« Reply #16 on: April 28, 2013, 01:24:55 PM »

It is the Ingersoll Rand Valve that FM sells  http://www.flyinmiata.com/index.php?deptid=&parentid=&stocknumber=07-26500%20%201990-97.

I don't have the car or the paper instruction located here (they are in Florida) , so I could not provide a link to the Ingersoll Rand web site.  Maybe Canyonfire has a link.....

BTW, I alerted Jeremy about Canyonfire's posts..... I was very close to breaking down and buying the MBC.......

I am anxious to get to Florida to tweak the settings.......
Logged

FM DP and Exhaust
FM no MAF intake and throttle body with GFB
3.63 gears installed by PuddyMod
2.7 Hydra ECU with Wideband (auto tuned) and electronic boost in progress
Deadbolt Turbo upgrade
550 cc injectors
8" x 2" x 28" Intercooler
New Boss Frog Double Max Roll Bar (Silver)
Boss Frog Arms
Modified  Windblocker
Oil Temp, Water Temp, Boost Prosport Gauges in Lo-Tek Pillar
Buck Diamond Grill
Clearwater Speakers
550 cc injectors
CG Seat Belt Lock
Thompson Automotive Oil Filter Relocation with filter wrap cooler
WR Engine Torque Dampener
Voodoo Knob
MiataRoadster Short Shifter
Grom audio with bluetooth
Canyonfive
Cone at me Bruh
Fifth Gear
*****
Offline Offline

Posts: 1651



WWW
« Reply #17 on: April 29, 2013, 05:26:18 PM »

Here is .75 turns left from factory. 6th gear pull p200 i0 d0



So left opens and right closes. I thought of a great analogy. Washing your car....

Think of this setting on the valve as how far you turn on the faucet. Then the duty cycles are like using your thumb to increase or decrease the pressure. If the valve is more closed you get a dribble that you cant really wash your car with. You can put you finger on it and it gets higher but you still cant control the water well with your finger because there is not enough volume (not enough water). Now turn up the valve all the way. That you can wash your car with but putting your finger over the stream is too much for your finger to hold. (too much water). We are looking for that sweet spot on the valve where no thumb is nice for getting the water to sheet off the car and lots of thumb is nice for getting stubborn dirt.

This setting controls the volume of air that goes through the valve. To little and there isnt enough volume to fully open the wastegate. Too much and the valve cant bleed enough air to raise boost above wastegate levels.

 

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
Cone at me Bruh
Fifth Gear
*****
Offline Offline

Posts: 1651



WWW
« Reply #18 on: April 30, 2013, 12:00:28 AM »




Success! I have finally gotten the ebc working on the hydra 2.7. Below is how I tuned my closed loop boost control for the hydra ems.

Step 1: Install your solenoid per FM's instructions with one exception. I prefer to use a boost signal source from the pipe i use for my VTA BOV which is right in front of the TB. DO NOT connect it to the Manifold. Brass 1/8" nipple to 1/4 " id pipe thread from the plumbing dept of home depot with a nut from the electric dept. 1/4" conduit nut (I found mine by the lamps parts section in a repair assorted package) The reason I prefer this location is to account for the increasing pressure drop across the intercooler at higher RPMs and the hydra takes the reading from the manifold anyway.



Step 2: Scratch a line indicating the factory position.



Step 3: Rotate the black area 3/4 turn counter clockwise. I used to small hex wrenches (which are also handy for removing pins from the hydra harness)

Step 4: Set your Boost Target table (just press f7 when in your 2.7 software) tuning maps>Boost Control> Boost Target. Remember if you put numbers in here that your car cannot physically reach you will never reach them and only stress your PID system. Mine is 9psi, but lower at 3400.



Step 5: Adjust your TPS boost trim table. Make 0% your boost target but negative. Press and hold shift on 0% then right arrow until all fields between 0% and 40% are selected. Now press Edit>interpolate rows. This is just a base. Once your Closed loop boost is setup you can adjust this to suit you driving preferences. Below is what mine is.



Step 6: Set your Maximum Boost Control Duty Cycle Map to 60% across all fields. Tuning Maps> Boost Control> Maximum Boost Control Duty Cycle. Highlight all fields. Press enter then type 60 then enter. Once your system is operational you can make it higher to account for variations in temperature and humidity.



Step 7: Set your overboost table. Tuning maps> Maximum Boost. Mine is set for 13psi at which point all ignition and fuel cycles are cut. (Rounds down to 12.9) This is your safety if your settings are way off. If you lose power to your FM boost solenoid then it will only flow wastegate boost.



Step 8: Set your PID boost control settings as follows. settings>Boost Control  Boost control Threshold 2500 rpm, P-term 30, I-term 0, D-term 5, Boost target scale psi 0, Boost target scale range 15psi. If your running over 15psi then adjust that range higher



Step 9: Set your datalogging parameters. Slide the bar to 8 channels then type in the fields until you find what you want. I logged RPM's Load (its more accurate than boost but I log that too), Throttle, Boost PID intergration Sum, Base Boost Target, Boost, Boost Solinoid Control Value, Afr. A note: if you cant log then one of your parameter is typed wrong or not selected correctly.

Step 10: Find an appropriate place to test. I used a flat straight long road with a speed limit over 50 and LOTS of places to pull over. A dyno would be safer and as with all hydra tuning having someone you can trust to drive the car while you tune speeds the process up. That said working alone it took about an hour. I drove there with my MBC hooked up and popped the hoses over once I got there that way if I ever want to switch back I just plumb it back in.

DO NOT TEST IF YOU DO NOT HAVE SAFE AFR's AND TIMING AT THE BOOST LEVELS YOU ARE TRYING TO RUN!!

Step 11: Tune your PID. Below are my pulls and my changes. 3rd gear pulls 100% throttle until redline. When I started I just did the pull until I felt the solenoid open up and the subsequent boost drop. If the P is set too high it will oscillate. 

Min 0 Max 60% P=30 I=0 D=5 << which should be your starting settings.



30 was about right but it was overshooting the boost target to 11.4 psi. Adding P will slow the response and lower the overshoot.
Next is Min 0 Max 60% P=45 I=0 D=5



45 was very close and only over shooting to about 10.4. Close enough for now. To reduce the errors over time I is needed. Using I will stabilize the boost and reduce the small errors towards zero. When adding I you will also be decreasing the effectiveness of P.
Next is Min 0 Max 60% P=45 I=5 D=5



Now I have Control over the small errors to redline but because of the addition of I the system is over shooting again as it has reduced the effectiveness of P. So I added a little P.
Next is Min 0 Max 60% P=50 I=5 D=5



This added p cut the overshoot back down and lead to a nice boost curve. Not amazing but working! Once i saw that the Duty Cycle was now not decreasing I saw that the system was stable and that I could increase the Max Duty Cycle.
Next is Min 0 Max 99% P=50 I=5 D=5



This should be a sufficient base to get it working. There is ALOT more tuning to be done in different temperatures and gears. Lets work together to find those and get the most out of the EBC. As people add posts after this one read on as there are likely many refinements to be had. I will post as I try different settings and trims. If anyone wants the logs or anything else feel free to PM me.

 dancenana
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
Cone at me Bruh
Fifth Gear
*****
Offline Offline

Posts: 1651



WWW
« Reply #19 on: April 30, 2013, 04:30:46 AM »

The setting worked in the cool of the night. maybe 85 during the day and 60's at night. Ideally i would add a psi in 1st and 2nd, 0 in 3rd, then lower the target 1 psi in 4th and 5th and 2 in 6th. Tried it tonight but it diddnt seem to lower the target in the upper gears. More on it tomorrow.
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
Cone at me Bruh
Fifth Gear
*****
Offline Offline

Posts: 1651



WWW
« Reply #20 on: May 02, 2013, 12:16:34 AM »

So i changed my gear trim to +2,+1,0,-1,-1,-1 and my tps from -14psi at 0tps and 6.7%, then interpolating to 9psi @ 30% TPS. If you want it more NA like then interpolate to 100% TPS. The reason for the -14psi is I cruise at 10inHG so its operating in full open 0% duty when im just cracking the throttle so it runs a little cooler on the freeway.
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,
bossman4
Keeps getting faster
Fifth Gear
*****
Offline Offline

Posts: 584


Donut man


« Reply #21 on: May 02, 2013, 01:38:42 AM »

Heading to Florida in 2 weeks, so I can play with mine.

Good work.  Jeremy is looking at another solenoid valve, but with your work, not sure it is worth the hassle for Jeremy.   
Logged

FM DP and Exhaust
FM no MAF intake and throttle body with GFB
3.63 gears installed by PuddyMod
2.7 Hydra ECU with Wideband (auto tuned) and electronic boost in progress
Deadbolt Turbo upgrade
550 cc injectors
8" x 2" x 28" Intercooler
New Boss Frog Double Max Roll Bar (Silver)
Boss Frog Arms
Modified  Windblocker
Oil Temp, Water Temp, Boost Prosport Gauges in Lo-Tek Pillar
Buck Diamond Grill
Clearwater Speakers
550 cc injectors
CG Seat Belt Lock
Thompson Automotive Oil Filter Relocation with filter wrap cooler
WR Engine Torque Dampener
Voodoo Knob
MiataRoadster Short Shifter
Grom audio with bluetooth
Canyonfive
Cone at me Bruh
Fifth Gear
*****
Offline Offline

Posts: 1651



WWW
« Reply #22 on: May 12, 2013, 06:15:50 PM »

I adjusted my valve because for my car 3/4 turn might not be quite enough. If anyone else does that the pid needs to be retuned.
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,
schmoo
MSM > Me
Fifth Gear
*****
Offline Offline

Posts: 2274



WWW
« Reply #23 on: May 15, 2013, 05:36:14 PM »

Awesome.  afro
Logged

Driver-Limited Canadian 2004 MSM Track Toy in Velocity Red | FM Big Enchilada w/Hydra 2.7, FM AFCO Coilovers, 15x9 6UL Gen2 & Advanti Storm, FM Anti-Roll Bars, Carbotech Pads, FM SS Lines, FM Racing Rad, FM Oil Cooler, Momo Lesmo One Seat, Schroth Profi 2 Harness, HDHCDD M2 Hardtop with Harness Bar, AiM MXL Pro with Smartycam HD GP, Gutted Interior
[img width= height= alt=" border="0]http://www.uncommonpear.com/wp-content/uploads/avatars-signatures/IMG_5971-2-2.jpg[/img]
schmoo
MSM > Me
Fifth Gear
*****
Offline Offline

Posts: 2274



WWW
« Reply #24 on: June 20, 2014, 05:46:13 PM »

Guys,

Any progress? I'm sick of MBC and want to go to EBC so that I don't have to make adjustments between cool morning sessions and hot, afternoon, heat-soaked sessions.

Jeremy noted a new solenoid, but he's only got working in open loop.

How are you guys fairing?
Logged

Driver-Limited Canadian 2004 MSM Track Toy in Velocity Red | FM Big Enchilada w/Hydra 2.7, FM AFCO Coilovers, 15x9 6UL Gen2 & Advanti Storm, FM Anti-Roll Bars, Carbotech Pads, FM SS Lines, FM Racing Rad, FM Oil Cooler, Momo Lesmo One Seat, Schroth Profi 2 Harness, HDHCDD M2 Hardtop with Harness Bar, AiM MXL Pro with Smartycam HD GP, Gutted Interior
[img width= height= alt=" border="0]http://www.uncommonpear.com/wp-content/uploads/avatars-signatures/IMG_5971-2-2.jpg[/img]
Canyonfive
Cone at me Bruh
Fifth Gear
*****
Offline Offline

Posts: 1651



WWW
« Reply #25 on: June 20, 2014, 10:39:31 PM »

I havent had time to work on it. I should MAKE time as it would benefit me in autocross. I have the new solenoid but I havent even set it up in open loop.
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
*
Offline Offline

Posts: 9


« Reply #26 on: May 07, 2015, 03:13:26 AM »

Canyon and company,
How are your EBC settings holding up?

I suspect you're not getting steady boost numbers as the days got colder and warmer?

So I've had the Perrin EBCS Pro for about 2 years now.  http://perrinperformance.com/i-14286955-ebcs-pro-universal-electronic-boost-control-solenoid.html

My results have been "no change" from the FM supplied EBCS.  I spent the last month or so (since it's been getting warm) trying to dial it in, high P, low P, high D, low D, 32hz, 256hz, 64hz, changing thresholds, changing min/max solenoid controls, etc.  The results have been identical to anything anyone has tried with the Ingersol valve.  Boost control simply doesn't work well outside a pretty narrow min/max DC chart which doesn't compensate well for changing conditions.

There is a minority report though:

Most of my testing was done on the freeway, in 6th gear, rolling on the throttle to full throttle.  In that situation, the EBC overshoots everytime except when max DC is set low enough to effectively make it open loop.  The "minority report" is this: when still driving down the freeway, I did a 6-4 rev matching downshift before punching the throttle to see what would happen on the logs.  The results were very surprising - a nearly perfect hit with almost no overshoot, and steady boost until I let off the throttle, all while staying well clear of the min/max DC settings. Exactly what the EBC is supposed to do in that situation.

This made me curious, so I tested farther.

With P I D settings set to 2-0-5, and frequency at 64hz, I did a 6th gear freeway roll-on.  The resulting PID Integration sum and PID control % really laid out what was happening in a "clear as day" fashion. The PID control is incorrectly designed to continue to increase the duty cycle until boost exceeds the boost target.

The entire PID calculation is self integrating.

For those without a calculus background, what that means is that the result of each PID calculation is ADDED to the previously calculated result.  The duty cycle of the EBC is never reduced until the boost exceeds the target boost. What is supposed to happen?  Each new PID calculation is supposed to REPLACE the previous PID calculation.

Here is what I witnessed in my 2-0-5 example: Upon application of full throttle, the PID calculation begins at the minimum DC as defined by the EBC Min Duty Cycle table.  It then adds duty cycle slowly, which resulted in wastegate boost pressure, or slightly higher, until the total duty cycle hit about 40%.  At that point, the boost immediately begins to climb, while the EBC duty cycle continues to climb.  Pretty quickly, the EBC passes 75% DC, and by this point, Boost pressure has crossed the target boost line of 12psi.  Only when the boost pressure exceeded the target did the EBC Duty cycles begin to decrease.  By the time the duty cycles decreased enough to slow the increasing boost pressure, the overboost ignition cut was hitting at 15psi.

What *should* have happened in this scenario, was an instantaneous increase in DC for the EBC, followed by an increase in boost pressure.  As the boost pressure increased, the DC of the solenoid should have quickly decreased, long before ever reaching target boost. This represents a PID controller whose P value and total DC decreases as the error (error: difference between boost target and boost pressure) decreases.

Unfortunately, as the boost pressure nears the target boost, the duty cycle of the EBCS does not decrease, is simply increases more slowly as the error is reduced.

The PID calculation is supposed to calculate the result of the P, I, and D values, and then replace the results of the previous PID calculation - instead, it ADDs those two together.

The result is a controller which is not a P-I-D ("Pee Eye Dee") controller, but rather a I-I^2-D ("Eye Eye-Squared Dee") controller.  That is to say that not only does our EBC NOT have "P control" (The most important part of the PID equation), but it provides an "I" control wind-up double whammy.  What we thought of as the P control exhibits "Proportional windup" - which isn't actually a real-thing (It's really integral windup), and our I control experiences "Integral Windup Squared". (The I term is supposed to continue adding to itself, but because both the I and PID terms add to themselves, the I term both adds to itself, and then adds to the sum of it's previous self additions.)

The inherently stabilizing effect of the D term means that it generally doesn't add up, but even at full go, it will never be powerful enough to overcome the wrongly-integrating PID sum which has built up over time.

When I hit the 6-4 rev-matching downshift on the highway, I didn't give the system any "wind-up" time; I effectively allowed the P term to do what it's supposed to do, and the D term properly arrested it from overshooting.

When properly executed, there is never a need for "minimum and maximum Solenoid DC".  Those were put there as band-aids to make a broken system seem fixable, making wind-up less debilitating.

A correct PID system should probably have the following:
1 - A 2D table with "normal" values - or expected EBCS Duty cycle percentages for defined boost targets
2 - Instead of a minimum duty cycle table, a solenoid start, which is the lower threshold for boost at which point the EBC starts accepting PID inputs (for a boost target of 12psi, you might want the EBC to stay at 100% DC until, say 4.5psi)

A P-value is calculated based on boost error versus normal value:
  You might define your "normal" for a boost target of 12psi to be 53% duty cycle.
  Boost error is calculated as boost target minus boost pressure.
  When boost is low (perhaps 5 psi) the controller might be throwing 98% duty cycle at the EBCS.
  As boost approaches 12 psi, your EBCS Duty cycle appoaches 53%.
  If atmospheric conditions dicatate that you only needed 50% DC to make 12 psi of boost, your EBCS slightly overshoots your target and slowly moves back towards the target before settling above your target.
  If atmospheric conditions dictate that you needed more DC, (perhaps 60%), then your EBCS undershoots your boost target, coming to rest below your desired boost.

The I-Value is calculated based on boost error over time, and does not rely on "normal" value:
  While boost is below the boost target, the "I" or "Integral" term, Integrates - that is to say it increases over time.  During spool up, this "integral windup" can have hugely negative side effects in theory, but in practice, the P term actually compensates to remove a great portion of wind-up.
  The intent of the I term is to eliminate error from overshooting/undershooting the normal value.  If the "normal" term is too high, the P value is prone to overshooting.  The I term is what pulls this overshoot back toward the target boost.  The opposite is true if your normal value is too low, the I term pulls the undershoot up towards your target boost.

The I value and the P value have a relationship which is difficult to explain in words, but mathematically simple.  In the case where the "normal" value is too low to reach the boost target in a given atmospheric condition (such as an extremely hot day), the P value will quickly get the EBCS Duty cycle close to the target.  Once at the target, the I value, which has been integrating since PID control was activated begins to add to the EBCS duty cycle, effectively lowering the error.  As the I value decreases the error, the P value provides less input towards the target.  What is important to note is that the change in the I value towards the target will always be more significant than the change in the P value away from the target.  Eventually, the the I value builds until the P-correction becomes zero.  It's hard to explain, but I'll show it in a chart.

First, what a boost pressure versus boost target might look like for a "normal" set a little too low.


And second, what the I and P correction values would look like (on top of our "normal" value of +53) to get to the target boost.

Note that since the EBCS can never exceed 100% Duty cycle, any corrections to more than 100% will simply max out at 100%

Ideally, you want as high an I value as you can get while not seeing noticeable windup during your longest spool ups (6th gear roll on, high altitude, hot weather), and then adjust your P value to achieve the quickest non-overshoot in cold weather, at low altitude, on a downshift. In a perfect world, if calibrated this way, you would never have to worry about the D term - but the stabilizing effect of the D term lets us get away with a pretty decent margin of error, preventing gross overshoots from oversetting our P value, and stabilizing rapid oscillations.

Using the knowledge I have gained through logging and thinking things through, I decided to try my own hand at Hydra EBCS.  I changed my EBCS output from "boost control" to "3D PWM".  For my PWM chart, I used "boost target, final" for the X axis, which calculates all the fancy boost numbers you put in for gear based trim, tps based trim, etc., to get your final boost target.  I then used "boost pressure" for the Y axis.  Wherever I landed on the 3d PWM gave me the difference between boost target and boost pressure.  I then guessed a "Normal" value for the various boost levels represented on the 3d PWM target boost axis.  I put those "normal" numbers in the cells which corresponded with identical boost target and boost pressure.  So a cell which shows a boost target of 12psi, and a boost pressure of 12psi, received my "normal" for 12psi, which I guessed to be about 67% Duty cycle.

From there, I decided on a P value, and through the magic of excel, I determined how much DC to add or subtract from the 67% based on how far away from my target of 12psi I was.  The higher the measured boost, the lower the DC, and vice versa.  At lower throttle levels, I have lower boost targets (TPS Based boost), and therefore my lower normal number is placed in the appropriate cell, and calculations are determined from there.

What I ended up with was a crude "P" controller, which compared my target to my actual to get an error, and that error was added to my "normal" to get proportional control.  It's nowhere near as good as a true PID controller, but it's a zillion times better than an I-I^2-D controller.  Until Hydra puts a real PID function into the Nemesis, I'll have to resort to my crude P controller.  It works...well enough to move onto other things for a little while...
« Last Edit: May 07, 2015, 03:22:46 AM by fooger03 » Logged
fooger03
First Gear
*
Offline Offline

Posts: 9


« Reply #27 on: May 15, 2015, 07:49:53 PM »

After a little bit of playing around, here's a datalog of a 3-gear pull.  Since my 3D PWM map uses "boost target, final", it references TPS-Based boost, and as you can see here, it also references boost-by-gear.



This is what a P-Controller looks like.  As you can see, it's a hell of a lot better than anything Hydra has available, but you can definitely see where it would benefit both from a D-term (overshoot arrest) and an I term (correction from a resting position towards the boost target position)

As you can see, the boost comes to a resting point below my target in each gear.  To solve this, I could increase my "normals" for each gear, which would raise the resting boost position.  This would work excellent for both the 8 and 10 psi targets of 1st and 2nd gear, but for 3rd gear and up you can see the potential problem with boost overshoot to boost cut.  Additionally, as the weather gets colder (currently 85*), the resting boost will tend to increase anyways because of the atmospheric issues.  The atmospheric differences is why a working "I" term is important, as it will help correct them.

The problem for highway cruising and throttle roll on goes completely away as far as boost overshoot, because there is nothing to "wind up", it's simply proportional control, and the boost builds slowly enough that the P term isn't going to overshoot either.

If anyone else would like to experiment, I can send out my map file (for reference on what to do with the BA05 output, and what the 3D PWM 11 table looks like) and the excel spreadsheet I used to calculate values for the PWM table.  (Insert your anticipated "normal" values for EBC Duty cycle for each boost pressure, tell it what P value to use, and it spits out your table values)
« Last Edit: May 15, 2015, 07:56:26 PM by fooger03 » Logged
fooger03
First Gear
*
Offline Offline

Posts: 9


« Reply #28 on: May 18, 2015, 09:41:46 PM »

More progress made in the last 24 hours.  While looking at a log I realized that even when the Hydra's boost control maps are not used to control the EBC, it still calculates the EBCS duty cycle based on those maps.  This means that I can use the Hydra's "Calculated boost solenoid duty cycle" as an input for a 2d or 3d map.

We already know that I have an apparently successful "P" control.

We also know that Hydra's EBC contol functions as a "I-I^2-D" control.  If I zero out the second term of Hydra's control, what I'm effectively left with is "I-D" control.

Since I can't seem to get the Hydra to do rudimentary math functions on-the-fly, the only way I know of to do them is with a 3D PWM.  On the first axis, I set up my new 3D PWM map to accept the full output of my P control PWM.  On the second axis, I selected the "EBC Duty Cycle" (I-D control) as an input.  Since I only want the I-D control to be able to change my final duty cycle by 20%, I added only 20% of the I-D output to the P output.

Example: If the P term is calling for 45% duty cycle, and the I-D term is calling for 50% duty cycle, the math is 45+(.2*50)=55

Then I went into the Hydra's native EBC maps, set minimum and maximum duty cycle to 0% / 100% at all times.  (If you set maximum to 80%, the term will still "wind-up" to 100%, and when it needs to come down again, it will need to "unwind" from 100 to 80% before you begin to see this term decrease)  Hydra's "P" term is actually our I term, which I set to 25 currently.  Hydra's "I" term is actually an "I-Squared" term, which doesn't belong in a PID control setup - set this to zero.  Finally, Hydra's "D" term is practically a "D" term - unfortunately this D term will have no control over our "P" term.  It is only able to back off of the I-Term, so it's effect will be much smaller than we want it to be.  I maxed this out at 225.

The results:

Smooth pull from 6th gear highway throttle roll on.
6-4 highway downshift hits boost hard and fast.  Can overshoot high by a PSI because of the lack of a solid D term.  Reduced normal fixes the overshoot at the cost of a PSI of boost.  Working to compensate by reducing the proportional correction a bit, which should slow the rise in boost pressure a little bit.

The 1,2,3 pull from a stop is having mixed results.  2nd and 3rd gear hit hard and fast; first gear is causing me problems.

Hydra's EBC does some other funny business that I haven't pinpointed yet.  Usually when you get into boost, the EBC starts at your minimum duty cycle (0% in this case) and begins control from there.  The problem that I've been having is that in first gear, the EBC begins control at 100%.  This means that before I even start building boost, the native EBC control is throwing an extra 20% (100%*.2=20%) DC into my PWM Control equation.

Working with the engine speed trim, I reduced the DC as far as possible (-50%) up to 2550 RPM.  I then set the native EBC control to begin working at 2450 RPM.  This succesfully reduced the "lead in" on a first gear pull to an additional 10% in my final PWM equation, but that's still 10% more DC than I should have as I try to get to my 1st gear boost target of 8psi. It overshoots and doesn't return fast enough to help before I'm shifting into 2nd.  Ideally, I would like to tell the Native PID controller to begin working everything at 50% DC and go up/down from there.  I could effectively reduce my normals all by 10% to compensate, and the "D" term would have more space to work with to arrest overshoot.  Not sure how to make that happen though.

Here are some logs to leave you with.

6th Gear Roll on
Lines From top to bottom:
1. Final PWM EBC Control value (Line 2 + 20% of Line 5)
2. "P value" - proportional control + "Normal"
3. Boost target
4. Measured Boost
5. Hydra's EBC Output being used as "I-D" control


6-4 Downshift
1. Final PWM EBC Control value (Line 2 + 20% of Line 5)
2. "P value" - proportional control + "Normal"
3. Boost target - with boost target reduction approaching redline.
4. Measured Boost
5. Hydra's EBC Output being used as "I-D" control


1-2-3 Pull (With missed 3rd gear shift)
White Line - Hydra's EBC Control being used as "I-D" control - note the problem in first gear
Yellow Line - Final EBC PWM control (Yellow line affects this by an increase of up to 20%)
Red Line - Target Boost
Blue Line - Measured Boost
If I didn't get a color correct, I'm colorblind, so screw you.

Logged
fooger03
First Gear
*
Offline Offline

Posts: 9


« Reply #29 on: May 28, 2015, 02:32:50 PM »

Note to self (because I can't work on it at the moment, and I need a convenient place to store ideas):
1. increase I-D weight from 20% to 40%.
2. For low RPMs, map the curve of boost available vs. RPM, index boost target to RPM in the boost target table.
Logged
Pages: 1 [2] 3   Go Up
  Print  
 
Jump to:  

Be sure to visit our sponsors!

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.141 seconds with 23 queries.
Copyright © 2007-2016, Eunos Communications LLC