A couple years ago, I found myself with the sudden need for a lawn tractor to help tackle the 4+ hour mowing job I had aquired with our new house ‘out in the country.’ A friend of mine offered a John Deere riding mower that he had. It ran well for the few laps around the yard when he showed up with it, and the price was reasonable so I took the deal.
I soon realized that 25+ years (it is a 1982 model) apparently wear on a tractor. (My friend was the second owner, and I think I know who had it before…I don’t know that it was maintained very well. You can’t fault JD…its 25 years old!) Midway through my first mowing session the tractor just stopped. During my attempts to get it started, I proceeded to burn up the starter. Then fuel pump #1 went. Then the ignition coils needed replacing. Long story – short, I finally got it to a point where it seemed like it would run long enough for me to do the job – but by then it was fall and the weather had turned cool. So this year, when I began mowing with warmer weather (hot!) I found out that it would run for about 1 hour for the first interval, then for subsequent intervals of about 30 minutes on / 30 off (to cool down). Talk about annoying… Anyway, right before it died I could see (through the transparent fuel filter on the side of the mower) that the engine was starving of fuel, and would subsequently die from it. Apparently, the pump was getting hot and would just quit. Eventually the fuel pump’s internals melted (black goo was visibile around the seams when I took it out.) I got a new pump. I eventually figured out that if I manually controlled the pump and alternated on/off – I could keep the thing running indefinitely. It was pretty annoying, however, to have to turn it on and off while I was bouncing around in the yard. Being an electrical engineer by trade, I figured I should rig up something to do that for me. I happened to have a HCS12-based electronic control unit (ECU) around that weekend (we had a bunch around the office that had become obselete) and had brought my laptop home from work (I am an engineer at MotoTron) so I figured I would do the simpliest thing possible (given the tools I had) and ‘MotoHawk it’. (I could have built a little capacitor-timer-relay circuit, but it probably wouldn’t have worked right the first time and there would be soldering and desoldering…yuk.) Realizing that this system was ‘safety-critical’ (I would be riding on the tractor at blazing speeds up to 6 mph), I would have to test & validate the safety. Anyway, 45 minutes later I had designed, implemented, debugged, tested, calibrated, wired & mounted up my ‘control system.’ The control application sits on top of a production real-time operating system (RTOS) and was code-generated from a Simulink Model – no debugging function pointers here.