Page 1 of 1

ECU Domain Questions

PostPosted: Mon May 03, 2021 10:02 am
by WesRagle
HI Guys,

I'm still staring at ignition pulses. The more I stare the more I realize how careful I have to be with this. Kinda like a loaded gun. I don't want to generate a stray pulse when power is removed or if the system suffers an unexpected upset. Or worse, if someone is handling the prop. Unfortunately the safe state is with current flow in the coils. It's turning them off at the wrong time that a problem.

So, I have a couple of questions that may seem trivial but are pretty important to me right now.

1) How do shut down an engine equipped with an ECU or FADEC? Just turn the ECU off?
2) Do you think it would be alright to power down the coils, after maybe six seconds, if no rotation has been detected?

Thoughts??

Thanks,

Wes

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 12:26 pm
by gammaxy
On mine, the coils automatically power down after two seconds of not detecting a trigger pulse. I think it might reduce the current through the coil gradually to avoid firing the secondary, but I'm not certain.

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 12:44 pm
by WesRagle
Thanks Chris.

Is that standard AeroVee secondary ignition?

Wes

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 12:52 pm
by gammaxy
Yes. I have the trigger units with the raised AeroConversions logo.

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 5:11 pm
by WesRagle
Thanks Chris,

Got it. For the time being I'll turn the ignition drive off when both pulse input channels are timed out. For this simulation the TimeOut is set to 1 Hz. instead of 1/2 Hz. so I didn't have to muck with the simulated input.

Here is pic as the input frequency decays. The ignition is fired 28 Deg. BTDC until either input drops below 450 RPM at which point a switch is made to TDC. One second after the last pulse the ignitions are turned off. When a pulse is received on both channels within one second the ignitions are re-energized and ignition occurs at TDC until 650 RPM at which point advanced timing resumes.
Image

A close up showing one second from the last pulse until ignition off.
Image

So, I'll initialize to coils powered and in hardware pull the drive pin active as the port goes tri-state on a power off. With power on I'll turn the drive off after XX seconds with no activity. I have a feeling that with the ASIC between me and the drive transistors I'll have a way to gently de-energize the coil. Anyway, that should keep any weirdness from happening during upsets or power off.

Thanks Again,

Wes

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 8:20 pm
by lpaaruule
Very cool project. I had thought of doing something like this myself. I use the Teensy microcontroller for automating testing at work. There are good CAN libraries for it as well. It is a very inexpensive tool for getting CAN traces, and saving them to an SD card.

I just saw today that someone already beat me to using one for EFI:

https://youtu.be/xgNpUEs6CWE

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 8:28 pm
by Bryan Cotton
Wes,
What are you using for a scope?

Also, it would be good if you could get it to fire just after TDC for hand propping rpm. If you were worried about safety put an enable pushbutton just inside the air inlet so you could enable the ignition for a hand prop attempt.

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 10:23 pm
by WesRagle
Hey Paul,

Thanks. And yea, it's a lot of fun. I've always wanted to develop a project for experimental aviation and this seems like as good a target as any. You obviously understand.

The Teensy looks like a real screamer. I'm using an STM32L4 with a Cortex M4 core running at 80 Mhz. Has all the peripherals I need, there is a 125 Deg. C. version available, and it has way more computing power than is needed for an engine control. Right at $10 a pop.

I've been a fan of CAN bus for a long time. For instrumentation/control I think it's the right mix of simple, fast, and robust. The ECU won't log data but will send data via CAN to the control head for logging to a SIM card. I've used CAN at work, following the ARINC 825 protocol, and it worked out great. At 4000 RPM there is more than enough time to send 50 messages with 29 bit identifiers and 8 byte payloads between blades. I won't need more than four.

BTW, I've already bought the board that will serve as the control head for early development.
Image

STM32H7 (High Speed Cortex M7 core) running at 550 MHz. Small AMLCD with PCAP. About $100. I have to keep it hid so I don't lose focus :-)

Wes

Re: ECU Domain Questions

PostPosted: Mon May 03, 2021 10:49 pm
by WesRagle
HI Bryan,

The Scope is a RIGOL DS1054. About $300. It's OK. The controls are a little bit clunky. You can tell the CPU is overwhelmed at times. Always good to hit the Run/Stop button before changing anything :-)

As far as hand propping is concerned, since I only have two timing pulses it isn't possible to have an ignition angle ATDC. The best I could do is a delay of XX mSec. For that exceptional case I could have the user request hand propping via the control head to avoid adding a discrete input. If requested, the timeout could be extended to several seconds to give the user time prop it. I'll play with that once hooked up to an engine.

Wes