Evap canister

Testing and development of Megasquirt 3

Moderators: jsmcortina, muythaibxr

jsmcortina
Site Admin
Posts: 39618
Joined: Mon May 03, 2004 1:34 am
Location: Birmingham, UK
Contact:

Evap canister

Post by jsmcortina »

Any control strategy ideas?

James
I can repair or upgrade Megasquirts in UK. http://www.jamesmurrayengineering.co.uk

My Success story: http://www.msextra.com/forums/viewtopic ... 04&t=34277
MSEXTRA documentation at: http://www.msextra.com/doc/index.html
New users, please read the "Forum Help Page".
elaw
Super MS/Extra'er
Posts: 2926
Joined: Fri Oct 16, 2009 6:20 am
Location: Wilmington, MA

Re: Evap canister

Post by elaw »

I'm using a generic PWM for that right now with MAP on the Y axis and it works fairly well.

Two things I can think of that would be helpful are a CLT > X threshold, and to have it not enable until MAP has been between two limits for a certain amount of time. The timeframe would be short, like 1 second (0-10 in increments of 0.1 would cover it). The ability to disable at idle would be nice too, so maybe link it to CL idle being engaged, or TPS < a preset number.
Eric Law
1990 Audi 80 quattro with AAN turbo engine: happily running on MS3+MS3X
2012 Audi A4 quattro, desperately in need of tweaking

Be alert! America needs more lerts.
Reverant
Super MS/Extra'er
Posts: 1233
Joined: Sat Apr 15, 2006 12:39 am
Location: Athens, Greece

Re: Evap canister

Post by Reverant »

Here is what I currently do through a custom second processor.

My car has a barometric pressure sensor, fuel tank pressure sensor, a charcoal canister (to store the vapors when the engine is not running), a purge control solenoid (opens to let the vapors from the canister to the intake manifold), and a canister drain cut valve (opens to replenish the tank/vapor lines with fresh air - negative pressure is bad news for a fuel tank),

The system monitros the fuel tank pressure. When excessive, it opens the purge control solenoid until there is about 50kPa vacuum in the tank and while the fuelload through the map is less than 40kPa (so basically only during idle or very low load or decel). If the pressure doesn't drop, there is a purge control solenoid failure.

When 50kPa is reached, the purge solenoid is closed.

Then the fuel tank pressure is monitored for 60 seconds - if the pressure remains the same for 60 seconds (~50kPa), then the system is properly sealed and no faults are found. Otherwise, there is a lead somewhere.

After that, the canister drain cut valve is opened to let fresh air into the system. It closes after the fuel tank pressure is atmospheric (same as read from the barometric pressure sensor). If that doesn't happen, then the canister drain cut valve is stuck closed or there is a cloged filter.

That's the strategy that I use, and works well so far.
The man behind MS Labs
2005 Audi A3 2.0L TFSI DSG AWD - Extreme MS3
2002 Mazda Miata 1.8 6sp - Enhanced MS3 1.4.0, sequential injection, sequential ignition, big turbo, lots of boost
prof315
Super MS/Extra'er
Posts: 3786
Joined: Sun Jan 18, 2009 3:13 am
Location: Melbourne, FL

Re: Evap canister

Post by prof315 »

elaw wrote:I'm using a generic PWM for that right now with MAP on the Y axis and it works fairly well.

Two things I can think of that would be helpful are a CLT > X threshold, and to have it not enable until MAP has been between two limits for a certain amount of time. The timeframe would be short, like 1 second (0-10 in increments of 0.1 would cover it). The ability to disable at idle would be nice too, so maybe link it to CL idle being engaged, or TPS < a preset number.
This sounds about right for basic Purge Control to me. I've been using generic PWM as well for a couple of years.
Linfert Performance/321 Motorsports
SCCA 2019 SM National Champion Crew Chief
SCCA 2023 FP National Champion Tuner/electrical engineer
100s of MS systems built installed and tuned
Support the developers!
elaw
Super MS/Extra'er
Posts: 2926
Joined: Fri Oct 16, 2009 6:20 am
Location: Wilmington, MA

Re: Evap canister

Post by elaw »

I don't know if it helps any but the image below shows the settings I'm currently using. My valve operates "backwards": it closes when energized. So higher values in the table mean less evap flow.
Eric Law
1990 Audi 80 quattro with AAN turbo engine: happily running on MS3+MS3X
2012 Audi A4 quattro, desperately in need of tweaking

Be alert! America needs more lerts.
jsmcortina
Site Admin
Posts: 39618
Joined: Mon May 03, 2004 1:34 am
Location: Birmingham, UK
Contact:

