Jump to content
abecedarian

LM3S8962 / LM3S2110 Engine Management System

Recommended Posts

And if things go the way it seems, the LM3S8962 main board will be doing all the work and the LM3S2110 device board might just end up being the remote tuning interface end.

Share this post


Link to post
Share on other sites

One more thing that missed the train of thought... the warm-up air regulator. I need to provide +12v to that thing otherwise I have a vacuum leak around the throttle body.

 

So now, the devices requiring ECU switched power are:

- starter (since I'm going to be implementing a "soft start" where the user presses the start button and the ECU will control starting the engine)

- fuel pump (on for a few seconds to prime the system when key is turned "on", then off if the engine isn't cranking to start or running)

- ignition coils (no sense giving them power if the engine isn't cranking to start or running)

- fuel injectors (again, no sense supplying power to them if the engine isn't cranking to start or running)

- warm-up air regulator (on only when the engine is running, otherwise would interfere with a situation where the user turned the key on but didn't start the engine)

 

And if anyone is wondering, there is going to be a master "kill power to everything" switch to stop the fuel pump, ignition, et cetera if the bike happens to be laying on its side: the bike has such a switch already, and that will be an integral part of the power supply loop to devices.

 

I'm also contemplating whether or not to bring the radiator cooling fan under ECU control. It's probably best to allow it to operate independantly from the ECU, I can imagine conditions where having the ECU able to actuate the fan would be beneficial, such as when turbo boost exceeds (X) PSI, which in turn would help the engine produce more power due to cooler water, and thus cooler engine temps.

Share this post


Link to post
Share on other sites

Try as I may, there isn't any easy way to figure out my bike's ignition timing.

 

What else should I expect? No demand (as in less than 10000 built) means no supply.... until the supply runs out, and then demand goes up.

Share this post


Link to post
Share on other sites

I shouldn't have skipped trig and calculus.

 

Anyhow, I found myself contemplating the concept of treating this engine as two, separate, single-cylinder engines which just happen to share a common crankshaft and throttle. I believe that simplifies things quite a bit, actually, and that would let me concentrate on the right (leading) cylinder operation, and apply those calculations to the left (trailing) cylinder, with maybe less processor-intensive offsets to calculate based on whether the engine is experiencing acceleration or deceleration.

 

 

*more thoughts coming.

Share this post


Link to post
Share on other sites

Well, they were coming until I clicked "Post" and the board went wherever it did, and I lost almost an hour of thought and typing.

 

Yep, just 7 minutes shy of an hour, based on the time stamps on the posts.

Share this post


Link to post
Share on other sites

Well anyhow... the current train of thought is to retain the factory ignition control unit and simulate the MAP sensor that controls advance/retard.

 

I'm thinking I can map the MAP sensor's outputs over various vacuum and pressure regions into an array which would then serve as a base ignition map that I could read from based on MAP readings from the real sensor, and then modify if I wanted in order to get different ignition timing, then DAC it out to the control unit and let it handle the rest.

Share this post


Link to post
Share on other sites

After a quick visual check, the lobe on the cam trigger is indexed to TDC of the compression stroke for whichever cylinder is in question.

 

Apparently, Honda felt that if they injected fuel into the intake at that point, the fuel would be setting there waiting for the intake valve to open and suck it all in. A good idea considering it was the '80s... bad idea considering the low compression ratio of the engine, hence low"ish" manifold vacuum. And not so good for emissions and such since it injected fuel into dead air (for one) and that would result in some puddling on the intake runners (for two) and those puddles will not disappear easily (google "x-tau") so previous puddles need to be accounted for... no wonder spark plugs in the bike don't last more than a few-hundred to a couple-thousand miles.

 

/me has head spin

Share this post


Link to post
Share on other sites

Just an FYI-

 

I haven't given up on this. I have a few other related things going on as well.

Getting a proper trigger wheel and where to install it...i

... will ARM run the EFI?... what other options make more sense?

 

 

 

:)

Share this post


Link to post
Share on other sites

If you did not give up, my brother and me are building engine control unit for the power generator (2 cylinders, 10 hp engine), based on the LM4F120 board. I'll post updates and links to code here soon, as soon as we resolve other questions first.

Share this post


Link to post
Share on other sites

If you did not give up, my brother and me are building engine control unit for the power generator (2 cylinders, 10 hp engine), based on the LM4F120 board. I'll post updates and links to code here soon, as soon as we resolve other questions first.

It would be great if you start a thread in the Projects section and detail it as you go. You could also use the Blog section of the Forum.

Share this post


Link to post
Share on other sites

If you did not give up, my brother and me are building engine control unit for the power generator (2 cylinders, 10 hp engine), based on the LM4F120 board. I'll post updates and links to code here soon, as soon as we resolve other questions first.

Haven't given up, just side-tracked and still trying to work out the crank trigger wheel. Not many options since the crankshaft doesn't exit the engine block.

 

Front (it's the bolt in the hole, there's a plug that covers it):

8114251312_6114da086b_z.jpg

 

Rear:

7713778064_c721333c32_z.jpg

 

Flywheel is down below in the case. That's the camshaft / cam position sensor / water pump drive sticking out, but it's completely covered by the water pump housing.

 

 

I was thinking, I could mount an appropriate magnet on the head of the bolt and the rotary position sensor could be mounted and sealed to front 'plug'. The problem is finding a magnet that will hold up to > 150C and a sensor accurate to +/- 0.5 degrees at 10000+ rpm. Might be easier to machine a 'stub' shaft that rides on the bolt head and exits the engine through the plug, riding in an appropriate bearing, and just put a regular hall effect or optical trigger on there.

 

Another gentleman has an idea to mount a trigger wheel off the flywheel in the rear case. That might work since the non-turbos have very similar engine configuration with a set of centrifugal advance weights and pickup coils back there. However, he's a motorcycle mechanic with dozens of other projects going on so something as unusual and low-demand as I require isn't high on the priority list.

Share this post


Link to post
Share on other sites

If you did not give up, my brother and me are building engine control unit for the power generator (2 cylinders, 10 hp engine), based on the LM4F120 board. I'll post updates and links to code here soon, as soon as we resolve other questions first.

And I would be very interested in your project.

 

I don't know if this would help you, but there was an EFI project based on STMicro STR73x / ARM7TDMI, which should be portable to Cortex code, from what I've been told. Hasn't been updated since 05/2011

http://sourceforge.net/projects/stingray3/

Share this post


Link to post
Share on other sites

Anyone have any thoughts with replacing the cam sensor "trigger" pictured above with an optical type pick up?

 

/me cuts stuff from post the board mangled.

Edited by abecedarian

Share this post


Link to post
Share on other sites

Been a long while it appears; I've bounced around enough, who knows where I'll land?

 

For anyone who's not been following the progress off-site, a suitable trigger setup was arrived at using parts from the bike's carbureted cousins and an appropriate sized gear.

 

Long-story-short, the carb'd bikes use a centrifugal advance mechanism attached to the crankshaft, which is similar to old-school distributors with 'flying weights' that move the mechanism as RPM's increase and thus change timing, and a pair of variable reluctance sensors mounted to the rear of the engine case. My bike doesn't use them but we learned things can be adapted.

 

So we took this: 

 

TimingMechanism.jpg

 

... and this:

 

8561674150_2012d04bbc.jpg

 

... and came up with this:

 

9158494025_9a933a6545.jpg

 

9160716964_446967e8cf.jpg

 

 

Around $100 in parts and shipping, but definitely should be better than trying to figure out how to get accurate crankshaft position from what I had to work with. Only thing remaining is to remove one of the teeth from the gear once I determine which is most appropriate since some EFI systems are particular about where the 'missing tooth' is.

 

As for now, the actual ECU system is going to have two solutions worked on in tandem. One will be getting Microsquirt working and the other will be the Open5xxxECU system, when it's ready.

 

I still plan on getting the LM3S8962 kit involved somehow, and it'll likely be as I proposed: as a tuning system for those EFI systems. I just have to figure out what to do with the LM3S2110 board since it has no ADC ability. I'll probably work it into the dashboard to display things from the EFI system received over CAN.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×