Hmmm OK so I think I'd like to have ago at making a virtual mathematical engine which I could write control algorithms for and run on a virtual dyno to see how well the control algorithm works.
I can see this being very useful but it would have to do a decent job of replicating a real engines oddities.
Writing the simulation and the control mechanism means I could easily get into a situation where I'm setting it up to work perfectly every time which wouldn't be useful at all.
Do you think it's feasible? Would it be useful? Is there already something out there like this? Would you be willing to help?
I guess for a start I would need a detailed list of all engine parameters, what effect a high value would have and what effect a low value would have. Assume I know nothing about engines at all.
Is it possible? Yes.
Useful? You sure will learn a bunch.
Is there something out there? It seems that OEMs are moving
towards modeling engines. Bear in mind they can and do spend
man-years perfecting their tunes. The other end of the scale are
the early electronic systems that used potentiometers to tune the
parameters of their simple models.
Is it practical? Probably not.
First, the list of parameters is long and some of them will be
non-obvious. Those "real engines oddities" are essentially
undiscovered parameters. No model is perfect. Controlling a
"virtual engine" ignores all of the unknowns.
Second, the parameters will be hard to tune. Some (most?) of them
will have to be tuned experimentally. This will take large
amounts of time. Each parameter will take a different strategy to
tune, and changing one will have effects on others.
Third, changing the physical set-up of the engine will destroy
much of the tuning work. This is true for a table based approach
as well, to some degree.
On the other hand, a table based EMS can be tuned to a quite
acceptable level in just a few hours on a load-holding
dynamometer by a competent tuner.
My earlier reference to carbs and dizzys was a hint. They
certainly can be used to great effect to manage an engine. Tuning
them however, is a black art as compared to a modern table based
As far as seeking help, rather than asking for a comprehensive
set of engine parameters, why not attempt to assemble a list for
yourself? In doing so, you will learn a good deal about engines,
and develop a better understanding of the needs a good control
system would satisfy. There are some smart folks here that are
usually willing to critique work that people do themselves and
There have been people who have appeared with big ideas looking
for people to implement them. Those folks are mostly still
talking about their ideas. The people that go out and do things
themselves tend to have running engines.
As far as the FreeEMS project goes, it is already headed
in a fairly well-defined direction. Reading and attempting to
understand the code is a decent way to learn about engine control
strategy. It is not all table look-ups in there.