Re: Evap canister

Post by jsmcortina »

The latter table is kind of what I was expecting. The control that Reverent describes is way more complicated than I had envisioned - is that what the OEM does? Do many OEMs have two valves and pressure monitoring?

James
I can repair or upgrade Megasquirts in UK. http://www.jamesmurrayengineering.co.uk

My Success story: http://www.msextra.com/forums/viewtopic ... 04&t=34277
MSEXTRA documentation at: http://www.msextra.com/doc/index.html
New users, please read the "Forum Help Page".
prof315
Super MS/Extra'er
Posts: 3786
Joined: Sun Jan 18, 2009 3:13 am
Location: Melbourne, FL

Re: Evap canister

Post by prof315 »

jsmcortina wrote:The latter table is kind of what I was expecting. The control that Reverent describes is way more complicated than I had envisioned - is that what the OEM does? Do many OEMs have two valves and pressure monitoring?

James
Most ( if not all I'm hedging a bit here) OBD2 cars sold in the US have what is known as enhanced evaporative emissions. While the exact scheme and number of valves varies, enhanced evap does work pretty much as Reverant describes and the system includes a fuel tank pressure sensor calibrated for inches H2O. Enhanced Evap problems are the most common reason for a check engine light and its every techs most hated system to work on.

A basic control scheme such as Eric has described would be great but beyond that at most maybe the option for using a tank pressure sensor to avoid putting excessive vacuum on the fuel tank should be fine.
Linfert Performance/321 Motorsports
SCCA 2019 SM National Champion Crew Chief
SCCA 2023 FP National Champion Tuner/electrical engineer
100s of MS systems built installed and tuned
Support the developers!
elaw
Super MS/Extra'er
Posts: 2926
Joined: Fri Oct 16, 2009 6:20 am
Location: Wilmington, MA

Re: Evap canister

Post by elaw »

^^ What he said! :)

I think there's a requirement in OBDII that the ECU somehow be able to verify that the evap system is working properly. I think on many older cars (like my '97 Saab) the ECU just looked for the EGO sensor to show the mixture had become richer when the valve is first opened. But my wife's '99 Saab had a system like Reverant described, where the ECU is actually able to activate some valves to apply a small amount of vacuum to the tank, then activate a different combination of valves to seal off the tank, and see of the tank holds vacuum via a pressure sensor.

For me, it definitely would not be worth the trouble. I'm not trying to meet OBDII regulations, just have a basic functional system that will capture fumes from the tank and burn them in the engine.

Reverant:
Does your system really pull 50 kPa vacuum on the tank? That's half an atmosphere... I'd exect on many cars that would cause the tank to collapse! I would have thought the number would be more like 5-10 kPa.
Eric Law
1990 Audi 80 quattro with AAN turbo engine: happily running on MS3+MS3X
2012 Audi A4 quattro, desperately in need of tweaking

Be alert! America needs more lerts.
Reverant
Super MS/Extra'er
Posts: 1233
Joined: Sat Apr 15, 2006 12:39 am
Location: Athens, Greece

Re: Evap canister

Post by Reverant »

jsmcortina wrote:The latter table is kind of what I was expecting. The control that Reverent describes is way more complicated than I had envisioned - is that what the OEM does? Do many OEMs have two valves and pressure monitoring?

James
The strategy I described above is the OEM procedure on my 2002 Mazda Miata. Every valve and sensor I described is OEM on my car. The ECU also has access to the fuel tank level sensor, I imagine it doesn't try to do an evap if the tank has been refilled recently.

Btw one of the most common reasons for a CEL on this car: not tightening the gas cap after refueling.
The man behind MS Labs
2005 Audi A3 2.0L TFSI DSG AWD - Extreme MS3
2002 Mazda Miata 1.8 6sp - Enhanced MS3 1.4.0, sequential injection, sequential ignition, big turbo, lots of boost
elaw
Super MS/Extra'er
Posts: 2926
Joined: Fri Oct 16, 2009 6:20 am
Location: Wilmington, MA

Re: Evap canister

Post by elaw »

I've been fooling around with my current setup and thinking about this a little more, here are a few random thoughts:

1) More resolution on the PWM output could be helpful. At idle, changing the PWM output value for my evap valve from 90% to 89% gives a 6% change in EGO correction. It would be nice to be able to set the PWM in smaller increments. If the value is being stored in an 8-bit number, even 0.5% increments would help and would fit in 8 bits.

