Thursday, March 01, 2007

Mother of Invention

In some sense, working as a chemist in industry, especially working for a company that is very product-focused, I get paid to invent stuff. Part of my job involves developing things that we can patent, and either make ourselves, or license for someone else to make. If, by any chance, this sounds glamorous to you, I want to dispel a myth or two. I would be the first to admit, I do have a cool job that I love. Science is fun, and doing this sort of thing with added economic constraints is pretty charming, too. But the stuff Edison said about the ratio of perspiration to inspiration is only true if you are Edison. For me, the inspiration part makes up more like 0.1%.

In fact, so much dung has to be shoveled to get roses that many people I talk to who start off thinking that science is linear and straightforward advancement towards "breakthroughs" end up wondering how anyone can stand the frustration of having most things not work. I'm not sure what personality traits are vital for science and engineering except one, and that one is absolutely vital: persistence. Persistence and work will cover a lot of sins.

When I was a kid, my dad got me a book one Christmas called Inventing for Fun and Profit by Robert Lay Hallock. I don't remember much about exactly what sort of inventions Hallock talked about (drywall fasteners and ice trays, maybe?) but he did a pretty good job of representing the iterative nature of invention. You try, try again, because at first, you won't succeed.

I think that a love of tinkering is vital, too. You just need to love to make stuff, and lots of it. You have to love the process, the methods and the intermediate stages as much (maybe more) than the final product.

When I get home, after dinner and family time, I usually fiddle with some project or another. Doing much serious chemistry at home is just not possible. But I am just about as interested in electronics as I am chemistry, and so far, there aren't any laws against that.

Right now, for instance, I am working on a light system for my nighttime walks and jogs. Yes, I could buy a light for less than $10. Were you not paying attention above?

I am using an accelerometer chip (pictured here, it is the little square device). I designed the board myself using free software available on the web (here). The accelerometer can sense the motion of my body as I walk or jog, and turn on the lights. If I can get the software just right, it will not turn on the lights without me doing fairly purposeful motion. The software resides in a little 8-pin microprocessor (PIC12F675, for anyone who cares), and I am writing the software using a free compiler I got online (here).

All the software tools I am using were free. The accelerometer was a free sample, too, as was the microprocessor. I bought the programmer I am using for under $40. The resources that are available on the web for the taking are amazing, and they make it possible to do many sophisticated things that would have been expensive or impossible a decade ago.

The board I constructed using a laser-printer toner transfer system, where a specially coated paper is printed with the design of the circuit board. This is then laminated onto a copper board, and the excess copper etched away. It takes maybe half an hour from printing to being ready to solder.

Soldering is a skill that it takes some time to master. Someone with a lot of skill might see my soldering and be sick- in my own defense, these work and have proven to be robust, if ugly.

Some of the parts I am using are surface mount. If you look at the picture here, you see a row of white-yellow LEDs with little black things underneath. Those black things are transistors, and they are tiny. They'll switch an amp, though. If you notice, I haven't installed the accelerometer on this board as yet. I am using the 'breakout' board shown in the other photo to figure out exactly how the little feller works before committing it to soldering on my main prototype. I may end up changing out capacitors or resistors, and don't want to risk my prototype while I'm still learning.

I still have a lot of work to do, but I have got the main routines written for the microprocessor (it is mounted on the back of the board, but you can see the eight pins on the lower left of the front of the board). I am, as I mentioned, working incrementally. I have fooled with the accelerometer a while now, and am learning how it reacts to walking in a stride vs running vs getting my junk ready to go out the door. Translating this knowledge into algorithms that will reliably turn my lights on and off will take time, and will require lots of head scratching and software re-writes. But I am pinning down one piece at a time, and will get it all to work before too long.

I'm already looking ahead to the Mark II model, which will flash in a different pattern when illuminated by automobile lights. Fun, fun, fun.