Hello Paul & Group,
There was an "Ultra-squirt" project going on about two years ago. Seems
that it didn't materialize, but the hardware choice was interesting:
Freescale MPC55xx - 32-bit PowerPC core, programmable eTPU timer for
ignition + injection, DSP knock indication built-in, CAN bus, plenty of
i/o, good set of driver/sensor circuits.
What's interesting here, is that - if i understood correctly - the eTPU
unit offloads the ignition/injection timing task from processor, and it
is still fault-tolerant (ie. missing teeth, no CAS signal etc.)
Here's some video clips. Not really a proper product introduction, but
gives an idea how eTPU works.
Using the Engine Position eTPU Functions - Freescale Application Note:
3769
http://www.youtube.com/watch?v=a1NplNEAaww
eTPU Set 2 Simulator Demo
http://www.youtube.com/watch?v=Mu_zBkoByVQ
Link to Freescale eTPU user guides:
http://tinyurl.com/2wzw45p
Back then, the required CodeWarrior version cost $5000, now it is $955
or $1955 - the difference seems to be the "Optimizing C/C++ compiler"
Runs on Linux or win2k - 7, new version 10.0 within Eclipse. Yes that's
more than OSS price, but... it ought to be good.
It seems that this is the best platform to develop a really capable
FADEC product for rotary engines.
...Just that there should be someone involved who could (and will ;)
make neat C code...
Anyone tried 55xx / 56xx?
Petri Flander
I have code warrior for some of the smaller Free Scale chips but what
I don't like about it is the C or assembly language required.
Atmel ZBasic is an order of magnitude easier to learn and
faster to program. There are some trade off as a bit more hardware
is required. It is fast enough for simple AC engine EFI and EFIS.
Paul Lamar
There is the earlier TPU in the 68332 & MPC555, and the later
eTPU in the MPC55xx series family. They are state machines and
not that difficult to learn if you can dedicate the time to
understanding what the TPU is doing. The Motorola programming
manuals are not the easiest to understand. Munir Bannoura
taught the classes on the TPU and eTPU and wrote his own books
after seeing students struggle in class with the state machines.
Once I listed every command on a Excell Spreadsheet with the
allowed states and how to enter and exit each, it made it much
easier to understand.
Once you understand the state machine, and what is allowed from
one state to the next you still need to spend sometime to write
the microcode. Advantage is that once you understand that, and
can write the code, it is a great tool and also excellent for
your resume!
TPU is very handy for conditions changing constantly with a
modern emissions equipped engine meeting EPA standards. Since
the TPU can run autonomous of the engine controller, it greatly
helps reduce the overhead of the controller to focus on real
time calculations. It is one of the few embedded controllers
with a floating point processor for real time calculations, so
that off loading the main processor is a critical function.
For a simple aircraft engine control, it is way overkill. Most
simple 8 bit micro controllers will work fine, and even having
two microcontrollers for redundancy is easily done.
I still have my MPC555 boards and logic analyzer, but there are
so many hours in the day and to many other projects before I
could revisit the TPU programming. I was paid nicely for TPU
code, but only way I would take that up again is if I lived in
the Bahama's and limited myself to four hours a day of
microcoding, and the rest of the time flying, fishing, and
sailing. Now that would be the life!
As to tools, do look at the gcc compilers. There was some great
work on uC/OS (Jean Labrosse's royality free RTOS for personal
use) put together by a French University on the MPC555.
Tom Walter
Thanks Paul and Tom,
This raises so many questions...
It seems that, to understand this whole ECU thing, one needs more than a
passing knowledge of the requirements - and ways - to design this kind
of system.
Perhaps you could recommend me some book to read first? :)
Cheers,
Petri
I have found only one book on this subject so far but
then I have not looked very hard.
A book was written by Caxton C. Foster
in 1981 called Real Time Programming ISBN 0-201-010937-X.
It is a good mix of hardware and software theory.
He focuses on the 6502, 6800 and the Z80.
An expansion of the 6800 instruction set is still
around in some Free Scale processors.
In October 1977 a magazine came out called the 6502
journal mostly about the Apple II.
Back in 1975 there was nothing except the data sheets on
the processors. Perhaps I was so ignorant
on the subject I choose a hardware interrupt method of real
time multitasking because I did not know any better :)
Ironically, and as far as I can tell, I built the first
embedded application of a microprocessor. I would love
to see some documentation on a earlier device.
I started to sell a single board industrial
computer called the SuperKIM.
When we published this IEEE paper in 1979 we had no idea it
was the start of a whole industry :)
http://www.rotaryeng.net/who.html
Paul Lamar
--
The Rotary Engine NewsLetter. Powered by Linux.
ACRE NL web site.
http://www.rotaryeng.net
Youtube key word PaulLamar2
Copyright 1998-2010 All world wide rights reserved.