2) This I think is important: disable evap purge during fuel cutoff! I've implemented approximately the same thing using table settings but it would be nice to have a positive way of knowing the valve would be closed when fuel is not being injected. I think if it were not, either the engine would be "running" incredibly lean on the vapors, or they'd go out the exhaust unburned.

3) A really nice feature IMHO although it would be hard to implement, would be to have the valve close quickly, but open slowly. For example, you'd have a "desired" and an "actual" PWM value. If desired < actual, you immediately set actual = desired. But if desired > actual, you'd increment the actual slowly, say 1% every 50 milliseconds, until actual = desired. This would allow EGO correction time to "catch up" with the effect of the valve opening.
Eric Law
1990 Audi 80 quattro with AAN turbo engine: happily running on MS3+MS3X
2012 Audi A4 quattro, desperately in need of tweaking

Be alert! America needs more lerts.
Joe Perez
Experienced MS/Extra'er
Posts: 181
Joined: Mon Dec 03, 2007 2:19 pm
Location: San Diego, CA
Contact:

Re: Evap canister

Post by Joe Perez »

For what it's worth, I'll just throw my 2 farthings into the ring.

Being a nice, eco-conscious fellow, I implemented an extremely primitive evap control on my 1990 Miata (which lacks a fuel tank pressure sensor or a drain valve) simply by connecting the purge valve to an output and commanding it to open whenever TPS > 35% with hysteresis = 5 and CLT > 120°F.

Seems to work just fine. I haven't experienced any odd behaviors during the transition from off to on or vise-versa, the fuel tank hasn't imploded yet, etc. Though now that I think about it, I might change it from TPS > 35 to MAP > 80. Having the tank spontaneously assume a more compact geometry while driving might cause the entropy of the vehicle to increase dramatically. (No turbo on this car, fortunately.)
piledriver
Super MS/Extra'er
Posts: 1681
Joined: Tue Oct 27, 2009 6:24 am
Location: Van Alstyne, Texas

Re: Evap canister

Post by piledriver »

I just use the ported vacuum advance line on my TB to suck on the canister.
The canisters have a fresh air inlet, so the canister gets purged most of the time.
This effectively shuts it off at idle and WOT automagically, and the tank never sees vacuum.(vented to atm through canister)

