gemellocattivo.com

Which means "Evil Twin". Lets see your projects where you change boring into fun or create the fun from scratch.
It is currently Thu Mar 28, 2024 3:33 pm

All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 49 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Author Message
 Post subject: Re: Injector control
PostPosted: Mon Oct 19, 2015 4:36 pm 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
It will now shut the injector right off and stip fuel from the port walls so accel and decel can happen at the same rates. A few more things I want to play with but this function is pretty close to ready to try I think.


Attachments:
x_tau 3 2015_10_19.JPG
x_tau 3 2015_10_19.JPG [ 176.3 KiB | Viewed 15636 times ]
Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Mon Oct 19, 2015 4:40 pm 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
I'll note this....that screen shot is a tuner screen so you get real time logs to view or play back on the same screen your tuning which is really nice.


Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Mon Oct 19, 2015 4:47 pm 
Offline

Joined: Sun Oct 11, 2015 2:07 pm
Posts: 134
I'm not quite sure what's going on, but the result looks right.

There isn't usually a target for the puddle mass. There is a model of what goes in (X) and what comes out (Tau) and steady-state the two balance so no fuel change is needed. Is target for your visualization or is it actually used in the algorithm?

The first graph does show the correct behavior, with fuel required going up and tapering off after a transient. Theoretically the same X and Tau values should work equally well for accel and decel without other changes. If you turn up X high enough, it will oscillate, that will always happen with this algorithm but a careful calibrator can use it.

_________________
"Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack

"Any sufficiently advanced technology is indistinguishable from magic" ~Arthur C. Clarke


Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Mon Oct 19, 2015 7:07 pm 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
It works similar to x-tau but not actually x-tau......it's stored-stored_delta. It's a variation of something I played with some years back and a bit like what motec is doing in their M1 stuff but I think mine should be easier to tune.

It uses 2 tables. One is Stored_Target [mg] which is the fuel that is stored in a single runner under steady state operate at the current conditions.

The second table is Fuel_Stored_Correction [%] which is the amount of correction to apply as a % of the difference between what is in the manifold ( Fuel_Stored_Current [g] ) and what should be their ( Stored_Target [mg] )

There are 2 other corrections available, 1 for coolant temp and 1 for air temp.

I think it has everything it needs. To tune it i think you start with a guess and adjust with the correction laid over the lambda trace.....but with 2 factors its a back and forth game I guess. I might be able to make it easier by doing an integration of both the lambda error and the correction, but that might just add confusion. I'll need to play with and see.


Attachments:
x_tau 4 2015_10_19.JPG
x_tau 4 2015_10_19.JPG [ 189.57 KiB | Viewed 15642 times ]
Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Tue Oct 20, 2015 8:27 am 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
I realized last night I didn't have wall-wetting( x-tau) tied to lambda....I need to add that. Also the way I wrote it the numbers in the correction table are negative which is a bother when tuning or I need to make them positive. Also not present are enable/disable for the air and coolant temp corrections

Last up I didn't tie it to injection angle in any way other than assuming the user would tune that first. I think I should add something for this.

I have a list of clean-up things I want to do through-out the model that shouldn't change anyhting about the way it works (if I do them right)

Then I'll go in to closed loop, DBW (ETC), Idle control and such.


Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Tue Oct 20, 2015 12:03 pm 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
One more shot of the wall-wetting with the fuel in grams added

Blue is the steady state fuel required for the current conditions
Purple is the fuel delivered be the injector, extra when load increase quickly, less when load decrease quickly.

Now back to cleanup


Attachments:
x_tau 5 2015_10_19.JPG
x_tau 5 2015_10_19.JPG [ 183.1 KiB | Viewed 15640 times ]
Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Tue Oct 20, 2015 1:12 pm 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
I fixed the sign on the correction table so you just use positive numbers now and gave it a test by moving MAP around pretty aggressively.....seems to work just as it should


Attachments:
x_tau 6 2015_10_19.JPG
x_tau 6 2015_10_19.JPG [ 190.79 KiB | Viewed 15639 times ]
Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Tue Nov 03, 2015 9:36 am 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
I added cylinder fuel trim tables and an enable for it.


Attachments:
Cylinder trim.JPG
Cylinder trim.JPG [ 257.58 KiB | Viewed 15622 times ]
Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Tue Nov 24, 2015 8:10 am 
Offline

Joined: Thu Jan 01, 2015 6:47 pm
Posts: 4251
apalrd wrote:

There isn't usually a target for the puddle mass. There is a model of what goes in (X) and what comes out (Tau) and steady-state the two balance so no fuel change is needed.


Do you have this modeled somewhere? can you share the model?

I was speaking to Jim (from enginelab) last night he's trying to build a "plant" or engine simulation to go along with the upcoming generic engine control model.....but this is not a trivial simulation.


Top
 Profile Send private message  
 
 Post subject: Re: Injector control
PostPosted: Mon Mar 14, 2016 11:37 pm 
Offline

Joined: Sun Oct 11, 2015 2:07 pm
Posts: 134
mk e wrote:
apalrd wrote:

There isn't usually a target for the puddle mass. There is a model of what goes in (X) and what comes out (Tau) and steady-state the two balance so no fuel change is needed.


Do you have this modeled somewhere? can you share the model?

I was speaking to Jim (from enginelab) last night he's trying to build a "plant" or engine simulation to go along with the upcoming generic engine control model.....but this is not a trivial simulation.



Getting back to all of the forums I ignored in the last few months.....


Basically x-tau models fuel puddles with two tuned parameters (X and Tau).

X is the amount of fuel that doesn't evaporate into the airstream, but instead puddles. So, Fuel_Charge = (1-X) * Fuel_Injected. The puddle then accumulates the rest of the fuel, so puddle = puddle + X*Fuel_Injected.

Tau is the time constant of the fuel evaporation. Fuel that evaporates goes into the engine. Fuel_Evaporated = puddle * (tau/dt) where dt is the time between cycles

So puddle = puddle + X*Fuel_Injected - puddle*(tau/dt) and Fuel_Charge = (1-X)*Fuel_Injected+puddle*(tau/dt)

Then you just have to solve backwards for fuel injected from desired fuel charge.


X is only dependent on temperature (usually coolant temp is used because the port area is close to coolant temp). Tau is dependent on only coolant temp and RPM. Neither needs many tunable points. The model I saw (an example engine model for my controller) used a 5-cell X table and a 5x5 Tau surface.

I'm currently working on a stacked x-tau system. The outer loop models the puddle in the runner from the upstream injector and the inner loop models the puddle at the port. From that, I should be able to calculate the downstream fuel quantity precisely, even as the upstream injection split is changed or split injection is turned on/off. I'll let you know how well it works when I test it, it should be running on the dyno in the next two months.

_________________
"Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack

"Any sufficiently advanced technology is indistinguishable from magic" ~Arthur C. Clarke


Top
 Profile Send private message  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 49 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group