That is essentially the standard setup used by most manufacturers from day one of evap setups until ODB2 came along.
(the vac advance port frequently opened a valve to manifold vac, but since the vac can isn't there with a crank trigger, direct works)

The only thing GOOD about the complex ODB2 setups is that you really want to prevent sucking fresh air into your fuel tank for obvious reasons...
Working properly with a sealed tank, the fuel vapor will displace all air, so ~zero explosion hazard.
Same is mostly true with a vented tank and NO evap system.

I do like the idea of blocking the feed during fuel cut, but the flow and % of the time that's actually active is pretty insignificant,
plus, if using ported vacuum, the flow would already be disabled if the throttle is closed.

I'm not sure the tiny debateable improvement would be worth the effort except for geek points.
Always doing things the hard way, MS2 sequential w/ v1.01 mainboard, LS2 coils. 80 mile/day commuter status.
Joe Perez
Experienced MS/Extra'er
Posts: 181
Joined: Mon Dec 03, 2007 2:19 pm
Location: San Diego, CA
Contact:

Re: Evap canister

Post by Joe Perez »

piledriver wrote:I'm not sure the tiny debateable improvement would be worth the effort except for geek points.
Haha. I'm definitely at the point where the car is running sufficiently well that there's not much left for me to do except score geek point with it. :mrgreen:

I can't speak to all engines, but on the Mazda B6/BP series the vacuum port for the charcoal canister is definitely on the "inboard" side of the throttle body, and exposed to full manifold vacuum at all times. Back in the MS1 era, we used to disconnect the solenoid from the canister and use it as an idle-up valve for the aircon system. But now that I look at it more closely, it does seem that the pre OBD2 canister has a third port which may well be at atmospheric vent- I'll trace out the hose on it this weekend. So perhaps I am not exposing my fuel tank to full vacuum after all.

As to figuring out what the OEM control system looked like, Mazda's documentation is annoyingly opaque on such matters with the earlier cars. The '90-'93 Miata manual simply states that the purge valve is operational when the following conditions are met:

1: After warmup
2: In gear
3: Accelerator pedal depressed (idle switch open) and
4: Oxygen sensor functioning normally (which I interpret to mean that the ECU is in closed-loop mode)

Nothing about whether the valve is closed when at WOT or in open-loop. (I wish I'd have taken the time to observe this signal when I had the stock ECU in place.)
elaw
Super MS/Extra'er
Posts: 2926
Joined: Fri Oct 16, 2009 6:20 am
Location: Wilmington, MA

Re: Evap canister

Post by elaw »

As far as I know, all evap canisters have 3 "ports", although the third port sometimes just consists of perforations on the bottom.

The 3 ports are "fuel tank", "purge", and "atmosphere".

Vapors, which really are an unknown combination of hydrocarbons and air, enter the tank port and flow to the atmosphere port, with the hydrocarbons getting absorbed by the carbon and any air exiting to atmosphere.

When vacuum is applied to the purge port (from the engine), air flows *into* the atmosphere port, picks up hydrocarbons stored in the charcoal (if any), and then flows to the engine. Depending on how much hydrocarbon it picks up, the air flowing into the engine can make it run leaner or richer... that's part of what makes this so challenging!

And of course both processes can be happening at the same time... vapors could be flowing from the tank, and get picked up by the airflow going through the canister and into the engine.

With a properly-functioning canister, the atmospheric port will prevent vacuum from being applied to the fuel tank. But you should never allow boost to be applied to the canister, as that air could pick up fuel vapors as it goes through the charcoal, and you'd have a nasty mixture coming out the atmospheric port.
Eric Law
1990 Audi 80 quattro with AAN turbo engine: happily running on MS3+MS3X
2012 Audi A4 quattro, desperately in need of tweaking

Be alert! America needs more lerts.
piledriver
Super MS/Extra'er
Posts: 1681
Joined: Tue Oct 27, 2009 6:24 am
Location: Van Alstyne, Texas

Re: Evap canister

Post by piledriver »

US Plastics sells excellent/cheap check valves to deal with boost.(or for active PCV steering)

http://www.usplastic.com/catalog/item.aspx?itemid=23369
Always doing things the hard way, MS2 sequential w/ v1.01 mainboard, LS2 coils. 80 mile/day commuter status.
Joe
Experienced MS/Extra'er
Posts: 196
Joined: Sun May 23, 2004 8:44 pm
Location: Everett, WA USA

Re: Evap canister

Post by Joe »

Some of the newer evap strategies use a seperate fuel trim for purge events.

I run a wide band but only in open loop, just use it for monitoring.

Being Evap is somewhat of an unknown, could be fuel vapor, could be a vacuum leak esspecially in a basic system how about a switch to allow closed loop during purge or some form of correction.

If coolant temp < x and Purge enable correct fuel curve Y%. (purge fuel vapor from overnight soak)

Purge is also enabled on some systems during light cruise also. tps < ~25 and rpm greater than 1100 enable 15% purge etc.
Might use a temp entry on the second condition.

Just some thoughts-

Joe
78 Chev 4x4 MS3. Microsquit 4l80E (Toy Hauler/Beta test rig )
70 AAR Cuda -Hanger queen- 340 MS3 Seq- XV Level II
357supermagnum
Helpful MS/Extra'er
Posts: 147
Joined: Tue Oct 27, 2009 3:49 pm
Location: Norway

Re: Evap canister

Post by 357supermagnum »

Whats the status now ?
piledriver
Super MS/Extra'er
Posts: 1681
Joined: Tue Oct 27, 2009 6:24 am
Location: Van Alstyne, Texas

Re: Evap canister

Post by piledriver »

357supermagnum wrote:Whats the status now ?

Worksfinelastslongtimepaintitgraywontrust. :twisted:
Always doing things the hard way, MS2 sequential w/ v1.01 mainboard, LS2 coils. 80 mile/day commuter status.
hardline
Master MS/Extra'er
Posts: 503
Joined: Mon Sep 08, 2008 8:37 pm
Location: Peoria, IL

Re: Evap canister

Post by hardline »

How REverant describes it is how all US Vehicles work, and it is how I am attempting to program an Arduino to handle m EVAP as I do not envision MS to support this. That is a lot of code. I hope it will eventually, but that is guarded at best.
2000 ZX2 : Sequential COP, MS3 + MS3X + TinyIOx, PWM Returnless Fuel, Flex Fuel, Variable Geometry Intake Manifold, Garrett GTX2863R .82AR housing @ 15 psi
Matt Cramer
Super MS/Extra'er
Posts: 17507
Joined: Thu Apr 16, 2009 8:08 pm

Re: Evap canister

Post by Matt Cramer »

Ran across this thread on EFI101, thought it ought to be mentioned here:

http://www.pistonheads.com/gassing/topic.asp?t=954062
Matt Cramer -1966 Dodge Dart slant six running on MS3X
Post Reply